Take for example the R programming language. Things you do in this language can be perfectly well done in e.g. Python too. Same goes for the MATLAB language.
Take for example the R programming language. Things you do in this language can be perfectly well done in e.g. Python too. Same goes for the MATLAB language.
As far as Julia goes it aims to bring strong typing and very fast native performance for numerical operations. Neither of which R, Matlab, or Python provide. Seems perfectly reasonable to me.
[1]: http://en.m.wikipedia.org/wiki/S_(programming_language)
[2]: http://en.m.wikipedia.org/wiki/MATLAB
[3]: http://en.m.wikipedia.org/wiki/Python_(programming_language)
There's a direct and strong lineage, but they're not the same.
As someone who remembers when version 1.0 of R was released, I can say pretty confidently that it was well after 1976 :)
Can you clarify which parts can easily be done in other languages and how?
Of course Lisp and Scheme can do this too, but it's virtually non-existent in any common language today. SICM makes heavy use of this.
Now, is there any other language with Lisp-like macros and static typing?
(: fun (natural natural -> real))
procedure signatures?edit: and _definitely not_ static typing.
I'm not sure if it is a very distinctive feature.
Note that I mean to symbolically calculate derivatives and integrals, not numerically. A homoiconic language can deconstruct any object representing code and can construct another object based on the underlying structure of the original, not based on any particular value of the original. The original doesn't even need to be invoked at all.
In mathematical parlance, a homoiconic language allows implementing functionals, as opposed to mere higher-oder functions (which is nothing more than function composition).
Please note that all this works with higher-order functions. You don't have to have a textual representation of the function. A.i. you don't parse your own source code.
LISP was actually invented to be able to implement functionals and symbolic calculations like this. The original paper demoed implementing function differentiation (among other things).