Live data from Hacker News

Mezzano – An operating system written in Common Lisp

github.com

51–60 of 65 posts

Re: Mezzano – An operating system written in Common Lisp

#51
post #45
post #21

Earlier quoted context omitted.

Well, if you're running on a typical processor than any process can use pointer arithmetic to access memory, so you still need some sort of low-level memory protection mechanism. On some hypothetical Lisp/high-level-language processor, that needn't be the case, of course, but I honestly don't think we'll ever see something like that again.

> I honestly don't think we'll ever see something like that again. Why?

Probably fragility and security issues in that type of system.

Re: Mezzano – An operating system written in Common Lisp

#52

Very impressive. Since the demise Lisp machines, there have been several attempts at developing a Lisp-based operating system which didn't deliver anything: LispOS, Tunes, and Loper; and one successful attempt at getting Lisp to run on the bare metal: Movitz. Lisp was its own operating system on the original Lisp machines developed at MIT, and this evolved into Genera at Symbolics. Is this the case here? I notice tha…

I think files have proven themselves to be a useful abstraction in enough use cases across enough device form-factors to be worth backporting into whatever your idea of an ideal lisp machine might be. You could, with a non-trivial amount of effort, replicate the file-like conveniences of global tagging and sorting and organizing of all the objects in your image. You could, also with a non-trivial amount of effort, wo…

You can do the same with objects. Difference is the semantics is more flexible with an implementation that can be as simple or complex as you want. INFOSEC research used this to advantage where things like PSOS built files on top of simpler store and things like DASD could build in analysis or encryption at disk/object level.

Re: Mezzano – An operating system written in Common Lisp

#53
post #45

Earlier quoted context omitted.

> I honestly don't think we'll ever see something like that again. Why?

Probably fragility and security issues in that type of system.

One of earlier works combining high-security and functional programming was a security kernel for Scheme48:

http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.37.4...

http://mumble.net/~jar/pubs/secureos/

That was the Scheme mathematically-verified in VLISP project:

https://en.wikipedia.org/wiki/PreScheme

There was also a mathematically-verified, Scheme CPU:

http://www.cs.indiana.edu/pub/techreports/TR544.pdf

I imagine combining even these three components into an integrated systems would provide a lot more security and availability than the average desktop. The simplicity of the CPU might also aid in producing a NonStop-like solution for five 9's availability.

Re: Mezzano – An operating system written in Common Lisp

#54

Earlier quoted context omitted.

From what I can tell looking at the code, Mezzano doesn't have processes, just threads. There's no distinction between the kernel and user-space. Whilst convenient, it isn't an unqualified good. Bugs in any part of the system have the potential to catastrophically break everything. It's also terrible for security. |Without the notion of a distinct kernel - or "unsafe" code that only privileged users can compile or lo…

> It's also terrible for security. The security angle is interesting. The thing about independent processes is that we're relying on the OS to provide a wall around each process to limit it's impact by default . Maybe a better approach would to be include something like chroot/containerization for execution of closures within the language ? Ie, if program 'A' receives data from program 'B', it can evaluate that data…

Relevant links here:

https://news.ycombinator.com/item?id=12362583

Re: Mezzano – An operating system written in Common Lisp

#56

Earlier quoted context omitted.

Well, the main issue would be it requires a specific network card to talk to its file server.

Ah, missed that. Yep. I think USB, etc. are standard enough, so that should be it. With Intel motherboard, and Intel integrated networking, it could probably run in my machine. Wait. Graphics. %$&#!.

Depends on how graphics are implemented, right? Even a modern graphics card has some kind of support for older standards like plain VGA and VESA video modes, it seems like.

Re: Mezzano – An operating system written in Common Lisp

#57

Earlier quoted context omitted.

I think files have proven themselves to be a useful abstraction in enough use cases across enough device form-factors to be worth backporting into whatever your idea of an ideal lisp machine might be. You could, with a non-trivial amount of effort, replicate the file-like conveniences of global tagging and sorting and organizing of all the objects in your image. You could, also with a non-trivial amount of effort, wo…

> I think files have proven themselves You will need to store data which doesn't fit into RAM in secondary storage. But that doesn't mean you need a file system or even files. > to be a useful abstraction Files are a necessary evil in non-image based systems because you need to store data somewhere when the programs using them aren't running. As the different objects they contain, such as plain text, hypertext, photo…

I think files are pretty cool because they're loosely coupled with programs. I.e. you can open and edit text or audio files in whatever you like, and even highly-specific binary formats like .doc or .psd have various levels of support in 3rd-party tools. This serves a very useful purpose of ensuring your data is truly yours, and will outlive the program in which it was created. This is a place where IMO we're taking a huge step backwards now, with increasing amount of work being done in the cloud and mobile ecosystems - both shed the concept of files for some amorphous database entries somewhere, thus taking away your control over your data.

Can you preserve this flexibility/loose-coupling feature in image-based storage? I don't know. I'd be interested to learn if it can be done so.

Re: Mezzano – An operating system written in Common Lisp

#58

Very impressive. Since the demise Lisp machines, there have been several attempts at developing a Lisp-based operating system which didn't deliver anything: LispOS, Tunes, and Loper; and one successful attempt at getting Lisp to run on the bare metal: Movitz. Lisp was its own operating system on the original Lisp machines developed at MIT, and this evolved into Genera at Symbolics. Is this the case here? I notice tha…

BBN Lisp and its successor Interlisp, popular in the 1960s and 70s, had a persistent data store that was more closely integrated with the running Lisp image than typical general-purpose file systems (slide 41 in [1])

The proposed (but apparently un-implemented) LispOS [2] was to have a single-level store where objects in the running Lisp image would be transparently checkpointed to disk, with no conventional file system.

[1] http://www.international-lisp-conference.org/2005/media/bake...

[2] https://github.com/robert-strandh/LispOS/blob/master/Documen..., also chap-checkpointing.tex

Re: Mezzano – An operating system written in Common Lisp

#59
post #40
post #36

Earlier quoted context omitted.

> I grew up with a machine which booted into a BASIC interpreter ZX Spectrum by any chance?

Apple IIe and IIc. A friend's father had an IIe and I got a IIc for myself, later.

My first computer in 1977 that booted up into BASIC - Commodore PET (Personal Electronic Transactor). It had 8k of memory, and I paid a whopping $400 for the 32k memory expansion module. The original PET cost me $800 used.

My first game was a horse racing / betting game, reflecting my Mom and Dad's penchant for the ponies (OTB, you owe me big time ;) IIRC, I could only use graphics characters if all the letters were uppercase. My game had 3 horses to a race that ran from left to right based on a random number of which horse and how many spaces it moved.

I generated a random number of 0 to 3 for each of the horses with:

100 FOR R = 1 TO 3 110 X = INT(4 * RND(1)) 120 NEXT R 130 SPC(A)

You could bet based on fixed odds, and the payoff would show at the end of the race (bet * odds). My memorable joy was watching my Mom and Dad rooting at the 9 inch monochrome green screen! I was hooked on coding, but only at home. I rarely worked coding for a living.

It booted up into PET BASIC, and aside from some PEEK/POKE limitations, you could access all of it. People hooked up joysticks later to the user port, and hacked speakers or buzzers for sound. I loved the Datasette (cassette tape drive) for storage! You had to put the tape in the drive, instruct BASIC to LOAD "PROG", and then it would prompt you to hit 'PLAY' on the Datasette. I think you then typed RUN "PROG" when if finished loading.

I would go to the store where I bought it in NYC, and they had like 4 or 6 plastic bags with cassette tapes in them and a one sheet or a few sheets of instructions. I wanted FORTRAN or APL, but APL was not available on my PET.

I would love a real LISP Machine, even an historical one for the pleasure of it really being 'turtles all the way down'! I love Lisp more than BASIC, but PET BASIC will always have a special place in my heart, and in the cobwebs of my mind.

[Edit] It would boot up in about 4 seconds or so!

Re: Mezzano – An operating system written in Common Lisp

#60
post #59
post #40

Earlier quoted context omitted.

Apple IIe and IIc. A friend's father had an IIe and I got a IIc for myself, later.

My first computer in 1977 that booted up into BASIC - Commodore PET (Personal Electronic Transactor). It had 8k of memory, and I paid a whopping $400 for the 32k memory expansion module. The original PET cost me $800 used. My first game was a horse racing / betting game, reflecting my Mom and Dad's penchant for the ponies (OTB, you owe me big time ;) IIRC, I could only use graphics characters if all the letters were…

I saw a Commodore PET at that time in a local store. In school I then got access to a Commodore CBM 3032, which was a more robust model of the PET. It had a better keyboard, for example. Booted into BASIC, too.
Post reply on HN