Welcome to the fourteenth issue of Racket News.
This issue is brought to you earlier than usual (expected only on Monday the 19th) as I am due to leave the modern world for a few weeks for some time relaxing in the mountains. Next issue will be with you in any case by Monday the 2nd of September (or at least, that’s my plan).
But the world of Racket doesn’t stop - Racket 7.4 was just recently released and RacketFest is about to start, so check out what’s the latest below.
I have removed the Racket Jobs section as it’s been empty for most of RN history. I will add it once there’s some content there.
Grab a double espresso and enjoy!
Table of Contents
- What’s New?
- Racket Around the Web
- New Releases
- Project in the Spotlight
- Featured Racket Paper
- Upcoming Meetups
- Racket 7.4 was released with CS support in beta. You can now download alternatively Racket using the ChezScheme backend, which you should! Download it, test it, and if broken, report it!
- The Racket team have posted a joint message in the mailing list regarding the future of Racket and Racket2.
- Eyal En Gad sent me an email requesting me to add feeds to Racket News. My bad here! They have always been there but I never added a link to them in the main page. I will do so once I am back from holidays. Until then, here’s the links: RSS, ATOM.
- There have been quite a few Metapict of the day posted to the Racket reddit, the latest one being about math rendering and commutative diagrams. Go check them out!
- The Standard Fish Summer Competition is ongoing and has seen some really cool entries. Check them out on its mailing list thread. Have a go if you haven’t yet.
Racket around the web
Do you blog about Racket? Let me know!
- Making OpenAPI / Swagger Bearable With Your Own DSL by Sebastien Armand.
- Racket: Lisp for learning by Jake Edge.
- More Timezone Lookup by Alex Harsanyi.
- Thoughts on Racket2 by Matthew Butterick.
If you know of library releases or maybe your own libraries and you want them to be featured, please let me know.
qualified-inis a package by Michael MacLeod which provides
qualified-in, a require form which prefixes its subforms with their module names and a
- futil is a package by Samuel Thomas which implements an intermediate language designed for Fuse.
- interactive-brokers-api is a package by
evdubswhich implements the client API for Interactive Brokers’ Trader Workstation.
- zeromq-win32-x86_64 and zeromq-win32-i386 are packages (win32-x86_64, win32-i386) by Ryan Culpepper which are native libraries for zeromq.
- LL-Tracket is a tool by Paulo Matos (myself) to help debug memory issues. I use it to debug garbage collection problems in WebKit, but it really is a generic memory usage visualisation tool (pretty much in its early stages).
Project in the Spotlight
The project in the spotlight for this issue is Pollen by Matthew Butterick.
From the webpage:
Pollen is a publishing system that helps authors make functional and beautiful digital books.
Matthew wrote many of his books in Pollen including Beautiful Racket. If you are interesting in digital publishing, it would be a mistake not to give Pollen an in-depth look. Start with the excellent documentation.
Featured Racket Paper
This week’s featured paper is Precise Garbage Collection for C by Jon Rafkind, Adam Wick, John Regerh and Matthew Flatt. Think this is not Racket related? Think again! This is precisely (pun-intended) the technology powering current Racket’s Garbage Collector (known as 3m and living in
From the abstract:
Magpie is a source-to-source transformation for C programs that enables precise garbage collection, where precise means that integers are not confused with pointers, and the liveness of a pointer is apparent at the source level. Precise GC is primarily useful for long-running programs and programs that interact with untrusted components. In particular, we have successfully deployed precise GC in the C implementation of a language run-time system that was originally designed to use conservative GC. We also report on our experience in transforming parts of the Linux kernel to use precise GC instead of manual memory management.
Please note I am not hosting any of these files, but instead I am linking to the PDFs hosted by the researchers themselves. If you think there is a better way to do this or if I should host the files myself, drop me a line.
Tomorrow is the last Racket meeting currently booked for the year. Stay tuned!
- Sam Tobin-Hochstadt
for his contributions to this issue.
I have also tried to survey the most relevant things that happened in Racket lang recently. If you have done something awesome, wrote a blog post or seen something that I missed - my apologies. Let me know so I can rectify it in the next issue.