#RacketCon

“First class Prompt Engineering with llm lang! (This is a bad idea.)” by William Bowman at the (fourteenth RacketCon) is now available at youtu.be/ueGC3xVcDlc
#RacketCon

Celebrating 40 years of magic
with Hal Abelson & Gerald Sussman

at the (fourteenth RacketCon)
October 5-6, 2024,University of Washington
Featuring Lisp legend Gregor Kiczales

con.racket-lang.org
#racketcon

Celebrating  40 years of magic
with Hal Abelson & Gerald Sussman

at the (fourteenth RacketCon) 
October 5-6, 2024, University of Washington 
Featuring Lisp legend Gregor Kiczales 

https://con.racket-lang.org

Data Integrity via Smart Structs

by David Storrs

Structs in Racket should be more than dumb data storage. They should be data models in the sense of MVC programming; they should ensure that their contents are valid according to your project’s business rules and they should make it easy to do common operations such as storing to a database or generating a struct from data of another type such as a database row or user input field.

The struct-plus-plus module makes this easy. It allows you to place contracts on individual fields, specify business rules that ensure integrity between fields, easily create converter functions, and much more, with all of these things being part of the struct definition and therefore in one easily-referenced location. Come see how it all works and how you can simplify your code with struct-plus-plus!

Watch now: presentation

#Racket #RacketLang #RacketLanguage #RacketCon

keyring: Uniformly Access Secrets

by Sam Phillips

Hardcoding passwords in your programs is bad. Using secure password stores are good. Keyring is a Racket library that allows programs to access different password stores using a simple interface.

Watch now: presentation

#Racket #RacketLang #RacketLanguage #RacketCon

Incrementally Developing Support for Racket->Wasm Compilation

by Adam Perlin

Wasm is an attractive compiler target for a variety of reasons: it has support in all major browsers, its isolation guarantees are beneficial for security reasons, and it has potential as a general-purpose platform-independent execution environment. However, adding Wasm support to Racket has proven a challenging problem due to differences in the execution model each language uses at runtime. Chez Scheme, the backend of Racket CS, utilizes code generation conventions which are difficult to adapt to Wasm.

This talk will present an alternative approach to Racket-to-Wasm compilation which is compatible with Racket CS. The approach is accomplished by using an existing bytecode format and interpreter which are already supported under Chez Scheme, and performing an ahead-of-time translation of portions of bytecode programs into Wasm. This sets up an incremental approach to the development of a Racket-to-Wasm compilation system.

Watch now: presentation

#Racket #RacketLang #RacketLanguage #RacketCon

Wasm-PBChunk slide from presentation

Mutate: Inject Bugs into Your Programs!

by Lukas Lazarek

Lukas Lazarek introduces mutate, a library for mutating programs, i.e. injecting possible bugs by making small syntactic changes to the program syntax. Lucas discusses what mutation is, why one might want it, and provides a demo of how to use the library.

Watch now: presentation

#Racket #RacketLang #RacketLanguage #RacketCon

Mutate has to offer...

* Mutator definition DSL 
* Automated creation of mutants
* Library of pre-defined mutators 
* Logging 
* (coming soon) Analysis tools

#lang Karp: Formulating and Random Testing NP Reductions

by Chenhao Zhang

Reduction, a pervasive idea in computer science, is often taught in algorithm courses with NP problems. The traditional pen-and-paper approach is notoriously ineffective both for students and instructors: Subtle mistakes in reductions are often hard to detect by merely inspecting the purported solutions. Constructing a counterexample by hand to expose the mistake is even more onerous. Based on the observation that reductions are actually programs, we designed #lang Karp, a DSL for formulating and random testing NP reductions.

In this presentation, Chenhao Zhang discusses the implementation of Karp on top of Racket and solver-aided host language Rosette.

Watch now: presentation

#Racket #RacketLang #RacketLanguage #RacketCon

Slide from presentation: 

Reduction Can Be Used to Show Hardness

picture of garidos with the caption Hard! 

picture of magikarp with caption Easy?

Introducing Rackith

by Sage Gerard

Rackith is a language-oriented programming language based on Racket. Use Rackith to define many languages with one syntax object.

Watch the presentation now: talk video

#Racket #RacketLang #RacketLanguage #RacketCon

(thirteenth RacketCon)

:racket:​ :racket:​ :racket:​
October 28-29, 2023
Northwestern University
Evanston, IL, USA
con.racket-lang.org/

:racket:​ :racket:​ :racket:​

#RacketCon

(thirteenth
 RacketCon)   
October 28-29, 2023
Northwestern University
Evanston, IL, USA

RacketCon presentation “Sawzall: A grammar for chopping up data”

by @hazel

Sawzall, inspired heavily by dplyr and the relational algebra. Sawzall builds on top of Alex Harsanyi’s data-frame package, but provides a set of operations that are designed to compose and avoid mutating the original data-set, leading to a natural style of data manipulation following the idea of "do this, then that".

Find more great presentations and details of RacketCon 2023 at con.racket-lang.org/

Sawzall: A grammar for chopping up data

youtu.be/zza0fb36c-U
docs.racket-lang.org/sawzall/i

#RacketCon #Racket #RacketLang #RacketLanguage #dplyr #sawzall

Picture of electric saw with ‘new’ graphic

!!machine RacketCon!, RacketCon!, RacketCon!
Saturday and Sunday,
October 28 & 29, 2023
Northwestern U.,
Evanston, Illinois, USA.
#RacketCon con.racket-lang.org

!!machine RacketCon!, RacketCon!, RacketCon!
  Saturday and Sunday,
    October 28 & 29, 2023
      Northwestern U.,
        Evanston, Illinois, USA.
Stephen De Gabriellespdegabrielle@types.pl
2022-12-02

ICYMI: Ben Greenman at #RacketCon

Summary of the Summer of #lang (Fun + Games III)

youtu.be/9LiZv4CoZn0
#Racket #RacketLang #RacketLanguage

Stephen De Gabriellespdegabrielle@types.pl
2022-12-01

ICYMI: Sorawee Porncharoenwase (Washington) at #RacketCon

fmt: A Racket code formatter

youtu.be/5eLPShNtSI4
#Racket #RacketLang #RacketLanguage

Stephen De Gabriellespdegabrielle@types.pl
2022-11-30

ICYMI: Cameron Moy (Northeastern) at #RacketCon

Contracts for protocols

youtu.be/bNsGP-anieo

Stephen De Gabriellespdegabrielle@types.pl
2022-11-29

ICYMI: Siddhartha Prasad (Brown) at #RacketCon

Examplar: Making Hay from Wheat

youtu.be/JlWLY41aypA
#Racket #RacketLang #RacketLanguage #csed

Lisp & Scheme Weeklylisp_discussions
2022-11-26

ICYMI: Hazel Levine (Indiana) at - Design Recipe Guided Synthesis with Bingus

youtu.be/oAE_G6HYilo

Discussions: discu.eu/q/https://youtu.be/oA

Stephen De Gabriellespdegabrielle@types.pl
2022-11-25

ICYMI: Hazel Levine (Indiana) at #RacketCon

Design Recipe Guided Synthesis with Bingus

youtu.be/oAE_G6HYilo

Source for Bingus github.com/ralsei/bingus

#Racket #RacketLang #RacketLanguage #htdp #ProgramSynthesis @hazel

Phone screen with the Bingus (hairless cat) as background captured from the last slide in the presentation
Stephen De Gabriellespdegabrielle@types.pl
2022-11-24

ICYMI: Marco Morazán (Seton Hall) at #RacketCon

What Can Beginners Learn from Video Games?

youtu.be/rBDAbr6XZTM

#Racket #RacketLang #RacketLanguage #csed #cseducation #CSedresearch

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst