a Funge-98 interpreter written in go
Find a file
2025-03-08 15:08:43 +01:00
.github Added github's dependabot 2023-08-25 23:23:13 +02:00
cmd/gofunge98 Renamed headless_interpreter to gofunge98 2021-12-03 23:28:12 +01:00
mycology@2e405a62a3 Bumped the mycology test suite to the last version 2024-01-29 23:24:41 +01:00
pkg Added documentation comment 2021-12-04 00:10:30 +01:00
spec@7b4330df1a Made the interpreter pass most of the mycology test suite 2021-09-24 01:26:49 +02:00
.gitmodules Made the interpreter pass most of the mycology test suite 2021-09-24 01:26:49 +02:00
go.mod chore(deps): update dependencies 2025-03-08 15:08:43 +01:00
go.sum chore(deps): updated dependencies 2025-02-01 23:54:23 +01:00
LICENSE Initial import 2021-09-14 00:16:05 +02:00
README.md chore(deps): updated dependencies 2024-03-08 00:50:21 +01:00

GoFunge98 : a Funge-98 interpreter written in go

This repository contains code for a go program that can interpret a valid Funge-98 program. It passes the mycology test suite.

Current limitations are :

  • currently does not implement any fingerprints
  • does not implement concurrent execution with the t command
  • does not implement file I/O with the i and o commands
  • does not implement system execution with the = command

Contents

Dependencies

go is required. Only go version >= 1.22.1 on linux amd64 (Gentoo) is being regularly tested.

Quick Install

go install git.adyxax.org/adyxax/gofunge98/cmd/gofunge98@latest

Usage

Launching the gofunge98 is as simple as :

gofunge98 -f something.b98

The interpreter will then load and execute the specified Funge-98 program until the program normally terminates or is interrupted or killed.

Building

To run tests, use :

go test -cover ./...

For a debug build, use :

go build ./cmd/gofunge98/

For a release build, use :

go build -ldflags '-s -w -extldflags "-static"' ./cmd/gofunge98/