Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

I'm implementing a Lisp

Name: Anonymous 2011-12-24 23:32

Discuss how the perfect module/namespace should behave.  Keep in mind things like multimethods (which should be merge rather than shadow).

Name: Anonymous 2011-12-25 0:43

>>5
why?
Because lambda calculus has almost no external environment. The only external word is "lambda" and the easiest way to implement environment is to just (lambda (environment . args) ...) for every function.

when you have thousands of functions defined, you might need a way to manage them and avoid name collisions in an effective way.
Use static analysis where possible. Inline them and use something like JIT to reinline on change.

objective stuff and functional actually mixes pretty well.
first class environment is already "objective stuff"
it serves the same role as sepples objects.
you basically apply closure to environment "object" (a list of object's variables). And rememver, you can have several environments, cuz they are first-class.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List