aboutsummaryrefslogtreecommitdiff
path: root/elymas
diff options
context:
space:
mode:
authorDrahflow <drahflow@gmx.de>2014-01-01 22:20:11 +0100
committerDrahflow <drahflow@gmx.de>2014-01-01 22:20:11 +0100
commit5427dd384017d27dc3f86fc23aa0019a9defe8e7 (patch)
tree5081f85f4e29b9e56c345cd248954412d15f1413 /elymas
parent84a3531334fb171b9740e785eddcfd8b7139261c (diff)
sys .argv initialized meaningfully
Diffstat (limited to 'elymas')
-rw-r--r--elymas/Makefile8
-rw-r--r--elymas/interpreter.ey6
-rw-r--r--elymas/loaded.ey6
-rw-r--r--elymas/optimized.ey6
-rw-r--r--elymas/shared.ey6
5 files changed, 24 insertions, 8 deletions
diff --git a/elymas/Makefile b/elymas/Makefile
index bbdd4a8..5283db7 100644
--- a/elymas/Makefile
+++ b/elymas/Makefile
@@ -1,12 +1,12 @@
all: shared loaded
shared: optimized shared.ey $(shell find lib -name '*.ey')
- ./optimized < shared.ey
+ ./optimized shared.ey
loaded: optimized loaded.ey $(shell find lib -name '*.ey')
- ./optimized < loaded.ey
+ ./optimized loaded.ey
-optimized: interpreter optimized.ey lib/math.ey lib/sys/opt.ey
- ./interpreter < optimized.ey
+optimized: interpreter optimized.ey lib/math.ey lib/txt.ey lib/sys/opt.ey
+ ./interpreter optimized.ey
.PHONY: all
diff --git a/elymas/interpreter.ey b/elymas/interpreter.ey
index bb25d00..365a8d6 100644
--- a/elymas/interpreter.ey
+++ b/elymas/interpreter.ey
@@ -1,3 +1,7 @@
#!/usr/bin/env elymas
-{ "/proc/self/fd/0" include 0 sys .exit }' "interpreter" sys .freeze
+{
+ sys .argv len not { "Usage: interpreter <input.ey>" die } rep
+ 0 sys .argv * include
+ 0 sys .exit
+}' "interpreter" sys .freeze
diff --git a/elymas/loaded.ey b/elymas/loaded.ey
index 02faa8a..2a48af1 100644
--- a/elymas/loaded.ey
+++ b/elymas/loaded.ey
@@ -12,4 +12,8 @@
"lib/net/alg/http.ey"
] { _ dump include }' each
-{ "/proc/self/fd/0" include 0 sys .exit }' "loaded" sys .freeze
+{
+ sys .argv len not { "Usage: loaded <input.ey>" die } rep
+ 0 sys .argv * include
+ 0 sys .exit
+}' "loaded" sys .freeze
diff --git a/elymas/optimized.ey b/elymas/optimized.ey
index 5cee305..0102017 100644
--- a/elymas/optimized.ey
+++ b/elymas/optimized.ey
@@ -6,4 +6,8 @@
"lib/sys/opt.ey"
] { _ dump include }' each
-2 { { "/proc/self/fd/0" include 0 sys .exit }' "optimized" sys .freeze } rep # FIXME freeze wonkyness (the optimizer allocates during freeze)
+{
+ sys .argv len not { "Usage: optimized <input.ey>" die } rep
+ 0 sys .argv * include
+ 0 sys .exit
+}' "optimized" sys .freeze
diff --git a/elymas/shared.ey b/elymas/shared.ey
index 6a0ee6d..73b0a12 100644
--- a/elymas/shared.ey
+++ b/elymas/shared.ey
@@ -13,4 +13,8 @@
"lib/net/alg/http.ey"
] { _ dump include }' each
-{ "/proc/self/fd/0" include 0 sys .exit }' "shared" sys .so .freeze
+{
+ sys .argv len not { "Usage: shared <input.ey>" die } rep
+ 0 sys .argv * include
+ 0 sys .exit
+}' "shared" sys .so .freeze