Slashdot Mirror


Microsoft Releases A New Monad Command Shell Beta

Watercooler Warrior writes "Slashdot originally broke the news that a new Microsoft command shell was in the works when a reader noticed a suspicious job posting by Microsoft India. Today Microsoft released the first really usable version of the shell (codenamed Monad) to beta testers - and anyone who carefully reads the WinHEC slides about Monad will find how to join the beta and get a peek at it. The shell looks like a bunch of old-school Unix and Perl hackers were given free rein to do what they wanted with the .NET framework, and from what is known about the backgrounds of the Monad developers this is probably pretty close to the truth."

7 of 126 comments (clear)

  1. It's about time by JPyObjC+Dude · · Score: 3, Interesting

    Because I unfortunately have to hack on a windoze box, I would love to see an improved command shell.

    The current command shell just plain sucks when compared to OSX's or KDE's shells.

    I can't wait to install.

    truth={ moz: "sweet" }

  2. Re:Monad == ?? by Anonymous Coward · · Score: 1, Interesting
    I work at MS and that's how my manager introduced it to me.

    "It's Monad. Like Gonad, with an M."

    There was a talk about this at the PDC, too. Amazingly cool stuff.

    It's more than just a new command shell. It's a new framework for creating command- or script-driven software compoents. It makes it easy to little apps that can parse parameters and return structured data (not just text).

    Here's an example from the slides:
    get-process | where "handlecount -gt 400" | sort handlecount
  3. I've been using an older version.... by Prien715 · · Score: 4, Interesting

    And I can't say I'm that impressed yet. I'd like to see man pages or something actually implemented. man currently does stuff but man doesn't work for any command I've tried (thus there don't seem to be *any* options). There's a lot of aliases built-in to emulate Unix (e.g. ls, ps) but the lack of grep makes piping seem...well pointless. The actual versions of commands seem entirely too object oriented and thus too verbose. "get-directory" is not something I want to type (I can't remember off the top of my head, but some of them are really absurd). "ps" is ps for a reason. No frequently used command should be more than 4 letters, or require you to use aliases so you don't end up writing a novel.

    Your milaage may vary. I don't care about a scripting language. I have Perl (for Win32). As far as an interactive shell, it still has a lot of rough edges. Personally, I'd rather just use Cygwin/Bash and get a real shell.

    (Though I talked to one of the guys personally and he seems pretty cool.)

    --
    -- Political fascism requires a Fuhrer.
  4. This is pretty clever by Earlybird · · Score: 5, Interesting
    Microsoft is doing something interesting and innovating. The Unix world could use this.

    Basically, Monad formalizes in .NET the pipe interface between shell programs. A pipe participant is just something that implements the appropriate "commandlet" interface: it receives some input, produces some output, maybe some errors.

    However, in the case of Monad the input and output can be anything, not just text. So in the example:

    • get-process | where "handlecount -gt 400" | sort handlecount | out-chart processname,handlecount
    The get-process command produces a sequence of processes; where filters it based on an attribute; sort sorts on an attribute, and out-chart produces a textual table of the filtered output.

    It's important that the input and output of these processes are structures (actually, objects, but I don't want to tickle anyone's prejudices about OOP). .NET knows at runtime about the attributes these structures can have, so you can write apps that manipulate a wide variety of object types: files, metadata-annotated documents, log entries, whatever.

    Naturally input/output can be pure text, allowing all the traditional Unix commands such as grep.

    Immediate benefit? If you have the right translator, there's no need to munge text output using awkward tools like tr, cut, awk and so on, just to get at the process ID column of ps or the URL column of the Apache log file.

    This is better than Unix shells.

  5. Msh misses the point by Zo0ok · · Score: 3, Interesting

    The fine thing with a shell is that when you have issued the same series of commands numerous times you can simply put them in a script - automation done!

    However MSH seems (with its OO-influenced design) to be a bit too complex for ordinary work. If people dont use it for ordinary work, they cant write scripts "for free".

    The problem today isnt that Windows cant be scripted - it can via VBScript.

    UNIX shells are constructed the way they are because users should BOTH use them for scripting, and for every other task. M$ compromises with simplicity (with its OO-design), so MSH will never be as productive as, for example tcsh.

  6. Is it just me... by brunes69 · · Score: 3, Interesting

    ..or is this indicative of a wider trend, where Windows and Linux are coming together from a technology perspective?

    Think about it. Over the past few years, the windowing environments in Linux have grown more and more advanced. With the newer XOrg releases and upcoming KDE4 and Gnome 3, I expect amazing things from the Linux desktop.

    Meanwhile, while Linux has been addressing it's core weakness, Microsoft already has a firm foothold on the desktop. Instead, the past few years they have been integrating more and more sysadmin-friendly technologies - such as integrating scripting into the OS, improving their command shell (and replacing it - hence Monad), improving remote administration.

    Windows has WinFS, Linux has Reiser4 + plugins.

    In the next few years, I doubt a layman will be able to tell Windows and Linux apart from a purely features / technology perspective. What *ill*be important, is he thing that is the most important - who do you trust with the source code to your OS? A private company or a group of hackers.

  7. Re:Access for Monad Beta by babbage · · Score: 1, Interesting

    I've never given Microsoft my address, so I'm not sure how it would have ended up in their database. And yes they can track my IP, but only with a registration system like Passport can they say that any activity I make from home, work, and elsewhere is all coming from the same person. As for XP, well, that's just yet another reason that I'm glad to be using a Mac instead of Windows... :-)