Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

No way. Does it use Scheme?

EDIT: Half Life 3 confirmed: "Presents key ideas of machine learning using a small, manageable subset of the Scheme language"



Some time ago I wrote this: https://notabug.org/ZelphirKaltstahl/guile-ml -- It contains a parallelized decision tree implementation in GNU Guile, a Scheme dialect. There is also https://github.com/lloda/guile-ffi-cblas which at least gives fast matrix multiplication. Example usage I have here: https://notabug.org/ZelphirKaltstahl/guile-math-examples/src...

I don't know what is in the book, but things are possible.


For sure, Lecun wrote a DL framework in Lisp decades ago.


I didn't know about his past feat. Couldn't find the lisp framework you mention but there's this https://lush.sourceforge.net/faq.html

(trivia, he's also behind djvu format)


Lush was really great back then. He often criticizes Python openly.

Personally, I also feel a bit sad the ecosystem has become a Python monoculture.

Lua was much nicer. Let's hope this book sparks some interest in alternative languages for ML.


I'm really surprised that Haskell didn't take off here. Strong types, plus lazy evaluation that seems perfect for orchestrating asynchronous GPU operations.


That's the one!


oh right, he mentions machine learning somewhere, naive me thought it was just a cute lisp repl that can also compile c for perf.


Love the beauty of Scheme, but lack of types (mypy Python / Java dev/ TS dev) infuses fear to me.

I think with a little of patience I can get by.


You should try typed Racket!


Will do. I have also found that 3 days ago

https://github.com/zdimension/hm-infer-scheme

fantastic for research


CL is decent in this regard: http://alhassy.com/TypedLisp


I don’t have much experience with CL, but I was always a bit put off by a mixture of different paradigms it has, ie it’s not being a pure or kinda pure functional language.


That's an advantage for me, tbh.


I meant regarding types, I think the equivalent to the other link would be Coalton: https://github.com/coalton-lang/coalton


I am looking at the GitHub repo for the Malt library developed in the book https://github.com/themetaschemer/malt. It looks like they use Racket (Scheme) vectors to implement tensors. I experimented with loading Keras simple models into Racket several years ago: the built in math library matrix support was fast enough for my needs so the book software may be both pedagogical and useful for smaller problems.

EDIT: I have not tried the OpenBLAS Racket bindings here (https://github.com/soegaard/sci) but perhaps the low level tensor and tensor ops book code could be optimized,


Have not tries this one (yet) but Racket/base is fine for the previous books.


IIRC you can use Racket base so long as you define the “atom” function per the book authors


Yes. At least from the preview.


Very much so.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: