3 ms·
As a Lisper, your primary consideration when choosing another language to learn well is that it should be a language that enables you to easily find work when L
by mikelevins 5y ago
As a Lisper, your primary consideration when choosing another language to learn well is that it should be a language that enables you to easily find work when Lisp jobs are scarce.
Secondary considerations (that are nevertheless important) are whether it's pleasant to work with and whether it's likely to be useful in your Lisp work.
Whether a language is pleasant to work with is a matter of personal taste.
The other secondary consideration--whether it'll be useful in your Lisp work--is more objective. The language will be useful in your Lisp work if it's used in implementing Lisp, or if it's a common compilation target for Lisp, or if Lisp programs are commonly called upon to interoperate with it.
C hits the first two criteria: there are several Lisp compilers that compile to C, and several Lisp implementations with kernels written in C.
C, C++, Java, Python, and Javascript hit the second criterion: there are many applications of Lisp that need to interoperate with programs written in those languages.
Rust doesn't fit any of these criteria particularly well at the moment. The number of open Rust jobs doesn't seem to be particularly greater than the number of open Lisp jobs, which makes it a poor candidate as a fallback language. There aren't yet a lot of applications of Lisp in which it's important to interoperate with Rust code, either.
Rust is high on my list of languages to learn next, but because it's interesting in its own right, not because it's a particularly good fallback language for a Lisper.
- lovelyviking 5y agoThank you very much. >Rust is high on my list of languages to learn next, but because it's interesting in its own right Can you elaborate more about that too? Why you find it interesting as a Lisper?
- mikelevins 5y agoMy interest in Rust doesn't have anything particularly to do with Lisp. I'm interested in programming languages in general, for their own sake, and I consider Rust's experiments in type-supported safety and resource-management to be interesting. In some respects, it's sort of the opposite of what I like in a programming language, particularly in that it's a batch-compiled language with a reputation for long compile times. Still, I'm interested in its approach to safety and resource management.