This week's book giveaway is in the OCPJP forum.
We're giving away four copies of OCA/OCP Java SE 7 Programmer I & II Study Guide and have Kathy Sierra & Bert Bates on-line!
See this thread for details.
The moose likes Ruby and the fly likes Origins of Meta-Programming Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of OCA/OCP Java SE 7 Programmer I & II Study Guide this week in the OCPJP forum!
JavaRanch » Java Forums » Languages » Ruby
Bookmark "Origins of Meta-Programming" Watch "Origins of Meta-Programming" New topic
Author

Origins of Meta-Programming

Hussein Baghdadi
clojure forum advocate
Bartender

Joined: Nov 08, 2003
Posts: 3479

Hey,
Which is the first language that introduces the Meta-Programming concept?
I thought it was Ruby but it looks Objective-C and LISP offer Meta-Programming long time before Ruby.
Thanks.
Paolo Perrotta
author
Greenhorn

Joined: Mar 27, 2010
Posts: 27
I'd say that Lisp is still the paragon of metaprogrammable languages. However, be advised that "metaprogramming" in Lisp is so different than "metaprogramming" in Ruby, that you might give them different names. You can bend Lisp's syntax with macros, while Ruby relies on you manipulating scope and the object model.


Paolo Perrotta, Europe
Author of Metaprogramming Ruby
http://www.pragprog.com/titles/ppmetr/metaprogramming-ruby
David Newton
Author
Rancher

Joined: Sep 29, 2008
Posts: 12617

Lisp has CLOS, which has a MOP, and provides metaprogramming beyond macros. Lisp itself isn't intrinsically OO, so the distinction is somewhat apples-to-oranges. Once you add CLOS (itself implemented in CL), we're back at parity (IMO).
 
 
subject: Origins of Meta-Programming