48 lines
972 B
YAML
48 lines
972 B
YAML
id: "unlambda"
|
|
aliases:
|
|
- "unl"
|
|
name: "Unlambda"
|
|
|
|
install:
|
|
apt:
|
|
- unlambda
|
|
scripts:
|
|
unlambda-repl: |
|
|
#!/usr/bin/env python3
|
|
import argparse
|
|
import readline
|
|
import subprocess
|
|
|
|
parser = argparse.ArgumentParser()
|
|
parser.add_argument("file", nargs="?")
|
|
args = parser.parse_args()
|
|
|
|
if args.file:
|
|
with open(args.file) as f:
|
|
subprocess.run(["unlambda"], input=f.read(), encoding="utf-8")
|
|
while True:
|
|
try:
|
|
code = input("λ> ")
|
|
except KeyboardInterrupt:
|
|
print("^C")
|
|
continue
|
|
except EOFError:
|
|
print("^D")
|
|
break
|
|
if not code:
|
|
continue
|
|
subprocess.run(["unlambda"], input=code, encoding="utf-8")
|
|
|
|
repl: |
|
|
unlambda-repl
|
|
input: |
|
|
`.2`.8`.7`.8`.2i
|
|
|
|
main: "main.unl"
|
|
template: |
|
|
`.
|
|
`.!`.d`.l`.r`.o`.w`. `.,`.o`.l`.l`.e`.Hi
|
|
|
|
run: |
|
|
unlambda-repl main.unl
|