Live data from Hacker News

Lilith: x86-64 OS written in Crystal

github.com

31–40 of 265 posts

Re: Lilith: x86-64 OS written in Crystal

#31
Two things that I immediately respected about Crystal's landing page [1]:

- It shows numerous code snippets covering various functionalities. Not just "Hello world" but code samples that give you a very solid flavor of the language.

- Its spinning logo can be manipulated with the mouse.

[1] https://crystal-lang.org/

Re: Lilith: x86-64 OS written in Crystal

#33
post #28

Earlier quoted context omitted.

It lacks first-class Windows support. That's it. That's why it fails to gain the traction it deserves.

That never stopped the Go community from porting Go to Windows. It was never ported by core maintainers, but by Go developers themselves.

And yet it was ported, and has OK support. Crystal on Windows is a non-starter right now.

Re: Lilith: x86-64 OS written in Crystal

#35

Just this morning I was pondering the same thing in Elixir. I wonder if Elixir and Crystal compete for ruby developers to pick up

I think Ruby developers are a lot more likely to switch to Crystal than Elixir. Elixir encourages a much more functional style than I think Ruby developers are used to.

Re: Lilith: x86-64 OS written in Crystal

#36
post #4

What is that beautiful desktop wallpaper? any source?

There's a link at the bottom of the readme. https://www.pixiv.net/en/artworks/78375860 Seems to require login, though.

View Source, and you can find the direct link...

https:// i.pximg.net /img-original/img/2019/12/20/00/00/03/78375860_p0.png

(Deliberately made unclickable, because you will get a 403 unless you send the correct Referer.)

Re: Lilith: x86-64 OS written in Crystal

#38
post #6

Wow. Preemptive multitasking, graphical window management, POSIX-like, in a programming language that to my knowledge it hasn't yet been done in... and in just several months of work. There's no smoke and mirrors as far as I can tell. I dug back to the initial commit: https://github.com/ffwff/lilith/commit/c9fa1053dc6a22d630ee6... - and it's just bootstrapping to VGA. Very well done, and inspiring. Makes me want to t…

Interesting choice of syscalls: https://github.com/ffwff/lilith/blob/master/userspace/librar... . No fork; instead it seems to implement spawnv.

AFAIK fork() is specific to UNIX and its descendants; DOS, Windows, and many(most?) other OSs don't have it either.

Re: Lilith: x86-64 OS written in Crystal

#39
post #3

Wow. That's impressive. Crystal is a solid alternative to Go. I gave it a solid look when figuring out which language I should learn. The only reason Crystal didn't make it is because it's just missing some core features. The one that sticks out is there is no way to get the length of a channel last time I looked. But this is impressive and I can't wait to see what's next

[deleted]

Re: Lilith: x86-64 OS written in Crystal

#40
post #6

Wow. Preemptive multitasking, graphical window management, POSIX-like, in a programming language that to my knowledge it hasn't yet been done in... and in just several months of work. There's no smoke and mirrors as far as I can tell. I dug back to the initial commit: https://github.com/ffwff/lilith/commit/c9fa1053dc6a22d630ee6... - and it's just bootstrapping to VGA. Very well done, and inspiring. Makes me want to t…

Maybe it's just because I come from Ruby, but Crystal seems like an amazing language. I'm interested why it seems to be getting little attention compared to Go, Rust, & Julia. It seems in the same league to me. Kotlin and Swift have more obvious reasons for their adoption.

I wouldn't say it's getting "little attention," rather it's relatively new (for a language) and not backed by a major player who can instantly give it a huge spotlight / platform.

For being a 5-year old indie language out of South America, I think it's doing quite well, and projects like this are good evidence of why.

Ruby is an outstandingly productive language. Copying the expressive syntax and ergonomics of Ruby into a fast, statically typed, compiled language with excellent C bindings is a very compelling idea.

Post reply on HN