[racket] user's guide feedback/questions as I prepare for my PL course
On Aug 26, 2011, at 11:09 AM, Dan Grossman wrote:
> 2. "Whatever you don't like you can fix by making your own language
> for the course:" This is indeed a fantastic feature of Racket, but one
> I plan not to use. .. showing them a modern, well-documented language,
> without me tweaking it.
Nah, you should show **them** how easy it is to build a language.
You are showing them simple macros. Now show them how to complete
the macro into a language:
http://www.ccs.neu.edu/home/matthias/Thoughts/Racket_is____.html
(I should also point you to "Danny Yoo brainfuck" but I don't have
the URI handy.)
> 3. "You should really show them some typed racket."
Shriram explained, but also look for Findle-Tobin-Hochstadt at STOP 2009.
> 5. "Use boxes instead of mcons, they're more like SML references
> anyway": Or I might use mutable structs instead of mcons.
Please do.
> 6. In reading the User's Guide, I was pretty surprised that first
> (unlike car) raises an error on a non-list. I eventually looked over
> at the Reference Guide where I learned that list? is O(1) and I was
> able to connect the dots -- "aha, now /this/ is a pretty cool reason
> to make cons cells immutable beyond the basic 'set-cdr! is nasty' ".
> I recommend the User's Guide include a comment or footnote that first
> is an O(1) operation -- you can just point to the Reference Guide for
> any details.
Where do you think it's best to say so? Lists are a bit scattered
over the Guide, and I didn't find the place where (first '())
signals an error. [Not that this is necessarily the best place.]
-- Matthias