Racket News - Issue 12

Permalink: https://racket-news.com/2019/07/racket-news-issue-12.html

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

  1. What’s New?
  2. Racket Around the Web
  3. New Releases
  4. Project in the Spotlight
  5. Featured Racket Paper
  6. Upcoming Meetups
  7. 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!

New Releases

If you know of library releases or maybe your own libraries and you want them to be featured, please let me know.

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

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.


Contribute

Have you seen something cool related Racket? Send it in and we will feature it in the next issue.