v0.3.3: is lib word, UTF–8 string support
This commit is contained in:
+1
-1
@@ -396,7 +396,7 @@ func NewClyx(libfname string, libCode string) *Clyx {
|
||||
c.words["type"] = func() { c.cmdType() }
|
||||
c.words["next"] = func() { c.stack = append(c.stack, c.popCallerToken()) }
|
||||
c.words["."] = func() { printVal(c.pop()) }
|
||||
c.words["emit"] = func() { fmt.Printf("%c", rune(toInt(c.pop()))) }
|
||||
c.words["emit"] = func() { os.Stdout.Write([]byte{byte(toInt(c.pop()))}) }
|
||||
c.words["fopen"] = func() {
|
||||
mode, fileVal := c.pop().(string), c.pop()
|
||||
isStdin := false
|
||||
|
||||
@@ -47,7 +47,7 @@ class Clyx:
|
||||
def default_in():
|
||||
try: return input()
|
||||
except: return 'exit'
|
||||
self._in_str, self._out_num, self._out_char = in_str or default_in, out_num or (lambda v: (sys.stdout.write(str(v)+'\n'), getattr(sys.stdout, 'flush', lambda: None)())), out_char or (lambda v: (sys.stdout.write(chr(int(v))), getattr(sys.stdout, 'flush', lambda: None)()))
|
||||
self._in_str, self._out_num, self._out_char = in_str or default_in, out_num or (lambda v: (sys.stdout.write(str(v)+'\n'), getattr(sys.stdout, 'flush', lambda: None)())), out_char or (lambda v: (sys.stdout.buffer.write(bytes([int(v)])) if hasattr(sys.stdout, 'buffer') else sys.stdout.write(chr(int(v))), getattr(sys.stdout, 'flush', lambda: None)()))
|
||||
self._stack, self._tokens, self._token_streams = [], [], []
|
||||
self._words = {
|
||||
'dup': lambda: self._stack.append(self._stack[-1]), 'drop': lambda: self._stack.pop(), 'swap': lambda: self._stack.extend([self._stack.pop(), self._stack.pop()]), 'i': lambda: self._eval(self._stack.pop()),
|
||||
|
||||
Reference in New Issue
Block a user