diff options
| author | kitty <nepeta@canaglie.net> | 2026-02-28 19:22:31 +1100 |
|---|---|---|
| committer | kitty <nepeta@canaglie.net> | 2026-02-28 19:22:31 +1100 |
| commit | dbca40070072eabf21d75c49aaef1411151211e5 (patch) | |
| tree | 37a80c7258444c75908ff20c139e4f60e55cc845 | |
| parent | ca61de360e5e3992c6732b6f379bacf00694cdb0 (diff) | |
rename :noname to :>
the name :> is taken from dusk os. i like it and it's shorter than
:noname and i don't care about standard compliance
| -rw-r--r-- | jefs.fs | 10 |
1 files changed, 4 insertions, 6 deletions
@@ -1,6 +1,5 @@ \ i think something is going on with the stack. i dunno \ things TODO: -\ :noname \ DO LOOP \ s\" \ add error handling to compiling words @@ -83,10 +82,10 @@ hex : ret, c3 c, ; decimal \ maybe it could be an empty string but that might require some rewriting \ (maybe a bad solution, but ; expects a header and reads from LATEST... \ maybe WORDS should skip words whose name is just _?) -\ it may not be a bad idea to redefine ; above this so it works with :noname words. -\ maybe a NONAMING? variable so we know it's a noname word and thus does not need to be unsmudged? +\ it may not be a bad idea to redefine ; above this so it works with :> words. +\ maybe a NONAMING? variable so we know it's a :> word and thus does not need to be unsmudged? \ also we can't use CREATE because it reads from tib. eugh -: :noname here @ latest @ , 0 c, 1 w, [ char _ ] literal c, latest ! smudge here @ ( ← xt ) [compile] ] ; +: :> here @ latest @ , 0 c, 1 w, [ char _ ] literal c, latest ! smudge here @ ( ← xt ) [compile] ] ; \ jonesforth impl : case 0 ; immediate @@ -212,7 +211,7 @@ variable hld : .free bytes-free u. ." of " bytes-allocated u. ." bytes free (used " bytes-used (.) say ." )" cr ; : #bye ( code -- ) 60 syscall1 ; -:noname >s0 error @ dup case +:> >s0 error @ dup case 1 of ." stack underflow" endof 2 of ." word not found" endof 3 of ." compile mode only" endof @@ -275,5 +274,4 @@ make file-buffer file-buffer-length allot .free \ file-buffer file-buffer-length stdin read-file drop file-buffer swap evaluate -:noname 1 2 3 .s ; drop bye |
