Skip to content
Sign UpLog In
Profile icon

Y Sharp

@ysharp_design
  • Super Lean

    Cover page
    Made with C#

    Extensible LISP interpreter core in 100 lines.

    A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...

    Recent comments (28)
    ysharp_design
    ysharp_design
    6 months ago

    Revisit the escape operator "```".

    ysharp_design
    ysharp_design
    7 months ago

    Reflection / interop bugfixes.

    ysharp_design
    ysharp_design
    7 months ago

    Implement free-form escapes.

    ysharp_design
    ysharp_design
    7 months ago

    Implement the set equivalence class operator '{/}'.

    ysharp_design
    ysharp_design
    7 months ago

    Implement N-ary cartesian product; demo delegate proxies (through 'as' operator).

    ysharp_design
    ysharp_design
    7 months ago

    Allow to consume open generic types and to close them.

    ysharp_design
    ysharp_design
    7 months ago

    Introduce typeof/new/as/is operators, member invocation on CLR types.

    ysharp_design
    ysharp_design
    7 months ago

    More CYK-oriented helpers.

    ysharp_design
    ysharp_design
    7 months ago

    Work out some helpers first.

    ysharp_design
    ysharp_design
    7 months ago

    More user friendly showcases.

Repls
Community
ysharp_design
ysharp_design
published an Update
6 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Escape operator update
Revisit the escape operator "`".
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Reflection / interop update
Reflection / interop bugfixes.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Free-form escapes
Implement free-form escapes.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Set equivalence class operator
Implement the set equivalence class operator '{/}'.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
N-ary cartesian product, delegate proxies
Implement N-ary cartesian product; demo delegate proxies (through 'as' operator).
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
More CLR / BCL interop
Allow to consume open generic types and to close them.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Add some CLR/BCL interop support
Introduce typeof/new/as/is operators, member invocation on CLR types.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
More helpers
More CYK-oriented helpers.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
CYK kickstart
Work out some helpers first.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Improve samples a bit
More user friendly showcases.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Minor refacto
Revisit Desugar() and the syntax of extended identifiers.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Typo fix
Fix silly typo.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Some renaming
For better nomenclature.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Cover page
Updated cover page.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Kahn's algorithm tryout
Kahn's algorithm in YoctoLisp...
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Programmer-defined operators
Allow the definition of programmer-defined operators behaving (mostly) like builtins.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Typo fix
Refer to "overload" instead of "override".
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Bug fixes and new features
Fix nasty bug in Environment class; use commas instead of semicolons for the LastOf operator; allow programmer-defined, disciplined overloads of non-core builtins.
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
Revisit variadic arguments handling
Make both forms equivalent: ( Sum 1 2 3 ) and ( Sum . ( [] 1 2 3 ) ) when Sum has a signature of the form: ( ( (args) ) => ... )
ysharp_design
ysharp_design
published an Update
7 months ago
0
Super Lean
Super LeanExtensible LISP interpreter core in 100 lines. A sample YoctoLisp dialect interpreter in another 200 lines, featuring: boolean algebra, integer arithmetic, set operators, string interpolation, first class environments, and more...
More sequence goodies
Show how to implement ranges and side effectful 'while' loops using sequences.