I figured the best way to really understand something is to completely take it apart as see if you can put it back together again.
I've been able to get the C-based evaluator working. I've written a bunch of toy examples, extended it in lots of different and interesting ways. Played in the base boot.l environment and added features to make the language feel more like clojure / racket since those have pretty good docs (if other people wanted to play with what I end up with). Today, I've finally had time (and made the mental leap) to bootstrap the peg parser and run the reply within the C evaluator. It's been loads of fun and I've learned LOTS. Every time I was stumped and lacked context, I went back through history - LISP 1.5 finally made some of the lisp-isms in maru much easier to understand (e.g. evlis, pairlis, etc) since scheme and clojure completely eschew some of that historical holdover. The Lambda papers were also a great source of insight. So now, I'm kind of stumped. In eval.l there are references to <header>-flags-used <header>-flags-used+atom etc that allow tweaking of the GC from within maru. the problem is that those structure accessors aren't defined anywhere and I can't seem to find where they would be defined. I've run this against both the C evaluator and the boostrapped peg / repl. What am I missing? thanks, shawn _______________________________________________ fonc mailing list [email protected] http://vpri.org/mailman/listinfo/fonc
