Slightly better error-handling in Forbble
This commit is contained in:
parent
b222df047d
commit
ce28c84696
|
@ -109,13 +109,15 @@
|
|||
(if (= ":" _x) ( ; Compile a phrase into the next symbol
|
||||
(def var (at 1 list)) ; Collect the symbol to define, as a string
|
||||
(defe var (+ "_" var)) ; Add an underscore for the internal storage
|
||||
(defe (+ "_" var) ()) ; Define internally as an empty list
|
||||
(defe (+ "_" var) ()) ; Define _func internally as an empty list
|
||||
(def list (compile ; Overwrite list with output of (compile)
|
||||
(rest (rest list)) ; Current list, not including ':' or the symbol
|
||||
(+ "_" var)))) ; The internal variable name
|
||||
( ; If none of the above hit, try to interpret as a compiled symbol
|
||||
(if (iserr _x) (prnl _x) (
|
||||
(def _e (eval _x))
|
||||
(if (iserr (len _e)) () (feval _e))
|
||||
))
|
||||
)
|
||||
))))))))))))
|
||||
; A switch/case operator might be good, to avoid huge closing-paren chains
|
||||
|
|
Loading…
Reference in New Issue