I don't think that OpenShadingLanguage is dynamic.
Re:Introducing the WebKit FTL JIT
by erichocean on Tuesday May 13, 2014 @07:35PM
(#7741270)
If by dynamic, you mean: the compiled code for the same exact shader source code can be wildly different at runtime, based on the inputs, OSL is dynamic in that sense.
If you mean something else…then I guess not. It's a shader after all, not a general purpose programming language.
I tend to use dynamic in the sense of static vs. dynamic, where dynamic is "happens at runtime" and static is "happens before runtime".
Re:Introducing the WebKit FTL JIT
by bronxbomber92 on Tuesday May 13, 2014 @08:47PM
(#7741565)
I think nadav256 meant dynamically typed. I.E. most languages that target LLVM are statically typed, and this project is one of the few (the first?) to successfully leverage LLVM for a dynamically typed language.
Julia is another dynamically typed language using LLVM. On the other hand, Julia was designed to use LLVM. I think this may be the first to succeed in dynamically typed language not designed to use LLVM.
What about Rubinius? (don't know much about it; does it not qualify as successful?)
Re:Introducing the WebKit FTL JIT
by erichocean on Wednesday May 14, 2014 @12:40AM
(#7742232)
There's also Python's "Unladen Swallow" attempt.[0]
Re:Introducing the WebKit FTL JIT
by bobbyi_settv on Wednesday May 14, 2014 @01:03AM
(#7742277)
Unladen Swallow is a dead project at this point (although many lessons were learned from it). The active Python LLVM Jit project is Dropbox's Pyston:
https://github.com/dropbox/pyston
https://tech.dropbox.com/2014/04/introducing-pyston-an-upcom...
Yup. Another is Open Shading Language[0]. They ended up with performance 25% faster than the previous shaders, which were coded by hand in C. It's used now in Blender's "Cycles" renderer. Yay, open source!
[0] https://github.com/imageworks/OpenShadingLanguage/