Hacker Timesnew | past | comments | ask | show | jobs | submitlogin

I'm glad that systems languages are getting a little more love these days. However, I'm a little saddened to see that no one seems to want to write a language that can also be used at the write-a-kernel level. Both Rust and GoLang have expressly made this a non-goal[1][2].

[1] https://github.com/graydon/rust/wiki/Project-FAQ

[2] http://groups.google.com/group/golang-dev/browse_thread/thre...



I think you could write a kernel in Rust (though you'd need to add unsafe pointers, direct calls, and possibly other stuff to the language), it's just not a goal of the project. There's no reason why I wouldn't accept patches to the language that would help in that effort as long as they didn't wildly conflict with the main goals of the project.


+1, Thanks for making that distinction.


I consider ATS [1] a systems language and it can be used at the write-a-kernel level. It can be used without a garbage collector using linear types to ensure memory is deallocated.

One of the contributed examples is some kernel development [2].

[1] http://www.ats-lang.org/ [2] http://ats-lang.svn.sourceforge.net/viewvc/ats-lang/trunk/co...


No love for the D programming language? There is a WIP (although not much activity since 2010?) kernel being written in D[1].

[1] https://github.com/xomboverlord/xomb


Y'know, it's funny. For no good reason I've failed to give D any consideration. I guess I've had it in my head that it wasn't as small or speedy as C/C++, but I'm pretty sure that's unfounded prejudice talking. I think I'll give it a try. Thanks!


The Habit language, being developed at Portland State (by my colleagues -- I'm a grad student there) falls into the category you're looking for, though the implementation is still under development:

http://hasp.cs.pdx.edu/habit-report-Nov2010.pdf (sorry, no non-PDF documentation)

There was an LtU thread as well:

http://lambda-the-ultimate.org/node/4205


Maybe Clay (http://tachyon.in/clay/) would interest you then? It does not explicitly says that it can be used for kernel development, but from the feature set it seems like it could.


Interesting! I like the light feel of the syntax and the fact that it uses LLVM. Thanks for sharing!


There is the BitC language: http://www.bitc-lang.org/

Sadly they dropped the Lisp syntax.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: