<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/soegaard-webracket-the-webracket-language-is-a-subset-of-racket-that-compiles-to-webassembly-rqv8dsjqo" -->

---
title: soegaard/webracket: The WebRacket language is a subset...
description: WebRacket is a compiler that translates a subset of Racket to WebAssembly for browser and terminal execution. It supports most Racket data types (fixnums,...
canonical: https://daily.dev/posts/soegaard-webracket-the-webracket-language-is-a-subset-of-racket-that-compiles-to-webassembly-rqv8dsjqo
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: soegaard/webracket: The WebRacket language is a subset of Racket that compiles to WebAssembly | daily.dev
og:description: WebRacket is a compiler that translates a subset of Racket to WebAssembly for browser and terminal execution. It supports most Racket data types (fixnums,...
og:url: https://daily.dev/posts/soegaard-webracket-the-webracket-language-is-a-subset-of-racket-that-compiles-to-webassembly-rqv8dsjqo
og:image: https://api.daily.dev/og/posts/rqv8DSJqO.png
og:image:alt: soegaard/webracket: The WebRacket language is a subset of Racket that compiles to WebAssembly
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# soegaard/webracket: The WebRacket language is a subset of Racket that compiles to WebAssembly

**[Hacker News](https://daily.dev/sources/hn)** · 10 min read · 4 upvotes · 0 comments

## Summary

WebRacket is a compiler that translates a subset of Racket to WebAssembly for browser and terminal execution. It supports most Racket data types (fixnums, flonums, hash tables, structures), tail calls, multiple values, and exceptions, but lacks continuations, modules, and multi-threading. A JavaScript FFI enables DOM, Canvas, MathJax, XTermJS, and JSXGraph integration. The compiler uses the standard Racket expander with a NanoPass-based middle-end and generates folded WebAssembly S-expressions. Examples include a MathJax editor, Matrix rain effect, Scheme REPL, pict library port, and Space Invaders game. Future plans include module support via linklets, complex numbers, bignums, and potentially continuations through CPS transformation.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://github.com/soegaard/webracket>

## Similar posts on daily.dev

- [Webassembly is here](https://daily.dev/posts/webassembly-is-here-5bakrrggx) · Quartex Pascal · 32 upvotes · 1 comments
- [WebAssembly: The Web’s Fourth Language](https://daily.dev/posts/webassembly-the-web-s-fourth-language-twkny7sfg) · Medium · 3 upvotes · 0 comments
- [R in the browser](https://daily.dev/posts/r-in-the-browser-8nsrgyklt) · Hacker News · 1 upvotes · 0 comments
- [WebAssembly: an introduction](https://daily.dev/posts/webassembly-an-introduction-1iycvposp) · Flavio Copes · 3 upvotes · 0 comments

---

Tags: [#javascript](https://daily.dev/tags/javascript), [#html](https://daily.dev/tags/html), [#webassembly](https://daily.dev/tags/webassembly), [#compiler](https://daily.dev/tags/compiler)

[View this post on daily.dev](https://daily.dev/posts/soegaard-webracket-the-webracket-language-is-a-subset-of-racket-that-compiles-to-webassembly-rqv8dsjqo)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"soegaard/webracket: The WebRacket language is a subset of Racket that compiles to WebAssembly","url":"https://daily.dev/posts/soegaard-webracket-the-webracket-language-is-a-subset-of-racket-that-compiles-to-webassembly-rqv8dsjqo","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/soegaard-webracket-the-webracket-language-is-a-subset-of-racket-that-compiles-to-webassembly-rqv8dsjqo"},"datePublished":"2026-01-22T00:02:11.684Z","dateModified":"2026-01-22T00:02:33.919Z","description":"WebRacket is a compiler that translates a subset of Racket to WebAssembly for browser and terminal execution. It supports most Racket data types (fixnums,...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/202a914cfc94d6106d758b16e1df8a15?_a=AQAEulh","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/202a914cfc94d6106d758b16e1df8a15?_a=AQAEulh","isAccessibleForFree":true,"articleSection":"Hacker News","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Hacker News","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn","url":"https://daily.dev/sources/hn"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/soegaard-webracket-the-webracket-language-is-a-subset-of-racket-that-compiles-to-webassembly-rqv8dsjqo","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":4},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"javascript,html,webassembly,compiler","timeRequired":"PT10M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Hacker News","item":"https://daily.dev/sources/hn"},{"@type":"ListItem","position":3,"name":"soegaard/webracket: The WebRacket language is a subset of Racket that compiles to WebAssembly"}]}
```

