1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- package muesli
- import "fmt"
- func printf(vm *VM, args ...Value) ListValue {
- var form string
- var rest = args[1:len(args)]
- resri := ListFromList(rest)
- err := From(args[0], &form)
- if err != nil {
- fmt.Printf("Error: %s\n", err.Error())
- } else {
- fmt.Printf(form, resri...)
- }
- return NewListValue()
- }
- func println(vm *VM, args ...Value) ListValue {
- var msg string
- // resri := ListFromList(rest)
- err := From(args[0], &msg)
- if err != nil {
- fmt.Printf("Error: %s\n", err.Error())
- }
- fmt.Println(msg)
- return NewListValue()
- }
- func p(vm *VM, args ...Value) ListValue {
- argi := ListFromList(args)
- fmt.Println(argi...)
- for _, arg := range args {
- fmt.Printf("%v\n", arg)
- }
- return NewListValue()
- }
- func (vm *VM) RegisterBuiltins() {
- vm.RegisterBuiltin("p", p)
- vm.RegisterBuiltin("prinln", println)
- vm.RegisterBuiltin("printf", printf)
- }
|