5 ms·
I don’t know about “of note”, but here are a couple pieces of software I’ve built with Racket: * https://franz.defn.io/ https://franz.defn.io/ * https://remem
by Bogdanp 3y ago
I don’t know about “of note”, but here are a couple pieces of software I’ve built with Racket:
* https://franz.defn.io/ https://franz.defn.io/
* https://remember.defn.io/ https://remember.defn.io/
* https://defn.io/2023/08/10/ann-franz-source-available/ https://defn.io/2023/08/10/ann-franz-source-available/
HN itself runs on Racket.
- mark_l_watson 3y agoWonderful projects! I wish I could give you more than 1 upvote.
- Bogdanp 3y agoThank you!
- jjtheblunt 3y agoYou just make me realize, you effectively can. In the way those Dyson bladeless fans pull more air through. In your case, many folks know you (some from UIUC too like me) and know your upvote is worth reading, ending up upvoting too.
- jjtheblunt 3y agop.s. s/make/made/ courtesy of keyboard typo
- HwyarkGnuor 3y ago[dead]
- bmitc 3y ago> HN itself runs on Racket. Isn't it an ancient version of Racket, though?
- velcrovan 3y agoBut doesn’t it also work fine, whatever version it uses?
- bmitc 3y agoMy point, based on the assumption that indeed Arc runs on an old Racket version, is that it doesn't serve as a good example, in my mind, in terms of what you could build with Racket today. This is a quite common pattern in the Lisp and Scheme world where examples of real world usage are given, but they're effectively outdated.
- gus_massa 3y agoRacket has a strong respect for back compatibility, so it should work in the current version. There has been a lot of improvements in the compiler (in particular changing the "back end" from C to Chez Scheme) but it's stil back compatible and sligthly faster.
- bmitc 3y agoIt is my recollection that the official Arc uses incompatible features. I can't remember where I read this, so it's entirely possible I am incorrect.
- gus_massa 3y agoArc mutates inmutable pairs (cons), it worked initially because at the C level mutable and immutable pairs were the same struct. Now there is a primitive unsafe-set-immutable-car! [1] for cases like this. It's a weird primitive and should be used with a lot of care as explained in the docs. [1] https://docs.racket-lang.org/reference/unsafe.html#%28def._%28%28lib._racket%2Funsafe%2Fops..rkt%29._unsafe-set-immutable-car%21%29%29 https://docs.racket-lang.org/reference/unsafe.html#%28def._%...
- gus_massa 3y ago[Another try in case this is the type of answer you wanted.] In Racket the batteries are included. Two examples of programs I had to write like two years ago for work: * A bot to reply emails that uses IMAP, SMTP and web scrapping. (It's not 100% automatic. It replies only the easy cases and adds labels so I reply the tricky ones.) * An program to cleanup Moodle backups that uses gzip and xml. I compiled it and send it to my coworkers. (The backups have too much info, so before restoring it in another site it's better to remove the unused parts.) In both cases, and all the features were installed by default. There are many user defined libraries that can be downloaded as packages, but I didn't need to use them.