[All bundles]

core_OC

Version: 1.19.0
Manuals: core_OC
Source: repository
Used by: core_OCjs

Optimizing Ciao Compiler (OptimComp)

OptimComp is the experimental branch of the Ciao compiler and engine that implements the techniques described in:

This is an experimental (low-level) optimizing Ciao compiler, including compilation to C and a custom abstract machine generation from the ImProlog dialect.

Please consult the manual in this bundle for more details on usage, development and status.

Quick start

OptimComp can be compiled from the Ciao Builder as follows:

$ ciao oc:build
OptimComp does out-of-tree builds. Compilation files and binaries are stored at <CIAOROOT>/build/oc-cache.

Examples:

  • Run and compile hw (standalone)
ciao oc:comp --bootstrap hw hw && ciao oc:car-build hw.car
hw.car/run
  • Run and compile hw (dynamic executable)
ciao oc:comp --dynexec hw hw
./hw

OptimComp test suite

You may use the oc:tests command to test your build. E.g.,:
$ ciao oc:tests full