summaryrefslogtreecommitdiff
path: root/jefs.fs
diff options
context:
space:
mode:
Diffstat (limited to 'jefs.fs')
-rw-r--r--jefs.fs15
1 files changed, 8 insertions, 7 deletions
diff --git a/jefs.fs b/jefs.fs
index 460eb53..3fb3dc1 100644
--- a/jefs.fs
+++ b/jefs.fs
@@ -8,7 +8,8 @@
\ <builds does>
\ argc/argv
\ file io
-\ interactive input
+\ DUMP
+\ custom Nicer line mode editing (like rlwrap)
: cell+ 8 + ;
: say ( c-addr u -- ) swap 1 1 syscall3 drop ;
@@ -357,16 +358,16 @@ make line-buffer line-buffer-length allot
0 >in ! line-buffer tib ! line-buffer line-buffer-length accept
0= if dup 0= if #tib ! false [ ret, ] then then #tib ! true ;
-\ bug: C-d causes stack underflow
+\ todo?: reset retstack
: quit 0 to source-id [compile] [ begin refill while interpret ." ok" cr repeat ;
-\ }}}
-
:> >s0 error @ write-error cr quit ; to handler
+\ }}}
: (evaluate) ( c-addr u -- ) 0 >in ! ( u ) #tib ! ( c-addr ) tib !
source-id >r string-source to source-id interpret r> to source-id ;
: evaluate ( c-addr u -- ) tib @ >r #tib @ >r >in @ >r (evaluate) r> >in ! r> #tib ! r> tib ! ;
-.free
-quit bye
-bye
+0 constant version
+: welcome ." welcome to Jewelforth, version " version u. cr .free ;
+
+welcome quit bye