wip restructuring

This commit is contained in:
2026-06-05 13:36:01 -07:00
parent f04b7311f5
commit f79403b97f
55 changed files with 29 additions and 85 deletions
+8 -2
View File
@@ -3,13 +3,19 @@
- architecture needs more careful thought but only after something - architecture needs more careful thought but only after something
works works
- too fuzzy right now - too fuzzy right now
- ytree with tokens
- dialyze
- makefile
- consolidate
# TODONE
- undo gs_ naming fuckery.. everything is `gsc_*`. it's just - undo gs_ naming fuckery.. everything is `gsc_*`. it's just
needlessly confusing. for now let's name new things gsc_* and then needlessly confusing. for now let's name new things gsc_* and then
go back and undo the stupidity go back and undo the stupidity
# TONOTDO # TODONT
- barf for outputs, slurp for inputs - barf for outputs, slurp for inputs
- rename parser layers sequentially - rename parser layers sequentially
# TODONE
+4
View File
@@ -0,0 +1,4 @@
all:
clean:
rm
-30
View File
@@ -1,30 +0,0 @@
# gsc = gajumaru sophia compiler
**This is _NOT_ the official Sophia compiler.** If you're looking for
that see https://git.qpq.swiss/QPQ-AG/sophia
This is an incomplete prototype rewrite of the legacy (official)
sophia compiler in straightforward Erlang. It grew out of my (Peter
Harpending) own efforts to document the language and its relationship
to FATE (the gajumaru virtual machine).
The goal for version 0.1 is to mirror the success behavior of the
legacy sophia compiler.
# Setup
```
git clone https://git.qpq.swiss/QPQ-AG/gsc.git
```
Add the following to `~/.bashrc` or wheremstever:
```
export PATH=$PATH:/path/to/gsc/bin
```
To test run
```
gsc --help
```
+14 -10
View File
@@ -2,10 +2,10 @@
# Bash harness for GSC command line tool # Bash harness for GSC command line tool
# #
# based on similar harness for sfp
#
# gsc foo bar baz # gsc foo bar baz
# -> zx rundir \ # -> zx rundir /home/pharpend/src/ioecs/gsc \
# /home/pharpend/src/ioecs/gsc/cli \
# --libs=gsc:/home/pharpend/src/ioecs/gsc \
# foo bar baz # foo bar baz
zx_exists() { zx_exists() {
@@ -27,8 +27,12 @@ fi
FP_THIS_FILE=$(readlink -f "${BASH_SOURCE[0]}") FP_THIS_FILE=$(readlink -f "${BASH_SOURCE[0]}")
FP_THIS_DIR=$(dirname -- "${FP_THIS_FILE}") FP_THIS_DIR=$(dirname -- "${FP_THIS_FILE}")
FP_PRJ_DIR=$(dirname -- "${FP_THIS_DIR}") FP_PRJ_DIR=$(dirname -- "${FP_THIS_DIR}")
FP_CLI_DIR="${FP_PRJ_DIR}/cli"
# simplified
zx rundir $FP_PRJ_DIR
# commented out legacy code in case need it later:
# # compute libs string # # compute libs string
# LIB_PARTS=() # LIB_PARTS=()
# for depname in "${LOCAL_DEPS[@]}"; do # for depname in "${LOCAL_DEPS[@]}"; do
@@ -37,9 +41,9 @@ FP_CLI_DIR="${FP_PRJ_DIR}/cli"
# IFS=, # IFS=,
# LOCAL_LIBS="${LIB_PARTS[*]}" # LOCAL_LIBS="${LIB_PARTS[*]}"
# unset IFS # unset IFS
#
LOCAL_LIBS="gsc:${FP_PRJ_DIR}" #LOCAL_LIBS=""
#
#echo "zx rundir $FP_CLI_DIR --libs=$LOCAL_LIBS $@" ##echo "zx rundir $FP_CLI_DIR --libs=$LOCAL_LIBS $@"
#
zx rundir $FP_CLI_DIR --libs=$LOCAL_LIBS $@ ##zx rundir $FP_CLI_DIR --libs=$LOCAL_LIBS $@
-15
View File
@@ -1,15 +0,0 @@
.eunit
deps
*.o
*.beam
*.plt
*.swp
erl_crash.dump
ebin/*.beam
doc/*.html
doc/*.css
doc/edoc-info
doc/erlang.png
rel/example_project
.concrete/DEV_MODE
.rebar
-1
View File
@@ -1 +0,0 @@
{"src/*", [debug_info, {i, "include/"}, {outdir, "ebin/"}]}.
-7
View File
@@ -1,7 +0,0 @@
{application,gsc_cli,
[{description,"GSC CLI and test suite"},
{registered,[]},
{included_applications,[]},
{applications,[stdlib,kernel]},
{vsn,"0.1.0"},
{modules,[gsc_cli]}]}.
-18
View File
@@ -1,18 +0,0 @@
{name,"GSC CLI"}.
{type,cli}.
{modules,[]}.
{mod,"gsc_cli"}.
{author,"Peter Harpending"}.
{prefix,none}.
{desc,"GSC CLI and test suite"}.
{package_id,{"otpr","gsc_cli",{0,1,0}}}.
{deps,[{"otpr","sophia",{9,0,0}},{"otpr","gsc",{0,1,0}}]}.
{key_name,none}.
{a_email,"peterharpending@qpq.swiss"}.
{c_email,"peterharpending@qpq.swiss"}.
{copyright,"Peter Harpending"}.
{file_exts,[]}.
{license,"GPL-3.0-only"}.
{repo_url,[]}.
{tags,[]}.
{ws_url,[]}.
View File
View File
+3 -2
View File
@@ -1,15 +1,16 @@
{name,"Gajumaru Sophia Compiler"}. {name,"Gajumaru Sophia Compiler"}.
{type,lib}. {type,lib}.
{modules,[]}. {modules,[]}.
{mod, "gsc_cli"}
{author,"Peter Harpending"}. {author,"Peter Harpending"}.
{prefix,"gs"}. {prefix,"gsc"}.
{desc,"Exploratory sophia compiler rewrite"}. {desc,"Exploratory sophia compiler rewrite"}.
{package_id,{"otpr","gsc",{0,1,0}}}. {package_id,{"otpr","gsc",{0,1,0}}}.
{deps,[]}. {deps,[]}.
{key_name,none}. {key_name,none}.
{a_email,"peterharpending@qpq.swiss"}. {a_email,"peterharpending@qpq.swiss"}.
{c_email,"peterharpending@qpq.swiss"}. {c_email,"peterharpending@qpq.swiss"}.
{copyright,"Peter Harpending"}. {copyright,"2026 QPQ AG"}.
{file_exts,[]}. {file_exts,[]}.
{license,"GPL-3.0-only"}. {license,"GPL-3.0-only"}.
{repo_url,"https://git.qpq.swiss/QPQ-AG/gsc"}. {repo_url,"https://git.qpq.swiss/QPQ-AG/gsc"}.