5 ms·
Anything new happen with Janet? https://news.ycombinator.com/item?id=28255116 https://news.ycombinator.com/item?id=28255116 (August 2021) [114 Comments] https
by threatofrain 5y ago
Anything new happen with Janet?
https://news.ycombinator.com/item?id=28255116 https://news.ycombinator.com/item?id=28255116 (August 2021) [114 Comments]
https://news.ycombinator.com/item?id=23164614 https://news.ycombinator.com/item?id=23164614 (May 2020) [269 Comments]
- diggan 5y agoSome interesting changes since August this year: - Threaded channels `ev/thread-chan` (`thread` has been deprecated [and removed in latest version [[1.18]]]) - JPM (Janet Package Manager) is now separate, not distributed together with Janet anymore - Janet binary can directly run image files with `-i`
- deleted 5y ago[deleted]
- db65edfc7996 5y ago(Not a lisp guy). What is an image and why would I want to run one? My best guess is that an image would be platform independent bytecode vs compiled executable?
- mumblemumble 5y agoIt's a dump of the state of the run-time environment, including data. Probably the easiest use case is using it as a savegame feature when you're working in the REPL. It's not necessarily portable. Some lisps will use machine-independent bytecode, others use native code. I'm not sure which one Janet does.
- ianthehenry 5y agoI think of it as one of the defining features of Smalltalk, not Lisp, although there is plenty of cross-pollination. https://en.wikipedia.org/wiki/Smalltalk#Image-based_persistence https://en.wikipedia.org/wiki/Smalltalk#Image-based_persiste... Janet's object system seems to be modeled after ideas first popularized in the Self language -- a Smalltalk derivative -- so there could be some direct inspiration there. https://en.wikipedia.org/wiki/Self_(programming_language) https://en.wikipedia.org/wiki/Self_(programming_language)
- pjmlp 5y agoLisp systems had it first, specially Lisp Machines, that is where Smalltalk got its idea from. Xerox PARC was pursuing three workstation based OSes in parallel, based on Lisp, Smalltalk and Mesa (later evolved into Cedar). So the ideas regarding images, REPL with typo suggestions, OS wide debugging, code browser,.... were available across them all.
- lispm 5y agoLISP I from 1960. http://bitsavers.org/pdf/mit/rle_lisp/LISP_I_Programmers_Manual_Mar60.pdf http://bitsavers.org/pdf/mit/rle_lisp/LISP_I_Programmers_Man... page 67: SET card '...the state of the memory as it stands is read out onto tape 8 as the new "base" image for the memory...'
- coldtea 5y agoDamn, why don't we have programming environments with such capabilities today? (the kind @pjmlp mentioned "images, REPL with typo suggestions, OS wide debugging, code browser", etc." and so on) Not in the @pjmlp kind of availability ("Why you say that? There's this commercial language envinronment from a company in rural Austria that all of 100 companies use and all of 1000 people ever heard of that gives you exactly that! A 2-person department in the basement, right across the toilets in Jane Street uses it for something. And somebody made a weather balloon controller with it. Plus some mid-90s research team had this in some research language that has these features, that over 10K students have installed!"). Not even in the Pharo, SBCL, etc. kind of availability. It would nice to have it in the "competes with Java, C#, Python, Javascript, PHP" or at least Go and Rust, for popularity, adoption, libraries, websites and sources devoted to it, job opportunities, vendor support, enterprise adoption, and such" kind of availability...
- igouy 5y ago> Damn, why don't we have programming environments with such capabilities today? Do you use any of the image based programming environments that we do have? Pharo? VM Smalltalk?
- 5y ago
- cellularmitosis 5y agoWhen folks run emacs, they aren’t actually starting it entirely from scratch. They are booting up a similar “image”, which allows for much faster startup. The lack of image support is what prevents Clojure from competing on startup time (but see also grallvm and babashka)
- pjmlp 5y agoThere are also the JIT caches on HotSpot, OpenJ9 and Azul.
- fithisux 5y agoR for example allows to save state on exit. I wish R supported an alternative lispy syntax.
- Igelau 5y agoI'd never heard of it until https://news.ycombinator.com/item?id=28845971 https://news.ycombinator.com/item?id=28845971 was shared here yesterday. I guess I'm not alone in just finding out about it and that's why it's posted here.