Wed, 24 Mar 2004 02:46:04 +0200 (EET), Heikki a dit : > For me, it looks like the first fundamental difference between these two > syntaxes is that in C++ you have to be extremely careful with type and > inheritance, whereas in Scheme (seems like) you do not usually need to care.
This static/dynamically typed issue have been discussed by some eminent C++/Java gurus, such as Bruce Eckel or Robert Martin, who seem to advocate the use of dynamically typed languages now (Python in particular). http://www.mindview.net/WebLog/log-0025 http://www.artima.com/weblogs/viewpost.jsp?thread=4639 > The second fundamental difference is between an user and the language. Since > Scheme is interpreted, the behavior of the program (say LilyPond) can be > changed dynamically. This is not the case with C(++), since the structure of a > compiled program becomes changed only after recompiling. Therefore, an > interpreted language, like Scheme, is the only choice in the user end in order > to satisfy the needs of a high-level (or low-level -- I mix these always) > language. Just to bring a correction: interpreted/compiled implementation is orthogonal dynamic/static programs. That's the second that you are refering to, it seems. guile scheme is interpreted only, but it could have had a compiler and not lose its dynamicity. With other implementations, you can compile files or functions on purpose, during run-time. _______________________________________________ Lilypond-devel mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/lilypond-devel