5 ms·
Well, it was. Specifically, Common Lisp was. But that language's standard was etched in stone in 1994 whereas languages like Python (where most deep learning us
by Blackthorn 10y ago
Well, it was. Specifically, Common Lisp was. But that language's standard was etched in stone in 1994 whereas languages like Python (where most deep learning user-facing code is done) continue to evolve.
I think Python really took off for that because it already had quality and widely-used libraries for writing the code in Python and doing the work in a more efficient place (numpy, scipy). Clojure has one of those for matrix multiplication but not much else there, and I'm not sure Racket has anything at all.
- kbp 10y ago> Well, it was. Specifically, Common Lisp was. But that language's standard was etched in stone in 1994 whereas languages like Python (where most deep learning user-facing code is done) continue to evolve. This is an apples to oranges comparison. The Common Lisp standard hasn't been updated since 1994. The Python standard has not been written at all yet. Lisp and Python implementations both continue to evolve and be released.
- pg314 10y agoTo add to that, the transition from Python 2 to Python 3 is also an example of how not to evolve a language.
- markc 10y agoClojure matrix libs: https://github.com/mikera/core.matrix https://data-sorcery.org/ https://github.com/mikera/vectorz-clj http://neanderthal.uncomplicate.org/ https://github.com/tel/clatrix
- samth 10y agoRacket doesn't have simple interfaces to things like BLAS, but it does have quite good natively written libraries for matrix operations and other math-related things: http://docs.racket-lang.org/math/ http://docs.racket-lang.org/math/