HackerTubewatch
Surprise me
Frame from Julia: to Lisp or not to Lisp? Plays via YouTube's privacy-enhanced embed

Julia: to Lisp or not to Lisp?

European Lisp Symposium
Talks
YouTube
4 HN users recommended this talk8 months2016–2022 score 9
Years with an HN recommendation, 2007–2026

HN commenters recommend it as a brilliant talk on Julia's design and how it is or isn't a Lisp.

Stefan Karpinski's European Lisp Symposium 2016 talk asks whether Julia is a Lisp. He covers the features it borrows from Lisp, such as macros and closures, and where it departs, including syntax and its type system, with generated machine code shown.

“the recent brilliant talk about design of Julia” (HN, 2016)

2 strong recommendations · 7 recommendations · 4 citations · Talks · intermediate

13 Hacker News comments

From the HN archive; up to 20 kept per video, favoring different commenters. Recommendations first.

@Flow May 2016 Strongly recommends
on HN thread European Lisp Symposium 2016
Ah, the Julia talk ( [this video] ) was just great. Showing the generated machine code is so hackerish yet so rare these days. :-/
Great Julia talk showing generated machine code
@krzychukula May 2016 Recommends
on HN thread European Lisp Symposium 2016
Best talks in my opinion: * [link] * [this video] Notable mentions: * [link] * [link] * [link] I liked OpenGL lightning talk as well: * [link]
Listed among best European Lisp Symposium talks
@e12e Jul 2016 Recommends
on HN thread Why is Python slow
Read more
From the linked [lwn] article: "Another example he gave demonstrates the slowness of the C runtime: import itertools sum(itertools.repeat(1.0, 100000000)) That will calculate the sum of 100 million 1.0s. But it is six times slower than the equivalent JavaScript loop. Float addition is fast, as is sum(), but the result is not. Larry Hastings asked what it was that was slowing everything down. Modzelewski replied that it is the boxing of the numbers, which requires allocations for creating objects. Though an audience member did point out with a chuckle that you can increase the number of iterations and Python will still give the right answer, while JavaScript will not." Reminded me about the excellent talk about Julia: "Julia: to Lisp or not to Lisp?" [this video] One things he points out early is that both the C99 and the R6RS Scheme spec is 20% numerical. Because correct and (reasonably) fast numbers and arithmetic is actually pretty hard to get right on a computer - if you want to abstract away hardware "short-cuts" and allow for precise arithmetic by default. It will be interesting to see how much type hints (eliminating some of the boxing/unboxing) will help python. And if it turns out to really be a good fit for the language -- everyone wants "free" performance, but transitioning to a (even partially) typed language is certainly not "free". Another point with the above loop, is that ideally, even if it can't be optimized/memoized down to a constant - it really shouldn't have t
Numerical arithmetic is hard to get right and fast
@e12e Mar 2017 Recommends
on HN thread Some fun with π in Julia
Read more
I'm not sure if "special language" is a particularly apt description of what Julia is. SQL is a "special" language. At any rate - a lisp-like language with llvm backend, package manager, and a (small, but not trivial) group of users writing real software - what's not to like? I (still) recommend the talk: "Julia - to lisp or not to lisp?", that gives a quick overview of some of the design choices: [this video] For me, I like that it has a real story trying to balance "actual integer math" (not this silly machine constrained twos-compliment hack" and "you could conceivably write a ray tracer that wasn't unusably slow" :)
Quick overview of Julia's design choices
@e12e May 2018 Recommends
on HN thread Common Lisp homepage
You might also want to have a look at Julia. It's not really a lisp, but it sits on top of a scheme - and it has a rather interesting, pragmatic type system: "Julia: to lisp or not to lisp?": [this video] [link] Maybe compare and contrast with Maxima?: [link]
Julia sits atop a scheme with an interesting pragmatic type system
@e12e Nov 2018 Recommends
on HN thread Chicken Scheme 5.0
I'm a great admirer of Julia, but I doubt it would appeal to those seeking a "true" lisp/scheme. Even if it's has a sane macro system, and much of the same power. You can indeed see s-expressions (search for "s-expression") : [link] This nice talk mentions a bit on how Julia is (not) a lisp (if I recall correctly): "Julia: to Lisp or not to Lisp?": [this video] This might also be of interest: [link] As well as (maybe) clasp: [link]
Nice talk on how Julia is or isn't a lisp
@travisd Sep 2022 Recommends
on HN thread From Common Lisp to Julia
Stefan Karpinski (one of the core Julia contributors) gave a talk (in 2016, so rather dated as far as the Julia syntax and whatnot go) about how Julia is secretly more lisp-y than even lisp & Scheme. The core of this argument is that most language specifications dedicate many pages to defining how arithmetic works, whereas Julia is actually just able to define that in Julia code as part of the stdlib (the implementation just calls out to LLVM intrinsics, but nonetheless, super neat!). `Int64` is actually defined in a Julia file. [this video]
Karpinski argues Julia defines arithmetic in its own stdlib, more lispy than Lisp

Citations, criticism and jokes

@e12e Jul 2017 Cites it
on HN thread Back to the Future: Lisp as a Base for a Statistical Computing System [pdf]
My initial thought was that this was about a project building atop of clasp, like CANDO: [link] [link] [link] But this does seem a bit more like Julia? "Julia: to Lisp or not to Lisp?" [this video] Then there's also the Axiom system, which I guess is primarily for symbolic computation, but I don't know if it might make sense to use it as a building block for statistical software? [link]
@stevelosh Oct 2017 Cites it
on HN thread Some Insights from a Julia Developer
> Actually, in general Julia is surprisingly Lispy for a language with Algol-family syntax. It's less surprising if you know there's still a version of the Julia REPL that works with sexpressions: [this video]
Julia is surprisingly Lispy, with an s-expression REPL
@e12e Oct 2017 Cites it
on HN thread A Lisp that runs Python (2016)
> ... a relatively fast functional language that replaces most of the brackets with indentation. You might like sweet expressions coupled with a common lisp, a scheme or racket: [link] [link] ... Or perhaps have a look at Julia: [link] "Julia - to Lisp or not to Lisp": [this video] [ed: and as mentioned below, there's also wisp: [link] ]
Julia as alternative to lisp with less brackets

Video list and Hacker News comment labels from HackerTube (prompted by @karpathy), released under ODC-By 1.0, built on the open-index/hacker-news archive. Hacker News data is provided by Y Combinator; comments remain the work of their authors. Video titles, channel names and thumbnails belong to their creators and are shown via YouTube. HackerTube Watch is an unofficial edition. Data export of 2026-10-31.

Keyboard shortcuts

/
Search
j k
Next / previous video
r
Surprise me
l
Like (video page)
w
Watch later (video page)
?
This help
Esc
Close