# OCaml

### square root

```
(* square root function with fixed boundary *)
let sqroot x =
let rec sqr r x =
if abs_float ((r *. r) -. x) < 0.01 then r
else sqr (((x /. r) +. r) /. 2.0) x
in
sqr 1.0 x
```

### open source software

I contributed significantly to these projects:

- ocamlgraph, a graph library (fixpoint, leaderlist and contraction modules)
- ocaml-promela, library and tools to work with PROMELA, the specification language of the spin model checker (co-author)
- ocaml-mqueue, POSIX messages queue bindings (author)
- boolean expression simplifier, library and command line tool to simplify boolean expressions (maintainer)
- ocaml-stdint, fixed width integer types, limits and functions (co-author)