elpi1
Embeddable lambda-prolog interpreter
Usage
elpi [OPTION]
..
[FILE]
..
[--
ARGS..]
Overview
Main options:
-test runs the query "main"
-
-exec pred -
runs the query "pred ARGS"
-
-D var -
Define variable (conditional compilation)
-document-builtins Print documentation for built-in predicates
-no-tc don't typecheck the program
-delay-problems-outside-pattern-fragment(deprecated, for Teyjus-
compatibility)
-version prints the version of Elpi
Parsing options:
-
-I PATH -
search for accumulated files in PATH
Tracing options:
-trace-atFNAME START STOP-
print trace between call START
-
and STOP of function FNAME (FNAME can be omitted, default is run)
-trace-on KIND FILE enable trace printing.
-
KIND is tty or json (default is tty). FILE is stdout or stderr (default) or host:port or /path or ./path
-
-trace-skip REX -
ignore trace items matching REX
-
-trace-only REX -
trace only items matching REX
-
-trace-only-pred REX -
trace only when the current predicate matches REX
-
-trace-tty-maxbox NUM -
Format max_boxes set to NUM
-
-trace-tty-maxcols NUM -
Format margin set to NUM
-
-stats-on -
Collect statistics
-
-perf-on -
Disable trace output, but keep perf
Tracing options can be used to debug your programs and the Elpi interpreter.
Tracing points for the user are prefixed with 'user:' while the ones for the Elpi developer with 'dev:'.
A sensible set of options to debug your programs is: -trace-on -trace-at 1 9999 -trace-only '\(run\|select\|user:\)'
Debug options (for debugging Elpi, not your program):
-print-accumulated-files prints files loaded via accumulate
-print-ast prints files as parsed, then exit
-print prints files after most compilation passes, then exit
-print-passes prints intermediate data during compilation, then exit
-print-units prints compilation units data, then exit