Funk is a project of writing a kernel in OCaml. It could then be used as an educational tool for teaching OS design, for instance, or may be just replace Linux before Hurd goes out.
The project uses the power of a high-level programming language, with GC, static type checking, polymorphisms and other features, to abstract the OS designer from low-level problems that can arise when using C. It currently includes a running monolithic kernel, with some drivers and a console, a dummy-libc that is used for linking, and is in the process of being completely rewritten to have a nice micro-kernel architecture.
The project is hosted by gna. Interested people can checkout the svn or download the daily snapshot... until we make the first official release.
Some documentation we used for our project.