Added README and icon
parent
1a4ed032c2
commit
bcd7a9d888
|
@ -0,0 +1,22 @@
|
|||
<h1 align="center">
|
||||
<img src="misc/lamb.svg" style="height:10ex"><br/>
|
||||
Lamb: A Lambda Calculus Engine
|
||||
</h1>
|
||||
|
||||
|
||||
## Todo (pre-release):
|
||||
- Fix parser (call parentheses)
|
||||
- Good command parsing (`:help`, `:save`, `:load`, `:macros` as a bare minimum)
|
||||
- Python files: installable, package list, etc
|
||||
- $\alpha$-equivalence check
|
||||
- Don't expand macros until you absolutely have to
|
||||
- Versioning
|
||||
- Clean up runner & printing
|
||||
- Count reductions
|
||||
|
||||
## Todo:
|
||||
- live syntax check
|
||||
- Command and macro autocomplete
|
||||
- step-by-step reduction
|
||||
- Documentation in README
|
||||
- Maybe a better icon?
|
|
@ -0,0 +1,111 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="1000"
|
||||
height="1000"
|
||||
viewBox="0 0 264.58333 264.58333"
|
||||
version="1.1"
|
||||
id="svg5"
|
||||
xml:space="preserve"
|
||||
inkscape:version="1.2.1 (9c6d41e410, 2022-07-14, custom)"
|
||||
sodipodi:docname="lamb.svg"
|
||||
inkscape:export-filename="lamb.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
|
||||
id="namedview7"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:document-units="px"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.29773318"
|
||||
inkscape:cx="77.250376"
|
||||
inkscape:cy="431.59449"
|
||||
inkscape:window-width="2560"
|
||||
inkscape:window-height="1384"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="layer1" /><defs
|
||||
id="defs2"><rect
|
||||
x="115.5293"
|
||||
y="303.42267"
|
||||
width="156.50168"
|
||||
height="132.83591"
|
||||
id="rect1140-5" /></defs><g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"><circle
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.41581;stroke-linecap:square"
|
||||
id="path459-9"
|
||||
cx="-109.17679"
|
||||
cy="-217.63823"
|
||||
r="59.476734" /><circle
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.41581;stroke-linecap:square"
|
||||
id="path1017-7"
|
||||
cx="-157.29816"
|
||||
cy="-245.9538"
|
||||
r="33.895596" /><ellipse
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.04007;stroke-linecap:square"
|
||||
id="path1019-0"
|
||||
cx="-44.679581"
|
||||
cy="-200.95345"
|
||||
rx="26.545563"
|
||||
ry="27.397308" /><circle
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.83321;stroke-linecap:square"
|
||||
id="path1021-6"
|
||||
cx="-130.38965"
|
||||
cy="-172.87958"
|
||||
r="28.204927" /><ellipse
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.41581;stroke-linecap:square"
|
||||
id="path1023-2"
|
||||
cx="-131.6633"
|
||||
cy="-277.83984"
|
||||
rx="34.296875"
|
||||
ry="34.954159" /><ellipse
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.41581;stroke-linecap:square"
|
||||
id="path1023-3-8"
|
||||
cx="-92.672272"
|
||||
cy="-281.96393"
|
||||
rx="34.296875"
|
||||
ry="34.954159" /><ellipse
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.41581;stroke-linecap:square"
|
||||
id="path1023-6-9"
|
||||
cx="-153.50084"
|
||||
cy="-203.24738"
|
||||
rx="34.296875"
|
||||
ry="34.954159" /><ellipse
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.41581;stroke-linecap:square"
|
||||
id="path1023-7-5"
|
||||
cx="-84.960915"
|
||||
cy="-176.99873"
|
||||
rx="34.296875"
|
||||
ry="34.954159" /><ellipse
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.41581;stroke-linecap:square"
|
||||
id="path1023-5-0"
|
||||
cx="-53.199306"
|
||||
cy="-251.84387"
|
||||
rx="34.296875"
|
||||
ry="34.954159" /><text
|
||||
xml:space="preserve"
|
||||
transform="matrix(2.1466822,0,0,2.1466822,-188.49242,-999.28957)"
|
||||
id="text1138-2"
|
||||
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:35.3308px;font-family:'CodeNewRoman Nerd Font';-inkscape-font-specification:'CodeNewRoman Nerd Font, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;white-space:pre;shape-inside:url(#rect1140-5);display:inline;fill:#fe0000;fill-opacity:1;stroke:#fe0000;stroke-width:0.690382;stroke-linecap:square;stroke-dasharray:none;stroke-opacity:1"><tspan
|
||||
x="115.5293"
|
||||
y="334.07755"
|
||||
id="tspan2066">λ</tspan></text><path
|
||||
id="path459"
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:15.1936;stroke-linecap:square;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 147.73925,20.825966 A 44.180313,44.560441 0 0 0 118.90993,31.659422 44.180313,44.560441 0 0 0 97.511406,26.082574 44.180313,44.560441 0 0 0 53.37264,69.535516 43.663397,43.210954 0 0 0 20.825967,111.29158 a 43.663397,43.210954 0 0 0 11.882151,29.61626 44.180313,44.560441 0 0 0 -7.507733,24.82829 44.180313,44.560441 0 0 0 38.031951,44.111 36.332833,35.956349 0 0 0 35.920706,30.55746 36.332833,35.956349 0 0 0 26.096538,-10.94085 44.180313,44.560441 0 0 0 32.42236,14.2936 44.180313,44.560441 0 0 0 44.04801,-41.11168 34.195283,34.926775 0 0 0 7.84119,0.9412 34.195283,34.926775 0 0 0 34.19621,-34.92756 34.195283,34.926775 0 0 0 -17.27076,-30.34461 44.180313,44.560441 0 0 0 16.28024,-34.53115 44.180313,44.560441 0 0 0 -44.18021,-44.560117 44.180313,44.560441 0 0 0 -7.01642,0.579942 44.180313,44.560441 0 0 0 -43.83095,-38.977399 z" /><path
|
||||
d="m 123.86567,107.10032 0.52317,1.49467 -32.958244,78.24777 h 19.954294 l 17.11437,-44.09374 4.11045,-11.28504 3.51254,11.28504 9.86505,29.22146 c 1.04631,3.13888 2.0926,5.6799 3.13889,7.77244 1.0463,2.09261 2.16732,3.8115 3.4378,5.00732 1.27053,1.27047 2.76522,2.16731 4.40938,2.69041 1.64418,0.52315 3.66203,0.74738 6.0536,0.74738 1.49468,0 2.91466,-0.0745 4.3346,-0.29892 1.34526,-0.14948 3.13889,-0.52317 5.23148,-1.12103 v -14.27442 c -0.44844,0.14949 -0.89683,0.22436 -1.49472,0.22436 -0.59786,0.0745 -1.12102,0.0745 -1.49467,0.0745 -1.64418,0 -2.9147,-0.52317 -3.81149,-1.64418 -0.89684,-1.04631 -1.8684,-3.13891 -2.91471,-6.20307 L 142.3253,105.00771 c -1.8684,-5.23149 -3.73678,-9.491406 -5.6799,-12.779749 -1.9431,-3.288345 -4.11041,-5.829334 -6.35248,-7.697728 -2.31682,-1.793634 -4.85779,-3.064128 -7.62299,-3.736762 -2.83993,-0.597874 -5.97881,-0.971532 -9.49141,-0.971532 -1.64417,0 -3.662,0.223963 -6.05356,0.523166 -2.39151,0.298923 -4.70828,0.747329 -6.80088,1.345202 v 15.246 c 1.49471,-0.373844 3.28835,-0.747342 5.30621,-1.046304 2.01783,-0.298871 3.81151,-0.448446 5.30618,-0.448446 1.41999,0 2.69048,0.149495 3.88624,0.448446 1.1958,0.298923 2.31682,0.822115 3.36312,1.644178 1.04626,0.896837 2.01782,2.092597 2.91466,3.587309 0.89683,1.49468 1.86836,3.51255 2.76518,5.97882 z"
|
||||
id="path1567"
|
||||
style="font-weight:bold;font-size:35.3308px;font-family:'CodeNewRoman Nerd Font';-inkscape-font-specification:'CodeNewRoman Nerd Font, Bold';white-space:pre;fill:#fe0000;stroke:#fe0000;stroke-width:2.99083;stroke-linecap:square" /></g></svg>
|
After Width: | Height: | Size: 6.6 KiB |
Reference in New Issue