packages/sarcasm-prolog.nix
λpkgs, filcc, trealla
pkgs.writeShellApplication
for arg in "$@"; do
case "$arg" in
--emit-c|--emit-ir|--emit-effects|--explain|--emit-checks|--help|-h)
exec ${trealla}/bin/tpl -q -f ${../experiments/sarcasm-prolog}/main.pl -- "$@"
;;
esac
done
work=$(mktemp -d)
trap 'rm -rf "$work"' EXIT
${trealla}/bin/tpl -q -f ${../experiments/sarcasm-prolog}/main.pl -- "$@" > "$work/output.c"
${filcc}/bin/clang -O2 -fno-addrsig -S -x c "$work/output.c" -o -