4 ms·
I use both CL and more recently (obviously!) Julia exclusively and extensively. Julia is almost an acceptable lisp. Except that’s it’s not homoiconic, and they
by abrax3141 4y ago
I use both CL and more recently (obviously!) Julia exclusively and extensively. Julia is almost an acceptable lisp. Except that’s it’s not homoiconic, and they f’ing mark the macros (and a couple other minor nits). So Julia can’t really be used for the primary use case of lisp, which is DSLs. So now I do my DSL-like work in lisp, and scientific computing in Julia (or lisp with a sucky ffi to python that I rolled myself — hmmm, I guess I should rewrite that to go to Julia —- hmmm) Anyway, yeah, Julia is an almost acceptable lisp. Like, close, but missed the mark (yet again, but as close as I’ve seen). Maybe if I fix the ffi as above, I won’t have to actually see the ugly Julia non-homoiconic mess, and the hemispheres will no longer be fundamentally at odds.
- JonChesterfield 4y agoI don't quite follow. Macros are visibly different to functions so they're always marked. Do you mean syntactically marked as opposed to semantically?
- orthoxerox 4y agoYes, syntactically. Where is CL your macros look just like functions or builtin special forms, Julia macros are all prefixed with @. On one hand, it clearly shows that there's some trickery going on and you can't expect referential transparency. On the other hand, it means that you can't write a DSL that has a "native" look and feel.