9 ms·
Is there some lisp that has offers nearly as powerful and fast data processing and tensor algebra facilities like Pandas and Numpy of Python? I would love to us
by qwerty456127 8y ago
Is there some lisp that has offers nearly as powerful and fast data processing and tensor algebra facilities like Pandas and Numpy of Python? I would love to use a lisp but am not sure how well are they going to manage with huge 2-3D arrays.
- 3rdAccount 8y agoJulia can show s-expressions for an expression I think...sorta what you asked, but not really I know. If you really want something like pandas + lisp then you probably need Common Lisp and have to dig for some libraries.
- e12e 8y agoI'm a great admirer of Julia, but I doubt it would appeal to those seeking a "true" lisp/scheme. Even if it's has a sane macro system, and much of the same power. You can indeed see s-expressions (search for "s-expression") : https://docs.julialang.org/en/v1/manual/metaprogramming/index.html https://docs.julialang.org/en/v1/manual/metaprogramming/inde... This nice talk mentions a bit on how Julia is (not) a lisp (if I recall correctly): "Julia: to Lisp or not to Lisp?": https://m.youtube.com/watch?v=dK3zRXhrFZY https://m.youtube.com/watch?v=dK3zRXhrFZY This might also be of interest: https://tpapp.github.io/post/common-lisp-to-julia/ https://tpapp.github.io/post/common-lisp-to-julia/ As well as (maybe) clasp: https://github.com/clasp-developers/clasp https://github.com/clasp-developers/clasp
- baldfat 8y agoYes there is a really great statistics functional programming language that was founded on being a scheme for data science. Unfortunately the data scientist back then were not training in doing code well so the examples of the language got cluttered up but there is a great functional Scheme right in there. That language is R. http://adv-r.had.co.nz/Functional-programming.html http://adv-r.had.co.nz/Functional-programming.html I learned Racket (Lisp) and then realized I had so many thing inside of R that I was missing. Hadley Wickham's tidyverse and funtional Advance R book changed everything in my code.
- tree_of_item 8y agoThe parent asked for a Lisp dialect. R is not a Lisp dialect. It's ridiculous to claim there's a "Scheme" in R. R is not Scheme, it's not even close.
- peatmoss 8y agoIt’s much closer than people think. R originally built on a Scheme runtime, and the DNA of Scheme is still lurking pretty close to the surface. The meta programming facilities in R still look very lispy, and are used to good effect throughout the Tidyverse family of packages. If I had one wish, it would be to see something like the Tidyverse exist in something still closer to Scheme... like Racket.
- qwerty456127 8y agoIf it's all Scheme under the hood, why can't it be backported easily?
- disgruntledphd2 8y agoThis is valid R sum(1:10) This is also valid R: (sum (1:10))
- qwerty456127 8y agoJust wrapping whatever in parentheses does not make a lisp.
- peatmoss 8y agoCurrently, this comment is heavily downvoted, which I do not understand. If Julia warrants mentioning as having a lispy core, then it’s at least as valid to point out R’s deeply lisp-inspired (and technical implementation based) heritage. I mean, scratch the surface on any of the FFI docs, and you’ll see that SEXPRs are right there lurking barely beneath the surface: http://dirk.eddelbuettel.com/code/rcpp.html http://dirk.eddelbuettel.com/code/rcpp.html EDIT: and you can, as the parent comment says, do much worse than Hadley’s functional programming guide as an introduction.
- rileyphone 8y agoYou could always just use Hy, which is a clojuresque language that runs on top of python and can use its libraries.
- wlkr 8y agoHy is awesome, it's a pleasure to use and you can always convert is straight to readable Python to debug. Access to regular Python libraries is seamless. [0] https://learnxinyminutes.com/docs/hy/ https://learnxinyminutes.com/docs/hy/ [1] http://docs.hylang.org/en/stable/quickstart.html http://docs.hylang.org/en/stable/quickstart.html
- qwerty456127 8y agoOk. Perhaps that's the language. Which IDE/editor has the most intelligent support for it? There seems to be no Hy plugin for PyCharm (e.g. IntelliJ Idea supports Clojure nicely AFAIK).
- wlkr 8y agoHy has a nice Emacs plug-in (hy-mode) which I use. Other than that I'm aware of Vim and Atom support. I'm not really sure how intelligent they are though.
- Avshalom 8y agoIts dead now but there was http://lush.sourceforge.net/ http://lush.sourceforge.net/
- markc 8y agoThere are multiple Clojure options for high-speed matrix processing. E.g. https://neanderthal.uncomplicate.org/ https://kieranbrowne.com/research/clojure-tensorflow-interop/ https://mxnet.incubator.apache.org/api/clojure/index.html