Compare commits

..

3 Commits

Author SHA1 Message Date
Thomas Hobson 104b80df5c
Merge pull request #407 from Hydrazer/brachylog
pkg(brachylog-1.0.0)
2021-12-07 16:27:44 +13:00
Thomas Hobson d2ca0ca18e
Merge branch 'master' into brachylog 2021-12-07 16:20:33 +13:00
Hydrazer 8d32385b41 pkg(brachylog-1.0.0): added brachylog 2021-11-28 07:03:57 -07:00
7 changed files with 52 additions and 1 deletions

2
package-lock.json generated
View File

@ -29,4 +29,4 @@
"dev": true "dev": true
} }
} }
} }

20
packages/brachylog/1.0.0/build.sh vendored Normal file
View File

@ -0,0 +1,20 @@
#!/usr/bin/env bash
# build prolog 8.2.4 as dependency
source ../../prolog/8.2.4/build.sh
# curl brachylog 1.0.0
curl -L "https://github.com/JCumin/Brachylog/archive/refs/tags/v1.0-ascii.tar.gz" -o brachylog.tar.gz
tar xzf brachylog.tar.gz --strip-components=1
rm brachylog.tar.gz
# move swi prolog to working directory
cp bin/swipl swipl
# give execution permission to swipl
chmod +x swipl
# add some code the branchylog.pl so we don't have to escape backslashes while using the interactive mode
echo '
:-feature(argv, [Code, Stdin]), run_from_atom(Code, Stdin, _), halt.' >> prolog_parser/brachylog.pl

5
packages/brachylog/1.0.0/environment vendored Normal file
View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
# Put 'export' statements here for environment variables
export PATH=$PWD/bin:$PATH
export BRACHYLOG_PATH=$PWD

View File

@ -0,0 +1,5 @@
{
"language": "brachylog",
"version": "1.0.0",
"aliases": []
}

19
packages/brachylog/1.0.0/run vendored Normal file
View File

@ -0,0 +1,19 @@
#!/usr/bin/env bash
# save the file for later
file="$1"
# remove the file from $@
shift
# save stdin as $@ joined by newlines
stdin=`printf "%s\n" "$@"`
# save code as the contents of $file
code=`cat "$file"`
# go to the directory where brachylog.pl is so the imports work
cd "$BRACHYLOG_PATH"/prolog_parser
# run swi prolog with code and stdin
swipl -f brachylog.pl "$code" "$stdin"

View File

@ -0,0 +1 @@
"OK"w

View File

@ -325,6 +325,7 @@ Content-Type: application/json
`awk`, `awk`,
`bash`, `bash`,
`befunge93`, `befunge93`,
`brachylog`,
`brainfuck`, `brainfuck`,
`c`, `c`,
`c++`, `c++`,