about summary refs log tree commit diff
path: root/pkg/lang/vm/exec.go
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/lang/vm/exec.go')
-rw-r--r--pkg/lang/vm/exec.go13
1 files changed, 13 insertions, 0 deletions
diff --git a/pkg/lang/vm/exec.go b/pkg/lang/vm/exec.go
index bd4cdf5..10ac604 100644
--- a/pkg/lang/vm/exec.go
+++ b/pkg/lang/vm/exec.go
@@ -447,6 +447,19 @@ func (vm *VM) execCall() error {
 		return err
 	}
 
+	if fn.Native() != nil {
+		// TODO: Arguments
+		val, err := fn.Native()([]value.Value{})
+		if err != nil {
+			return err
+		}
+
+		if !val.IsEmpty() {
+			vm.stack.Push(val)
+		}
+
+		return nil
+	}
 	vm.pc = fn.Pc()
 
 	return nil