4 ms·
> Well, Today I Learned that Racket is GCed I'm curious how did you expect Racket to work without a GC or any Lisp like language for that matter or did you jus
by agentgt 10y ago
> Well, Today I Learned that Racket is GCed
I'm curious how did you expect Racket to work without a GC or any Lisp like language for that matter or did you just assume because of video game usage?
> - And regarding Haskell and OCaml, which I only vaguely know about, I had never asked myself how they handle memory. Which makes me ask: are there non-GCed functional programming languages? Does it make sense? (Especially given the kinds of deep complex data structures produced by immutability.)
Rust and C++ depending on your definition of FP. I believe there are some old ML languages as well (and even some old lisps).
- ronjouch 10y ago> "I'm curious how did you expect Racket to work without a GC or any Lisp like language for that matter or did you just assume because of video game usage?" Just because of video game usage and my perception of Carmack as a performance freak who wouldn't compromise on performance. (Sloppy reasoning, I know! Thus, my questions on where GC makes sense in games)
- agentgt 10y agoI actually was curious and not trying to be snide. For example I wasn't sure if Carmack or whoever might be using Racket for code generation (ie multi-stage programming) which in theory would avoid GC. I wasn't sure how he was using Racket.
- ronjouch 10y agoNo problem, your comment was clear and I didn't perceive it as snide, at all. Thanks for your carefulness in the discussion.
- bojo 10y agoIt should be noted that he used Racket to teach his son game programming. He mentioned in his QuakeCon 2013 talk that he was enthusiastic about FP concepts, but is too entrenched with C++ to make a change.
- monsieurbanana 10y agoAm I misreading something? The first half of your comment seems to suggest that no lisp language could work without a CG, while the second half suggest there're some lisp languages that do.
- agentgt 10y agoBecause I don't know how modern Lisps can do it (I believe there was hardware like lisp machines made specifically for Lisp that would deal or help with memory allocation/reuse as well as some code generation). I honestly was curious if the OP had some insight that I did not. I realize re-reading the comment it sounds snide but I didn't want to assume the OP's knowledge. For all I knew Racket could have some ability to avoid GC.
- hajile 10y agohttps://github.com/carp-lang/Carp https://github.com/carp-lang/Carp
- nickpsecurity 10y agohttps://news.ycombinator.com/item?id=13107075 https://news.ycombinator.com/item?id=13107075