Clean out, start sl JIT project (no jit yet)
This commit is contained in:
@@ -10,6 +10,7 @@
|
||||
<i>FOSS Fexprs: <a title="Kraken on GitHub" href="https://github.com/limvot/kraken">https://github.com/limvot/kraken</a></i>
|
||||
<!--<button onclick="toggleTheme()" style="float: right;">Swap Theme</button>-->
|
||||
<br>
|
||||
<!--
|
||||
<h3>Demo:</h3>
|
||||
<div class="run_container">
|
||||
<div class="editor" id="hello_editor">; Of course
|
||||
@@ -20,16 +21,16 @@
|
||||
<textarea class="output" id="hello_output">Output will appear here</textarea>
|
||||
<button class="run_button" onclick="executeKraken(hello_editor_jar.toString(), 'hello_output')">Run</button> <br>
|
||||
</div>
|
||||
-->
|
||||
<h3>Concept:</h3>
|
||||
<ul>
|
||||
<li> Minimal, purely functional Kernel/Scheme as core language, with Kernel/Vau calculus inspiration oblivating the need for non-reader macros (<a title="Kernel/Vau calculus thesis" href="https://web.wpi.edu/Pubs/ETD/Available/etd-090110-124904/unrestricted/jshutt.pdf">Kernel/Vau calculus thesis</a>)
|
||||
<li> Partial evaluation to make fexprs fast (my PhD research! First paper on <a href="https://arxiv.org/abs/2303.12254">arXiv</a>)
|
||||
<li> Partial evaluation (or now, maybe tracing JIT compilation) to make fexprs fast (my PhD research! First paper on <a href="https://arxiv.org/abs/2303.12254">arXiv</a>)
|
||||
<li> Implement Type Systems as Macros (but using Fexprs instead of macros) (<a title="type systems as macros paper 1" href="http://www.ccs.neu.edu/home/stchang/pubs/ckg-popl2017.pdf">paper, up to System Fω</a>) (<a title="type systems as macros paper 2" href="https://www.ccs.neu.edu/home/stchang/pubs/cbtb-popl2020.pdf">second paper, up to dependent types</a>)
|
||||
<li> Use fexprs to bootstrap more complex features, like delimited continuations
|
||||
<li> Use above "type systems as fexprs" to add types and create a statically-typed language on top (with Algebraic Effects using the underlying delimited continuations, etc)
|
||||
</ul>
|
||||
<h3> About:</h3>
|
||||
<p>This is my 3rd run at this Lisp concept, with Partial Evaluation to make fexprs fast forming the core of my current PhD research. <a href="https://miloignis.room409.xyz/">(tiny personal PhD website here)</a></p>
|
||||
<p>This is my 4th run at this Lisp concept, with tracing JIT compilation to make fexprs fast forming the core of my current PhD research. <a href="https://miloignis.room409.xyz/">(tiny personal PhD website here)</a></p>
|
||||
<h4>Vau/Kernel as simple core:</h4>
|
||||
By constructing our core language on a very simple Vau/Kernel base, we can keep the base truely tiny, and build up normal Lisp functions and programming language features in the language itself. This should help implement other programming languages concisely, and will hopefully make optimization easier and more broadly applicable.
|
||||
<br>
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
x lisp tree
|
||||
x explain quote
|
||||
x show fold's internals
|
||||
x fix if0 primitive
|
||||
_ partial evaluation
|
||||
Reference in New Issue
Block a user