Racket News - Issue 19

Permalink: https://racket-news.com/2019/11/racket-news-issue-19.html

Welcome to the nineteenth issue of Racket News.

There is quite a bit of activity in Racket World so this is another issue packed with goodies - GameJam, more Vulkan work, a video about syntax-parse, and transducers in Racket among other things. I won’t be keeping you any longer. Dig in!

Grab a flat white 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 Project Statistics
  8. Racket Jobs

What’s New?

  • The Racket GameJam is on! Submissions due in 25 days - give it a go.
  • In issue 9 we have featured the amazing rebellion package by Jack Firth. Since we last featured it, Jack has added many new exciting features. Recently he has announced support for Transducers - go give them a try.
  • Evžen Wybitul is developing Magic Racket, a VS Code plugin for Racket and has announced REPL integration.
  • Sage Gerard who has been working on Vulkan integration for Racket in racket-vulkan, has announced that a non-trivial application is now working: rendering of a Mandelbrot set.
  • Want to understand better syntax-parse (we all do…)? Check out this presentation by Ryan Culpepper on Syntax Templates in Racket.

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.

  • rackunit-fancy-runner(src/pkg) by c2d7fa provides a way to run RackUnit test suites in the command lines that has a fancier output format than the built-in rackunit/text-ui.

Project in the Spotlight

This week’s project in the spotlight is Herbie, which is an application to automatically improve the error of floating point expressions by Pavel Panchekha, Alex Sanchez-Stern, David Thien, Zachary Tatlock, Jason Qiu, Jack Firth, and James R. Wilcox.

From the website:

Herbie automatically rewrites floating point expressions to make them more accurate. Floating point arithmetic is inaccurate; hence the jokes that 0.1 + 0.2 ≠ 0.3 for a computer. But it is hard to understand and fix these inaccuracies, creating mysterious and hard-to-fix bugs. Herbie is a tool to help.

Herbie has excellent documentation, tutorial and support. The PLDI’15 paper introducing Herbie is also online.

Featured Racket Paper

This issue’s featured paper is Binding as Sets of Scopes by Matthew Flatt.

Abstract:

Our new macro expander for Racket builds on a novel approach to hygiene. Instead of basing macro expansion on variable renamings that are mediated by expansion history, our new expander tracks binding through a set of scopes that an identifier acquires from both binding forms and macro expansions. The resulting model of macro expansion is simpler and more uniform than one based on renaming, and it is sufficiently compatible with Racket’s old expander to be practical.

There is also an extended version of the paper.

Upcoming Meetups

Do you know of any upcoming meetups I can advertise? Let me know.

Racket Project Statistics

Some data about the activity in the Racket et al. repositories, for the month of September, 2019.

# commits Issues (new/closed/open) PRs (new/closed/open)
racket 133 23/13/356 21/19/98
ChezScheme 8 0/0/0 0/0/0
drracket 5 11/0/155 0/0/3
redex 4 7/1/39 4/2/9
scribble 4 1/0/60 3/0/8
typed-racket 4 1/1/210 3/0/18
plot 2 0/0/8 0/1/3

Contributions by (19):

  • Alex Muscar
  • Ben Greenman
  • Bogdan Popa
  • Dan Holtby
  • David K. Storrs
  • Dominik Joe Pantůček
  • Fred Fu
  • Gustavo Massaccesi
  • Jay McCarthy
  • Jens Axel Søgaard
  • John Clements
  • Luke Lau
  • Matthew Flatt
  • Paulo Matos
  • Robby Findler
  • Ryan Culpepper
  • Sam Tobin-Hochstadt
  • Stephen Chang
  • William J. Bowman

Of these, 7 are new contributors for 2019:

  • Alex Muscar
  • Bogdan Popa
  • Dan Holtby
  • David K. Storrs
  • Jens Axel Søgaard
  • Luke Lau
  • William J. Bowman

Repositories included above are: racket, ChezScheme, redex, typed-racket, drracket, scribble, plot.

Jobs

If you want to advertise any Racket related jobs, please send me an email or submit an issue.

Contributors

Thanks to

  • Jack Firth

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.