Mathematica: Unevaluated vs Defer vs Hold vs HoldForm vs HoldAllComplete vs etc etc

These are pretty tricky constructs, and it’s tough to give clear explanations; they aren’t as straightforward as Lisp macros (or, for that matter, the relationship between Lisp’s QUOTE and EVAL). However, there’s a good, lengthy discussion available in the form of notes from Robby Villegas’s 1999 talk “Unevaluated Expressions” on Wolfram’s website. Defer is omitted … Read more

How can I simply “run” lisp files

Executables SBCL can save executable images, as Greg Harman mentions (see the :EXECUTABLE keyword): http://www.sbcl.org/manual/index.html#Saving-a-Core-Image Scripts Lisp files can be executed as scripts, see: http://www.sbcl.org/manual/#Shebang-Scripts Command Line Options SBCL has command line options to evaluate/load lisp code on start: http://www.sbcl.org/manual/#Command-Line-Options SLIME SLIME is an Emacs interface for Common Lisp. One can use SBCL via SLIME … Read more

Idiomatic clojure for progress reporting?

The great thing about clojure is you can attach the reporting to the data itself instead of the code that does the computing. This allows you to separate these logically distinct parts. Here is a chunk from my misc.clj that I find I use in just about every project: (defn seq-counter “calls callback after every … Read more

scheme continuations for dummies

Forget about call/cc for a moment. Every expression/statement, in any programming language, has a continuation – which is, what you do with the result. In C, for example, x = (1 + (2 * 3)); printf (“Done”); has the continuation of the math assignment being printf(…); the continuation of (2 * 3) is ‘add 1; … Read more

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)