Fil-C on Nix

Filnix wiki

mbrock/filnix

packages/sarcasm-prolog.nix

λpkgs, filcc, trealla
pkgs.writeShellApplication
7name=
"sarcasm-prolog"
8runtimeInputs=
pkgs.coreutils
9text=
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 -
22meta=
23description=

Experimental Prolog assembly frontend with Fil-C lowering

24mainProgram=
"sarcasm-prolog"
25platforms=
"x86_64-linux" "aarch64-linux"