The Hurd kernel consists of a microkernel that provides basic kernel services and a collection (or "herd") of servers / daemons that provided services that are beyond basic. This design was meant to provide developers with freedom that Unix and other Unix-like operating systems did not. For example, this design allows developers to program servers in languages other than the one used by the kernel. GNU Mach currently is the microkernel being used in the Hurd.