The Ciao Prolog system
Ciao is a modern Prolog
implementation that builds up from a logic-based simple kernel designed to be portable, extensible, and modular. It features:
- constraint logic programming and, in particular, Prolog, supporting the ISO-Prolog standard,
- multiparadigm programming (meta-programming, higher-order, concurrency, functions, etc.)
- user packages for syntactic and semantic language extensions, and interface with foreign code,
- modules and bundles for large scale development, and assertions for unified static and dynamic verification.
Ciao can install natively in your operating system or run in the browser without installation.
% Edit me!
% Code is loaded on the fly.
% Then type a query on the right,
% ?- app(X,Y,[1,2,3]).
The system implements some advanced features
such as separate and incremental compilation, global program analysis and static debugging and optimization (via source to source program transformation, CiaoPP preprocessor
), a build automation
system, LPdoc documentation generator
, debugger, and integrated development environment