#applications #compiler #performance #language #filter #jit-ish

bin+lib nodespeak

A JIT-ish compiler for number-crunching applications

29 releases

0.2.1 Aug 11, 2020
0.2.0 Jul 28, 2020
0.1.19 Jul 14, 2020
0.1.18 Jun 30, 2020
0.0.6 May 11, 2020

#508 in Programming languages

MIT/Apache and GPL-3.0-only

365KB
9K SLoC

Nodespeak

Nodespeak is a language designed to write short, number-crunching filters that run inside of a larger application. It is designed to allow compilation and recompilation during the execution of the larger application, such that the filter can be optimized and reoptimized based on parameters requested by the user or generated by the application. For example, many filter in image editing applications have a handful of tunable paramters such as size and strength, allowing the filter to be more generic at the cost of runtime performance. With Nodespeak, the code for the filter can be written once like always, but recompiled on the fly based on the parameters the user selects to produce machine code with minimal overflow from control flow, as well as taking advantage of any algebraic optimizations that occur from the particular combination of parameters that the user has selected.

This is currently very work in progress, and there is no fully working version yet.


lib.rs:

Look at this Link

Dependencies

~3–13MB
~125K SLoC