20 comments

[ 3.1 ms ] story [ 50.9 ms ] thread
Nice, compressed LLVM overview...
If you like this you might also like http://terralang.org
Whoa, I've had this idea kicking around in my mind for a looong time (specifically something for dynamically generating Go code). Was wondering if anyone actually built this out, but could never find anything. Thanks for sharing!
I recommand David Beazley's talk from a recent PyCon India on a similar subject : https://youtu.be/r-A78RgMhZU

Mostly live coded, it really is pretty amazing but also quite insightful.

> In this talk, I live-code a simple stack machine and turn it into an interpreter capable of running Web Assembly. I then use that to play a game written in Rust.

Wow. This is mind blowing. Thanks for the pointer.

He has a lambda calculus talk in python[0] that is just as good. Just a great educator.

[0] https://www.youtube.com/watch?v=pkCLMl0e_0k

U of Chicago, I believe, denied him tenure, when he was an assistant prof there.
How good of an educator you are may not even be in the top 5 most important things to get tenure, unfortunately.
Why not just use Nim?
Use nim to create an LLVM specializer for python and call numpy functions with it?
I like Nim. I am learning it now. However, Nim is not Python and this post is about Python.
(comment deleted)
Am I being daft, or is there not much sbout specializers on the web? Any links much appreciated.
As others have noted, this is a somewhat dated article. Indeed, the github page for llvmpy (https://github.com/llvmpy/llvmpy) recommends to use llvmlite (https://github.com/numba/llvmlite) instead.

See also http://llvmlite.pydata.org/en/latest/user-guide/index.html and in the context of the original article, in particular these two pages:

http://llvmlite.pydata.org/en/latest/user-guide/ir/examples....

http://llvmlite.pydata.org/en/latest/user-guide/binding/exam...

Hope this helps! :-)