5 ms·
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 t
by portmanteaufu 16y ago
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 https://github.com/graydon/rust/wiki/Project-FAQ
[2] http://groups.google.com/group/golang-dev/browse_thread/thread/72c5c5c355cf1262/0e473006b386a185 http://groups.google.com/group/golang-dev/browse_thread/thre...
- doublec 16y agoI 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/ http://www.ats-lang.org/ [2] http://ats-lang.svn.sourceforge.net/viewvc/ats-lang/trunk/contrib/linux/ http://ats-lang.svn.sourceforge.net/viewvc/ats-lang/trunk/co...
- Kototama 16y agoThere is the BitC language: http://www.bitc-lang.org/ http://www.bitc-lang.org/ Sadly they dropped the Lisp syntax.
- Queue29 16y agoNo 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 https://github.com/xomboverlord/xomb
- portmanteaufu 16y agoY'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!
- gnuvince 16y agoMaybe Clay (http://tachyon.in/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.
- portmanteaufu 16y agoInteresting! I like the light feel of the syntax and the fact that it uses LLVM. Thanks for sharing!
- pcwalton 16y agoI 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.
- portmanteaufu 16y ago+1, Thanks for making that distinction.
- catamorphism 16y agoThe 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 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 http://lambda-the-ultimate.org/node/4205