pkg(brachylog-1.0.0): added brachylog

This commit is contained in:
Hydrazer 2021-11-28 07:03:57 -07:00
parent e95d386697
commit 8d32385b41
7 changed files with 52 additions and 1 deletions

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`,
`bash`,
`befunge93`,
`brachylog`,
`brainfuck`,
`c`,
`c++`,