For the others: tell me if you're also interested for the patch, but I'll maybe let dfranke test it a bit before to release it (the guy is good; see http://news.ycombinator.com/item?id=639976).
Thanks, got the mail. After a quick glance at it I'm not betting on having an easy time breaking out, since you're basing on the sandboxing primitives built into mzscheme and aren't abusing them in any way that jumps out at me immediately. But I'll look at it more later.
Wow, this is awesome! I'm just learning Lisp/Arc now, so this will be a very handy tool for me.
One quick suggestion...put a hook on the "onkeypress" event of the arc textarea for the up and down arrows, so that you can scroll backwards and forwards through the command history (which you could store in a javascript variable as a simple string array).
> I'm just learning Lisp/Arc now, so this will be a very handy tool for me.
I'm very glad if it can help you learn! It's mainly for this purpose that I code this little thing (and to myself learn Arc doing it :-))
BTW, see also http://lotrepls.appspot.com/, the Lord of the REPLs by Google. You can program in Clojure and Scheme (and also in non-Lisp languages like Ruby) with it.
> put a hook on the "onkeypress" event of the arc textarea for the up and down arrows, so that you can scroll backwards and forwards through the command history
Yep, this is on the TODO list, I'll work on that. Thanks.
That was fun. ctrl+space is already bound on my system, and / brings up inline search in firefox, so I had to copy and paste "/switch" to get it to change languages.
Arc users need to get together and write a draft spec that makes a lisper proud.
The "scripting language" style manual doesn't cut it. Go for RNRS, CLtL, Dylan-book, T-manual, Moonual, style of documentation; stuff that holds water.
I hate to nitpick, and I am sure many of those documents will grow into something fantastic, but the difference between Lisp documentation and "scripting language" documentation is one of caliber.
Compare any existing clojure documentation to any of these traditional Lisp specifications:
Then google the manuals for the "lesser" Lisps; ISLisp, EuLisp and LeLisp.
I.e. A manual; specification + examples, etc. Lisp texts have a specific flavor and you wont mistake them for others. It doesn't have to be written by Guy Steele or Kent Pitman for it to be useful, by the way :-P It's not as codified as the Unix manpage format.
In a nutshell, Lisp manuals usually go this way; a short introduction to the Reader syntax; an overview of the special forms; high-level description of the type system; in depth discussion about the evaluation model and all top-level forms, then In depth discussion about the language specified parts of the type system over several chapters.
Each identifier is clearly labeled by its type and evaluation method, e.g. special variable, generic function, condition, etc. Its uses and abuses. Its side-effects, if any. Its exceptional situations, what conditions it might raise, if any. Examples. And finally links to other related symbols.
Nothing is said about regular expressions, database access, web API or GUI toolkit. A Lisp documentation is sufficient for implementing the language, as well as daily use. That's really the main difference I can think of. The C book by Harbison and Steele C: A Reference Manual is the closest thing I have seen to a Lisp-style manual for a non-Lisp programming language, and it's no coincidence ;-)
9 comments
[ 4.2 ms ] story [ 20.0 ms ] threadFor the others: tell me if you're also interested for the patch, but I'll maybe let dfranke test it a bit before to release it (the guy is good; see http://news.ycombinator.com/item?id=639976).
One quick suggestion...put a hook on the "onkeypress" event of the arc textarea for the up and down arrows, so that you can scroll backwards and forwards through the command history (which you could store in a javascript variable as a simple string array).
I'm very glad if it can help you learn! It's mainly for this purpose that I code this little thing (and to myself learn Arc doing it :-))
BTW, see also http://lotrepls.appspot.com/, the Lord of the REPLs by Google. You can program in Clojure and Scheme (and also in non-Lisp languages like Ruby) with it.
> put a hook on the "onkeypress" event of the arc textarea for the up and down arrows, so that you can scroll backwards and forwards through the command history
Yep, this is on the TODO list, I'll work on that. Thanks.
The "scripting language" style manual doesn't cut it. Go for RNRS, CLtL, Dylan-book, T-manual, Moonual, style of documentation; stuff that holds water.
Ditto for Clojure, FFS!
* There is a very informative book about clojure by Stuart Halloway: http://www.pragprog.com/titles/shcloj/programming-clojure
* http://en.wikibooks.org/wiki/Clojure_Programming
* http://www.google.com/#hl=en&q=clojure+tutorial
Take your pick.
Compare any existing clojure documentation to any of these traditional Lisp specifications:
http://library.readscheme.org/papers/t_manual.pdf
http://www.franz.com/support/documentation/8.0/ansicl/ansicl...
http://www.r6rs.org/final/html/r6rs/r6rs-Z-H-2.html#node_toc...
http://www.opendylan.org/books/drm/
Then google the manuals for the "lesser" Lisps; ISLisp, EuLisp and LeLisp.
I.e. A manual; specification + examples, etc. Lisp texts have a specific flavor and you wont mistake them for others. It doesn't have to be written by Guy Steele or Kent Pitman for it to be useful, by the way :-P It's not as codified as the Unix manpage format.
In a nutshell, Lisp manuals usually go this way; a short introduction to the Reader syntax; an overview of the special forms; high-level description of the type system; in depth discussion about the evaluation model and all top-level forms, then In depth discussion about the language specified parts of the type system over several chapters.
Each identifier is clearly labeled by its type and evaluation method, e.g. special variable, generic function, condition, etc. Its uses and abuses. Its side-effects, if any. Its exceptional situations, what conditions it might raise, if any. Examples. And finally links to other related symbols.
Nothing is said about regular expressions, database access, web API or GUI toolkit. A Lisp documentation is sufficient for implementing the language, as well as daily use. That's really the main difference I can think of. The C book by Harbison and Steele C: A Reference Manual is the closest thing I have seen to a Lisp-style manual for a non-Lisp programming language, and it's no coincidence ;-)
Regards.