33 lines
629 B
Go
33 lines
629 B
Go
// Clyx programming language interpreter, Go implementation wrapper
|
|||
|
|
// Created by Luxferre in 2026, released into the public domain
|
||
|
|
|
||
|
|
package main
|
||
|
|
|
||
|
|
import (
|
||
|
|
_ "embed"
|
||
|
|
"fmt"
|
||
|
|
"os"
|
||
|
|
|
||
|
|
clyx "codeberg.org/luxferre/clyx/clyx-go"
|
||
|
|
)
|
||
|
|
|
||
|
|
//go:embed lib.clx
|
||
|
|
var defaultLibCode string
|
||
|
|
|
||
|
|
//go:embed clyx_repl.clx
|
||
|
|
var defaultReplCode string
|
||
|
|
|
||
|
|
func main() {
|
||
|
|
if len(os.Args) > 1 {
|
||
|
|
clyx.RunFile(os.Args[1], defaultLibCode)
|
||
|
|
} else {
|
||
|
|
defer func() {
|
||
|
|
if r := recover(); r != nil {
|
||
|
|
fmt.Fprintf(os.Stderr, "Error: %v\n", r)
|
||
|
|
os.Exit(1)
|
||
|
|
}
|
||
|
|
}()
|
||
|
|
clyx.NewClyx("", defaultLibCode).Run(defaultReplCode)
|
||
|
|
}
|
||
|
|
}
|