Slashdot Mirror


Inferno 4 Available for Download

Tarantolato writes "A new preliminary public release of the Inferno distributed operating system is now available for downloading from Vita Nuova's website. Inferno is meant to be a better Plan 9, which was meant to be a better Unix. It can run as a standalone OS, as an application on top of an existing one, or even as a browser plugin. Also, all of its major components are named after things related to hell."

18 of 287 comments (clear)

  1. inferno? by wvitXpert · · Score: 5, Funny

    never heard of it... is it hell to use?

    1. Re:inferno? by earlgreen · · Score: 5, Funny

      No, that's called Windows.

    2. Re:inferno? by Anonymous Coward · · Score: 5, Funny

      Just download, burn the CD, and fire it up. You may think it smokes, but I'll be damned if I can see what the devil is so hot about it.

    3. Re:Inferno? by Anonymous Coward · · Score: 5, Interesting

      Those circles and arrows aren't tacked on. They wrote the entire thing using lightweight pipes AKA 'rendezvous'. It's some clever combination of kernel and user-level threading. Inferno was *almost* famous. It had the grave misfortune of being released 1 year after java 1.0. The final nail in the coffin came from Oracle's Ellison, who pussyfooted around with the idea of using it in the Network PC (remember that?) before putting the kibosh on the whole deal.

      -- Anon Coward

    4. Re:Inferno? by warrax_666 · · Score: 5, Insightful
      Compilers do not need them if properly designed, as with the many
      modern languages I cited.

      But C and C++ require this. Ever notice how in C and C++, you can't refer to an undeclared type, even if it is declared later in the file? You have to provide at least a forward definition. ("class Bob;") Likewise functions, data members, etc. This is most annoying in C++, with inline functions. You have to pay attention to ordering. In other languages, you do not.


      This is unrelated to whether or not you require a separate interface file. The reason that the forward declaration exists is that you cannot declare circular types (such as linked list elements) without them. In all other cases, you can just sort the declarations topologically and write them out in that order.

      Besides, what you're saying is true even of "properly designed languages" like ML. Just try:
      type list_of_a =
      Cons a list_of_a
      | Nil;

      type a =
      int;
      It doesn't compile, but it DOES work if you use:
      type list_of_a =
      Cons a list_of_a
      | Nil
      and type a =
      int;
      (note the and)

      So you're basically talking about a syntactical problem in C/C++ which forces you to declare (textuall) things in a topological order.


      Okay...that's great for those 1% of people who want the interface file to remain absolutely static. And I mean absolutely static. No new methods. No changes to the comments. No nothing. (In fact, I doubt there are even 1% of people who want this, once they give it some thought.)

      For the remaining 99% of us, this is unwanted Bondage and Discipline.


      Making up a statistic is never a good way to argue a point.

      Besides, nobody said anything about forcing you to use separate interface/implementation. I just said to it could be a good thing to use it and have it be supported by the compiler.

      In my preferred language, OCaml, you have the option of having a separately declared interface (a .mli file) or not having one. If you have one, the compiler will rigorously check that your code complies with the declared interface. If you don't have one, it will just generate the interface your code implements.

      By the way, since you brought them up, declaring a proper interface is much more important in type-inferencing languages, since even tiny
      changes to code can cause completely different types to be inferred. For example, in OCaml:
      let f x =
      x + 5;

      let g x =
      x +. 5;
      f and g have different signatures even though the difference is tiny. If you're interfacing to binary libraries it helps immensely to know that the library would not have compiled if such a type-altering change has occurred in the "hidden" code.


      Maybe the people who want the interface to remain static can do so in a more intelligent way. Like comparing javap output on check-in and
      ensuring the old methods are there, with the same signatures as before.


      You call that intelligent? Instead of just having the compiler do it? It already knows all about type aliases, what types are compatible,
      etc. etc. (i.e. all the stuff that makes checking such things using a postprocessor extremely error-prone).
      --
      HAND.
  2. Just what we need by Anonymous Coward · · Score: 5, Funny

    Oh great, a Christian operating system. Lovely.

    1. Re:Just what we need by Veridium · · Score: 5, Funny

      I understand the kernel doesn't panic, it just dies for your sins...

      --
      Think for yourself, destroy your television.
  3. Hell comes in many flavors by warkda+rrior · · Score: 5, Funny
    Slashdot says:
    [...] all of its major components are named after things related to hell.
    I see on the Inferno website the following components:
    The Inferno operating system [...] includes the Dis virtual machine, integral support for the Styx network protocol, and an implementation of the Tk user interface toolkit.

    I am not sure which part of hell the Tk UI toolkit represents, but I feel their pain.
    --
    You need to install an RTFM interface.
  4. Good introduction to Limbo by harikiri · · Score: 5, Informative
    ...as in the programming language for Inferno, written by Brian Kernighan, is available here.

    I've briefly looked into trying out Inferno, but bear in mind it's not designed as a desktop system. Instead, the market it seems to be used in is the embedded market - so it'd be interesting to see how easy you can write server apps for application boxes with it.

    However, it initially appears that Limbo is the only way to program for Inferno (prove me wrong please), which would be an obvious impediment to developer take-up.

    --
    Man watching 6 MSCE's around a sun box, looks alot like the opening scene's of 2001:space odyssey...
  5. Re:License by Tarantolato · · Score: 5, Informative
    Read some of Stallman's rants about the Plan9 license(s). Vita Nuova's license has the same problems.

    Plan 9 had a license where you couldn't sue Lucent on an unrelated matter if you used it. They've now changed that (as of June 2003), and Stallman now considers it a "free software license incompatible with the GPL". From the GNU site:

    • This is a free software license, incompatible with the GNU GPL. We recommend that you not use this license for new software that you write, but it is ok to use and improve Plan 9 under this license.


    Inferno's license seems to be the same as the new plan 9 one. (But I haven't looked in depth).
  6. OSS authors: Think carefully about communication. by Futurepower(R) · · Score: 5, Insightful


    It amazes me how bad open source people are at marketing. Why make your project, which requires a huge amount of excellent thinking, the butt of jokes?

    Why give a name to your open source project that will cause those who have less than complete technical knowledge to feel uncomfortable about adopting what you have done?

    One question is, how bad can it get? Will there one day be a "Worthless" project? There is already a "Waste".

    The funniest bad name for an open source project was "Killustrator". It's easy to see how the name was chosen. Everything in KDE began with a K, as much as possible, and Killustrator is an open source illustration program. It didn't seem to bother anyone that the first syllable of the name was "Kill". I can imagine the Killustrator author thinking how convenient it is that the word illustrator begins with a vowel; that makes it easy, just put a K at the beginning, and you have a name!

    The name Killustrator gave everyone a million dollars worth of laughs, and did perhaps $10 million damage to Adobe's reputation when the CEO of Adobe overreacted, saying people would confuse Killustrator with Adobe Illustrator.

    Do open source authors believe that there are only a few concepts available, not enough for everyone? Why copy the FreeBSD devil idea?

    And Why did the FreeBSD project adopt that idea? I know FreeBSD is an excellent OS, and the favorite BSD for ISPs, but there are some who will be discouraged by the amateurish baby red devil marketing scheme.

  7. OSS authors:Think carefully about [making money] by Anonymous Coward · · Score: 5, Insightful

    I got a better question. Why does everything have to be commercialized? Can't we have some FUN with our software without having to pay a tribute to the marketing gods? Some of us simply don't care, to put it bluntly.

  8. Re:I thought a better unix was ... by Tarantolato · · Score: 5, Informative

    I thought a better unix was linux!

    Linux is better mostly because it's free. It does not fix some of the imperfections in the core design (for good reasons; that would break Posix compatibility). According the Inferno Design Principles, Inferno takes Unix ideas and applies them more consistently. For instance: everything is a file. In Inferno, what you're typing in a text editor window can be queried in something like /gui/window/...etc. Also, the network protocol is entirely file-based. Your desktop system (or smartphone, or brower plugin) sees the server or another client as part of the same filesystem that its own resources sit in.

  9. All jokes aside... by shaitand · · Score: 5, Insightful

    Is this what I think it is?

    A multi-platform OS, it can run standalone, as a virtual machine on every major OS (including every linux distro) and give full blown access to the system? Plus it can run in a sort of transparent mode so you can port your app to it and have your app appear to be a native app?

    From the description it sounds like it's multi-threaded and designed with distributed systems (read cluster) in mind.

    Plus it already has a language designed by the fathers of C and C cross compiler (wonder how well it works, also being designed by the fathers of C).

    So in one sweep we have a solution suitable (sounds like it carries 1mb ram overhead) for most applications. Anything written for it magically runs on every major platform, it's highly scriptable and carries most of the magic of Unix packed with it wherever it's run from.

    If it's significantly faster than Java I'd say we have a solution to the multi-distro problem as far as apps go.

    1. Re:All jokes aside... by Anonymous Coward · · Score: 5, Informative

      You're not too far off the track. It is a network
      operating system that lends itself to clustering
      applications, and Vita Nuova has a few big clients
      looking at exactly this.

      Plus the Vita Nuova people are very approachable.
      (Their office is virtually within sight of mine).

      One of the great advantages is that just about
      everything looks like a file so it is very easy
      to create namespaced collections of device-type
      files that might be resident on your machine, or
      just as easily resident on a collection of
      disparate machines. It makes prototyping GRID
      applications very much easier.

      Personally I am very keen on looking more at
      Inferno for GRID computing just as soon as I have
      more time to spend on it. It's not a solution to
      all ills, but it has definite advantages, and
      seems to be very robust and has a small footprint.
      I've seen it running happily on a fairly old
      PDA being used to seamlessly integrate a whole
      series of remote devices.

      Aaron Turner, University of York

  10. Re:OSS authors: Think carefully about communicatio by drgonzo59 · · Score: 5, Insightful

    I think that the people who work on these projects are not "market oriented." They do what they do because it is fun and they probably could care less if some manager dude thinks the name of the software will offend or drive away the potential clients. Maybe it's supposed to drive away the people who lack a sense of humour. /* flaimbait start */ Let them use microsoft products /* flaimbait end */ And besides, I don't think they copied the FreeBSD's devil idea, I think they got their inspiration from Dante Alighieri

  11. Re:New p2p by Temporal · · Score: 5, Insightful

    Java compiles to native code. Just because the translation is done at program startup doesn't mean it is slower. In fact, because of this, it can perform optimizations that couldn't be used in a C compiler (optimizing for specific CPU's, etc.).

    The problem with Java is that its GUI toolkit is slow.

    In any case, with a file sharing app, CPU efficiency is certainly not an issue. You should never worry abot CPU efficiency if you don't need to, as you will only be making things harder on yourself.

    And, finally, writing portable C/C++ code is really not that hard if you know what you are doing. Certainly you'd be better off with that than you would be asking all of your users to install an extra OS over their current one just to run your program. Really, the most important factor in making file sharing successful is to get lots and lots of users, and most of those users are going to be people who have absolutely no idea what an operating system even is.

  12. Re:Yeah I tried it by JanneM · · Score: 5, Funny

    No, he just had a guest account.

    --
    Trust the Computer. The Computer is your friend.