L

Lisperator

lisperator.net · Personal blog · on HN since 2012

Mihai Bazon, author of UglifyJS, writes about Lisp, language implementation in JavaScript, and his Slip Lisp system.

What HN saysHN commenters recommend his tutorial on implementing a programming language in JavaScript, and note he is a Lisp enthusiast whose blog runs on Common Lisp.
32HN people shared it
11linked it in comments
24stories submitted
413story points
10 months agolast shared
2012people per year2026

Most-shared posts

  1. 1
    How to implement a programming language in JavaScript
    10 people · 267 points · first shared 2014 · 38 comments on HN
  2. 2
    Slip – A Lisp System in JavaScript
    7 people · 10 points · first shared 2012 · 1 comments on HN
  3. 3
    Why Lisp?
    3 people · 101 points · first shared 2012 · 69 comments on HN
  4. 4
    Pull Request Based Development Sucks
    2 people · 7 points · first shared 2017 · 1 comments on HN
  5. 5
    Thoughts on CommonJS / RequireJS
    2 people · 3 points · first shared 2013 · discussion on HN
  6. 6
    Ymacs Reloaded: Emacs-like editor in the browser
    2 people · 2 points · first shared 2024 · discussion on HN
  7. 7
    Slip
    2 people · first shared 2025
  8. 8
    Slip – A Lisp System in the Browser
    1 people · 12 points · first shared 2025 · 1 comments on HN
  9. 9
    A JavaScript Sudoku Solver
    1 people · 3 points · first shared 2022 · 1 comments on HN
  10. 10
    Should you switch to UglifyJS2?
    1 people · 2 points · first shared 2013 · discussion on HN
  11. 11
    Sytes is the PHP of Common Lisp
    1 people · 2 points · first shared 2012 · 1 comments on HN
  12. 12
    QUEEN, chess, and writing fast Lisp code
    1 people · 2 points · first shared 2016 · discussion on HN
  13. 13
    BareText - Nice Alternative to Markdown etc.
    1 people · 1 points · first shared 2012 · discussion on HN
  14. 14
    A little JavaScript problem
    1 people · 1 points · first shared 2017 · discussion on HN
  15. 15
    Ast
    1 people · first shared 2022

What HN people wrote when they linked it

jayflux · 2018-01-22
if anyone found this interesting, i recommend reading http://lisperator.net/pltut/ It called "How to implement a programming language" its in JS and its made by the guy who's behind uglifyJS
dejawu · 2017-09-05
I'm building a language right now and I found this tutorial to be a great help: http://lisperator.net/pltut/ Here's the language I'm building: https://github.com/kevwu/kythera
mishoo · 2017-03-20
I wrote some time back a tutorial on this: http://lisperator.net/pltut/ — but the implementation language is JS, and the language we implement is quite trivial (no objects, inheritance etc.; but does have lexical scope, first-class functions and continuations). I think Java is ugly, but putting this knowledge in an accessible book is great. Typography is also very nice.
Surio · 2013-01-01
Mihai Bazon (of uglify.js fame) is also a big time lisper. His entire blog is powered by Common LISP. Check it out. AFAIR, he developed a browser based SLIME environment too http://lisperator.net/
kscarlet · 2026-01-08
Very nice. p.s. (I hate to point this out), there seems to be a name collision with https://lisperator.net/slip/
mdaniel · 2022-10-23
That was a super interesting link, thank you. For the ontological problem, I presume you're referring to how there are so many differing ideas of how to represent ASTs (apologies for mixing languages, these URLs were just handy): * https://lisperator.net/uglifyjs/ast#nodes * https://github.com/estree/estree#the-estree-spec * ... likely others which makes it hard for ls1 to ask ls2 about "the for-of iteration variable Node" because ls2 could be using UglifyJS or ESTree or their own(!) AST nomenclature? And all of this is made worse by (e.g.) Java1.3 versus Java19 because languages are rarely static
aikah · 2015-06-15
I like this article: http://lisperator.net/pltut/ it's in javascript and does a good job at teaching writing interpreters withtout regex tricks. There is even a compiler tutorial at the end.
lgas · 2014-03-01
Googling turned up several on just the first page of results: http://www.biwascheme.org/ http://sisc-scheme.org/sisc-online.php http://lisperator.net/slip/ http://alex.nisnevich.com/ecmachine/ But the parent is really the right answer -- ClojureScript is actually targeted at meeting modern web development challenges and has a thriving ecosystem of powerful tools for the same.
mnemonik · 2012-09-08
I just want to note that the new CoffeeScript compiler is using ESCodeGen as a backend, which is doing the source map heavy lifting. Anyone writing a compiler which targets JS can use ESCodeGen as a backend and get source maps pretty much for free. Awesome news all around! https://github.com/Constellation/escodegen Note: I do not want it to seem like I want to take anything away from Michael Ficarra and the new CoffeeScript compiler. He also wrote the code to integrate source maps with ESCodeGen, but it is something that many projects will be able to take advantage of, not just CoffeeScript. In other source map news, if anyone hasn't seen it yet, UglifyJS v2 now supports source maps: http://lisperator.net/blog/uglifyjs-v2-news/ Source map support is on the way for Firefox's debugger as well: https://bugzilla.mozilla.org/show_bug.cgi?id=771597
camus2 · 2017-02-09
Mandatory link to lisperator : http://lisperator.net/pltut/

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close