Scroll to navigation

ELPI(1) User Commands ELPI(1)

NAME

elpi - embeddable lambda-Prolog interpreter

SYNOPSIS

elpi [OPTION].. [FILE].. [-- ARGS..]

DESCRIPTION

Main options:

-test runs the query "main"

runs the query "pred ARGS"
Define variable (conditional compilation)

-document-builtins Print documentation for built-in predicates

-no-tc don't typecheck the program

compatibility)

-version prints the version of Elpi

Parsing options:

search for accumulated files in PATH

Tracing options:

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
ignore trace items matching REX
trace only items matching REX
trace only when the current predicate matches REX
Format max_boxes set to NUM
Format margin set to NUM
Collect statistics
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

October 2021 elpi 1.13.7