UW PLSE | Algebraic Semantics for Machine Knitting
As programming languages researchers, we’re entitled to a certain level of mathematical rigor behind the languages we write and analyze. Programming languages have semantics, which are definitions of what statements in the language mean. We can use those semantics to do all sorts of useful things, like error checking, compiling for efficiency, code transformation, and so on. This blog post is about a programming domain that doesn’t yet enjoy the same level of rigor in its semantics: machine knitting. People write programs to control massive arrays of needles that manipulate yarn into useful 3D objects. In this blog post, I’ll run through the process of finding “the right” semantics for machine knitting, touching on why we want semantics, connections to traditional programming languages, and what we might use these semantics for in the future. In our search, there are a surprising number of guest appearances by fields of study outside of programming languages: algebraic topology, group
Post Metadata Author Nat Hurtig Date Published 31 March 2025 As programming languages researchers, we’re entitled to a certain level of mathematical rigor behind the languages we write and analyze. Programming languages have semantics , which are definitions of what statements in the language mean. We can use those semantics to do all sorts of useful things, like error checking, compiling for efficiency, code transformation, and so on. This blog post is about a programming domain that doesn’t yet enjoy the same level of rigor in its semantics: machine knitting. People write programs to control
saved by
related reading
- A Compiler for 3D Machine Knittings3-us-west-1.amazonaws.com
- how I think when I think about programming - alice mazalicemaz.com
- Lambda calculus - Wikipediaen.wikipedia.org
- AFOSR2022-Structure_and_Dynamics_of_Working_Language.pdfdspivak.net
- Bartosz Milewski's Programming Cafe | Category Theory, Haskell, Concurrency, C++bartoszmilewski.com
- Curry–Howard correspondenceen.wikipedia.org
- E.W.Dijkstra Archive: On the foolishness of "natural language programming". (EWD 667)cs.utexas.edu
- E.W.Dijkstra Archive: On the foolishness of "natural language programming". (EWD 667)cs.utexas.edu
- Algorithm - Wikipediaen.wikipedia.org
- Weird Languagespaulgraham.com
- Montague Semantics (Stanford Encyclopedia of Philosophy)plato.stanford.edu
- A pilot project in universal algebra to explore new ways to collaborate and use machine assistance? | What's newterrytao.wordpress.com