BTW, on the ruby-talk mailing-list, there are currently threads going on about Paul Graham and about the (rather large) influence of LISP/Scheme on Ruby. For those who don't know, Ruby borrows this from LISP/Scheme: * everything's an expression... well, except for some syntactic quirks, but essentially it's there. * the semicolon is an operator such that a;b;c;... behaves like LISP's (progn a b c ...) * lexical closures and continuations * multiple inheritance with method lookup backtracking, just like CLOS's (call-next-method). (Perl recently got this feature *because* Ruby had it) * dispatch on singletons. (However this is much different from the one in CLOS, because Ruby is much more Smalltalk-like than Lisp-like) * Symbols (are Smalltalk-like but look like LISP keywords because of colon-prefix) * "!" and "?" suffixes on some methodnames. * mark-and-sweep; load-time is part of run-time; eval (but on strings); untyped variables, mostly holding pointers to type-tagged objects, except some "unboxed objects"; etc; ... the above list was off the top of my mind so it's by no means complete and I may have even skipped important borrowings. _____________________________________________________________________ Mathieu Bouchard -=- Montréal QC Canada -=- http://artengine.ca/matju
Afficher les réponses par date
participants (1)
-
Mathieu Bouchard