
The Murgia Hack System - ingve
http://mhsys.org/notes/
======
agumonkey

        As opposed to other kernels and microkernels – probably –, 
        MH is based on a completely random ideology, picked arbitrarily, 
        in a Cambridge pub, after evidently too many beers.
      
        Unimpressed by the lack of shape in modern software, some day in 2014
        I thought that it would be really cool to build a system made of 
        tangible abstractions. A system described in terms of objects that can 
        be very easily understood would be – I decided – very pleasant to play 
        with, and to use as a base for complex systems!
    

Fun and quite Kay-ish

------
yjftsjthsd-h
Main website: [http://mhsys.org/index.html](http://mhsys.org/index.html)

Source code: [https://github.com/mhsys/mh](https://github.com/mhsys/mh)

"MH is free software" and there's a link to GNU, but I don't see an actual
license anywhere.

"it is possible to use NetBSD drivers, filesystem and other code in userspace
to driver real hardware, it has a complete libc in userspace, Newlib, and has
a really useful native runtime system, libmrg" \- _that_ is promising, even
though there are notes about this still being early / not useful, etc.

~~~
alexforster
There's an open Github issue where the author clarifies that his own code is
BSD, and he puts the license of each file in its header.

~~~
beefhash
Convenience link to said issue:
[https://github.com/glguida/mh/issues/1](https://github.com/glguida/mh/issues/1)

~~~
yjftsjthsd-h
Oh, weird that there are 2 repos. The one I linked doesn't have issues enabled
(I looked there first).

~~~
glguida
Yes, I planned to move and continue development to mhsys.org after I needed to
have multiple repositories. Having said this, I have a few outstanding patches
that fix the tool chain building — a change got lost in the split.

Thank you for your interest btw; this was completely unexpected and a rather
pleasant surprise!

Development is currently stalled mostly for personal reasons, but I am more
than available to help and answer questions to anyone interested in it.

~~~
saverio-murgia
Question 1: where does the name come from?

~~~
mncharity
"murgia, the hills where I grew up (Apulia, Italy)"
[https://www.youtube.com/watch?v=K1lbWtiTw4o&t=2m24s](https://www.youtube.com/watch?v=K1lbWtiTw4o&t=2m24s)

------
emersonrsantos
It can be an interesting evolution of Unix "everything is a file". This
potentially simplifies everything - threading, signals, pipes, asyncronous
I/O.

I have the impression that Microsoft tried to do everything is a device in
post-NT systems but I can't remember the details.

------
espeed
> Everything is a device!

There Are No Things. [0] ... only actions and properties. _Everything is an
actor_ [1].

In his Turing lecture, Robin Milner wrote [2]:

    
    
      Now, the pure lambda-calculus is built with just two 
      kinds of thing: terms and variables. Can we achieve 
      the same economy for a process calculus? Carl Hewitt, 
      with his Actors model, responded to this challenge 
      long ago; he declared that a value, an operator on 
      values, and a process should all be the same kind of 
      thing: an Actor.
    
      This goal impressed me, because it implies the 
      homogeneity and completeness of expression ... But it 
      was long before I could see how to attain the goal in 
      terms of an algebraic calculus...
    
      So, in the spirit of Hewitt, our first step is to 
      demand that all things denoted by terms or accessed by 
      names--values, registers, operators, processes, 
      objects--are all of the same kind of thing; they 
      should all be processes.
    

And now today Hewitt's elusive _true_ mythical Actor model may have finally
been realized and embodied in a language called Pony [3].

[0] [https://www.edge.org/response-
detail/11514](https://www.edge.org/response-detail/11514)

[1]
[https://en.wikipedia.org/wiki/Actor_model#Fundamental_concep...](https://en.wikipedia.org/wiki/Actor_model#Fundamental_concepts)

[2]
[https://en.wikipedia.org/wiki/Actor_model#Theory](https://en.wikipedia.org/wiki/Actor_model#Theory)

[3] [https://github.com/ponylang/ponyc](https://github.com/ponylang/ponyc)

------
rasjani
Reminds me of QNXx

