diff options
Diffstat (limited to 'forth/core.fs')
| -rw-r--r-- | forth/core.fs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/forth/core.fs b/forth/core.fs index 4216574..1a1cc4d 100644 --- a/forth/core.fs +++ b/forth/core.fs @@ -202,12 +202,16 @@ defcore apply { argv argc -- val } more-args MalList/start @ final-argv list0len cells + final-argc list0len - cells cmove final-argv final-argc argv @ invoke ;; +defcore throw ( argv argc -- ) + drop @ to exception-object + 1 throw ;; defcore map? drop @ mal-type @ MalMap = mal-bool ;; defcore list? drop @ mal-type @ MalList = mal-bool ;; defcore vector? drop @ mal-type @ MalVector = mal-bool ;; defcore keyword? drop @ mal-type @ MalKeyword = mal-bool ;; defcore symbol? drop @ mal-type @ MalSymbol = mal-bool ;; +defcore atom? drop @ mal-type @ Atom = mal-bool ;; defcore true? drop @ mal-true = mal-bool ;; defcore false? drop @ mal-false = mal-bool ;; defcore nil? drop @ mal-nil = mal-bool ;; @@ -215,4 +219,6 @@ defcore nil? drop @ mal-nil = mal-bool ;; defcore sequential? drop @ sequential? ;; defcore keyword drop @ unpack-str MalKeyword. ;; -defcore symbol drop @ unpack-str MalSymbol. ;;
\ No newline at end of file +defcore symbol drop @ unpack-str MalSymbol. ;; + +defcore time-ms 2drop utime d>s 1000 / MalInt. ;; |
