Welcome to the twelfth issue of Racket News.
From this issue onwards, I have removed the “Help Needed” section. Initially my idea was that people would contact me saying, “hey, I could use the hand of a few volunteers in my project. Can you please feature it in Racket News requesting for help?”. Except that never happened - therefore I am removing it.
RacketCon just finished and I feel like we have quite a bit of ground to cover. From a few news from RacketCon, to other things that came up in the last two weeks. There was a shoutout from Matthew to Racket News - thanks for that. We have a few new subscribers - just under 200, with many others reading online only! Welcome to all of you! I am open to contributions to these issues so if you see something that you would like featured or have any suggestions, please let me know.
Lets get started - make a large Americano today and enjoy!
Table of Contents
- What’s New?
- Racket Around the Web
- New Releases
- Project in the Spotlight
- Featured Racket Paper
- Upcoming Meetups
- Racket Jobs
What’s New?
- Racket School took place last week between Monday the 8th of July to Friday the 12th.
- The plans for Racket School are online so you can give them a go at home.
- RacketCon followed Racket School on the 13th and 14th of July.
- Day 1 was filmed with really good quality and can be found on Youtube; I assume it will be split soon by presentation but what’s there is already quite good.
- Day 2 started with the State of Racket by Matthew Flatt and was filmed using a webcam, which is not as good as Day 1 but good enough to follow online. You can also find it on Youtube.
- During RacketCon day 1, Jay McCarthy in the name of the PLT Team has inducted 6 contributors to Racket into the team. They are:
- Jack Firth
- Tony Garnock-Jones
- Alexis King
- Casey Klein
- Gustavo Massaccesi
- Paul Stansifer
Congratulations to all of them. The whole team can be found on the Racket Team website.
- Although I recommend everyone to watch, at least, Matthew talking about the State of Racket in Day 2, the biggest announcement came when he introduced the suggestion of changing Racket’s surface syntax for what is now known as Racket2.
- Matthew revisited the idea on the mailing list and a longer thread started by Chris Lemmer Webber sprung up as well.
- As an aside, I would like to point out that there have been few other opportunities like this in the past for people to join the Racket project and make a long-lasting contribution. Join the discussion, pitch your ideas, wishes, fear, suggestions. Lets create a discussion about what’s next! Lets have some Racket fun!
- Bonus curiosity: Joel D suggested
schism
as the name for the racket2 lang. But as you might already know that’s taken by a Scheme to Webassembler compiler.
- There’s an effort to create an Awesome Racket list - although it’s not new, I hadn’t mentioned it here before. It might be worth to put together some PRs to improve it so that a look and see if you can add something to it.
Racket around the web
Do you blog about Racket? Let me know!
- Gradual Typing from Theory to Practice by our very own Sam Tobin-Hochstadt is a must read, which is not only accessible and very well written but also full of references to Racket related technologies that will keep you occupied for awhile.
- My first fifteen compilers by Lindsey Kuper is a very interesting blog post with references to the nanopass framework and ChezScheme.
- Racket GUI saves the day by Bogdan Popa.
- Exploring Racket by Konrad Hinsen. Note this is from 2014 but I just found it, so although some parts might be out-of-date, it is still an interesting read.
New Releases
If you know of library releases or maybe your own libraries and you want them to be featured, please let me know.
- Blake Anderson has published on GitHub a stack language names Eskew make for RacketCon.
- Bogdan Popa release racket-sentry, a new Racket library that lets you capture exceptions using the Sentry API.
Project in the Spotlight
This week’s project in the spotlight is remix, by Jay McCarthy. In the spirit of Racket2, I wanted to point out to one of the attempts to suggest a new revised version of Racket. Although the documentation might be slightly lacking, it might be worth considering when thinking about suggestion for Racket2. The code can be found on GitHub.
From the documentation:
remix intends to only change the standard library of Racket, rather than providing a radically new model of programs, semantics, or data values. It should be possible and easy for remix programs to use Racket libraries and Racket programs to use remix libraries, although it is acceptable for some light, local adaptation to be required.
remix attempts to make the following changes to the standard library:
- Remove outdated, deprecated, or unadvised functions.
- Expand keyword argument adoption, removing extraneous functions in the process, such as rkt:assoc and rkt:assq.
- Systemize required function argument order and names to a subject-verb-object style.
- Update syntactic forms with more extensible positions and form-specific expanders.
- Add richer surface notations, specifically different parenthesis shapes, a C-style dot notation, and enabling the @ Syntax by default.
- Change library mores to better support backwards and forwards compatibility.
Featured Racket Paper
Matthew Flatt during RacketCon just announced this one so this weeks featured paper is Rebuilding Racket on Chez Scheme (Experience Report) by Matthew Flatt, Caner Derici, R. Kent Dybvig, Andrew W. Keep, Gustavo E. Massaccesi, Sam Tobin-Hochstadt and Jon Zeppieri.
Abstract:
We rebuilt Racket on Chez Scheme, and it works well—as long as we’re allowed a few patches to Chez Scheme. DrRacket runs, the Racket distribution can build itself, and nearly all of the core Racket test suite passes. Maintainability and performance of the resulting implementation are good, although some work remains to improve end-to-end performance. The least predictable part of our effort was how big the differences between Racket and Chez Scheme would turn out to be and how we would manage those differences. We expect Racket on Chez Scheme to become the main Racket implementation, and we encourage other language implementers to consider Chez Scheme as a target virtual machine.
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.
Upcoming Meetups
- Impromptu Racket Meeting in London - taking place next Friday, July 19 at 12pm–3pm at the Cafe at the British Library ‘The Last Word’, organised by Stephen De Gabrielle;
- Summer RacketFest 2019 - taking place in Berlin, Germany on August 17, just before ICFP’19.
Jobs
If you want to advertise any Racket related jobs, please send me an email or submit an issue.
Contributors
Thanks to
- Stephen De Gabrielle
for his contributions to this issue.
Disclaimer
This issue is brought to you by Paulo Matos. Any mistakes or inaccuracies are solely mine and they do not represent the views of the PLT Team, who develop Racket.
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.