TODO Resume work and make it work again! Can build itself.
TODO Can use rc/mk on principia and build and syncweb as well Editor.nw (efuns), Codemap.nw
TODO Renamed module to capitalized form (Common.ml), like in Semgrep (thx Martin)
Logging using poor’s man Logs.ml
TODO Testing library using Testo? (only built and run on 4.14.0)
TODO Switch from Common.filename to (our poor’s man) Fpath.t
TODO started to use Nix to define the development environment for Xix.
TODO? switch to precommit and ocamlformat?
TODO more semgrep rules (forbid functors, labels, etc.)
TODO compile again for ocaml light (my own fork of caml-special-light 1.07)
Started to use stdcompat for backward compatibility with old versions of OCaml.
Github actions (GHA) checks to make sure xix compiles. At least it compiles with 3.10.0 (thx to stdcompat), 4.04.0, 4.14.0, and even 5.1.0!
First semgrep checks in semgrep.jsonnet :) and semgrep GHA workflow.
Some basic tests (also enforced in GHA) in test.sh
internals: use of merlin (mk .merlin) via Efuns
(work on syncweb -web_to_tex and code indexing)
diff3.ml simpler diff_myers.ml
port of dulwich and ocaml-git, 2 clones of git, to ocaml(light).
Simplify code in ocaml-git by not using functors/lwt/mstruct/… and complete with new code derived from dulwich (clone of git in python) or from entirely new code for the features not implemented by dulwich.
port of rio using ocaml threads but relying on the original plan9 kernel. basic terminal emulator.
port of libdraw, the userspace part, again relying on the original plan9 kernel (draw/, geometry/, input/, and basic ui/ for menus)
binding to plan9 mount/bind and port of 9P protocol to ocaml (for rio) (lib_system/)
import stdlib and organize better lib_core/ (collections/, string/, etc).
port more of the kernel C code to ocaml (core DS, concurrency, memory, process, interrupts, virtual memory, scheduling, and timing chapters).
started lib_core/
minimal C kernel for Raspberry Pi (boot, malloc, libc, print) by selecting subset of 9/bcm/ and 9/port in plan9
minimal ocaml hello world linked in kernel by linking the byterun interpreter from ocaml light 1.07 to the minimal C kernel (incorporate more libc)
finish cpp finish first port of 5c (typechecker and basic code generator)
port of mk port of rc port of 5c (just parser and dumper) port of cpp
start of repository, mkfiles, skeleton
port of 5l finish 5a
port of 5a import of yacc that I ported in may 2015 import of lex from OCaml. import of lib_parsing/ from the modifications I made to lex and yacc.