• en

Development Tools

Under Construction

Editor modes

Emacs

vi

Acme

Acme is a minimalistic text editor from plan9. While there are no language-specific features to the editor, there are a few tricks one can use to make it friendlier:

Plumbing

To allow plumbing of OCaml error messages, add the following to your plumbing rules:

# type is text
  data matches 'File "([.a-zA-Z¡-<U+FFFF>0-9_/\-]*[a-zA-Z¡-<U+FFFF>0-9_/\-])", line ([0-9]+), characters ([0-9]+)-([0-9]+):'
  arg isfile      $1
  data set        $file
  attr add        addr=$2-#0+#$3,$2-#0+#$4
  plumb to edit
  plumb client $editor;;
Error: Syntax error

OCaml top-level

Simply execute win to get a shell and run ocaml from within this shell.

Commenting

The following Edit command will comment your selection.

# Edit .{i/(*
  a/*)
  };;
Error: Syntax error: '}' expected Line 1, characters 6-7: This '{' might be unmatched

Indenting

You can pipe your selection (or the whole file) through an external indenter such as ocp-indent middle-clicking on the command |ocp-indent.

Compilation tools

Findlib/ocamlfind

ocamlfind is pkg-config for OCaml.

ocamlbuild

oasis

OCamlMakefile

OMake

OMake is a build system designed for scalability and portability. It uses a syntax similar to make utilities you may have used, but it features many additional enhancements.

See the guide.

Distributing libraries

Debugging

Debugging facilities are described here.