Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Does adding f-exprs simplify the implementation of macros from fundamental expressions in LISP?

This guy reckons that adding fexprs to LISP dramatically simplifies the implementation of the language in scheme.

Here we see how macros would be implemented using MacCarthy's LISP.

My question is - does adding f-exprs simplify the implementation of macros in LISP?

like image 883
hawkeye Avatar asked Aug 05 '11 23:08

hawkeye


1 Answers

I'm that guy. :)

Fexprs, as in the Kernel language, dramatically simplify the language - Kernel has only three built-ins: $define! (for adding a new binding to an environment), $if (the usual), and $vau (similar to lambda, but doesn't evaluate its arguments).

Furthermore, macros (fexprs) may be used as functions can - unlike current Lisps, where macros work separate from runtime. This makes the language more general.

That said, there are as of yet no real-world applications written in Kernel or another new Lisp with fexprs. This is an area of active tinkering by a handful of people.

like image 113
Manuel Simoni Avatar answered Oct 14 '22 16:10

Manuel Simoni