Slashdot Mirror


Two New Microsoft Languages - AsmL and Pan

AlphaAlien (from neonerds.net) writes: "Another Microsoft Programming Language -- AsmL. AsmL is the Abstract State Machine Language. It is an executable specification language based on the theory of Abstract State Machines. AsmL allows you to test incomplete code due to it being executable on the fly. This doesn't mean it'll execute invalid code though, only that you can execute code segments for instant experimentation (similar to the test-debug function in Visual Studio, but more flexible/powerful). In case you're not tired of all these new Microsoft languages, here's another, Pan. Pan is an experimental embedded language and compiler for image synthesis and manipulation, based on principles from functional programming. The Pan compiler turns descriptions of images and image effects into efficient machine code for use with either a stand-alone program, DirectXTransform for web-page embedding (viewable with IE 5.5 or later), or as a PhotoShop plug-in for use with hosts like Adobe PhotoShop and JASC PaintShop Pro (has only been tested with latter at this point, but should work with former)." You can download Pan from here.

21 of 65 comments (clear)

  1. Pan as Postscript NG? by Xunker · · Score: 2

    In reading some of the the papers on pan, it seems have a lot in common with that other Image Description Langage, Postscript, albeit on a finer level.

    Of course, here is where I insert the knee-jerk comment about having code embedded in an object with Microsofts reputation for security regarding such things.

    However, while the technology is very compelling at first glance (Inovation? From Microsoft? Faugh!), I'm just disheartedened that there is little chance it will make it to the world outside Microsoft products, if it even survives at all (there is little real world interest in these sort of things at the moment).

    --
    Hilary Rosen's speech was about her love of money and her desire to roll around naked in a pile of money.
    1. Re:Pan as Postscript NG? by einhverfr · · Score: 2

      Isn't PAN the Protocol for Assessment of Novelty in the Infinite Monkey Protocol Suite? (see RFC2795).

      I assume that they will next come up with the IAMB-PENT to allow the SIMIAN in the ZOO to interact with the BARD...

      --

      LedgerSMB: Open source Accounting/ERP
  2. the future of C by larry+bagina · · Score: 5, Funny

    Gentlemen, the time has come for a serious discussion on whether or
    not to continue using C for serious programming projects. As I will
    explain, I feel that C needs to be retired, much the same way that
    Fortran, Cobol and Perl have been. Furthermore, allow me to be so bold
    as to suggest a superior replacement to this outdated language.

    To give you a little background on this subject, I was recently asked
    to develop a client/server project on a Unix platform for a Fortune
    500 company. While I've never coded in C before I have coded in VB for
    fifteen years, and in Java for over ten, I was stunned to see how
    poorly C fared compared to these two, more low-level languages.

    C's biggest difficulty, as we all know, is the fact that it is by far
    one of the slowest languages in existance, especially when compared to
    more modern languages such as Java, C#, and VB. Although the reasons for
    this are varied, the main reasons seems to be the way C requires a
    programmer to laboriously work with chunks of memory.

    Requiring a programmer to manipulate blocks of memory is a tedious way
    to program. This was satisfactory back in the early days of coding,
    but then again, so were punchcards. By using what are called
    "pointers" a C programmer is basically requiring the computer to do
    three sets of work rather than one. The first time requires the
    computer to duplicate whatever is stored in the memory space "pointed
    to" by the pointer. The second time requires it to perform the needed
    operation on this space. Finally the computer must delete the
    duplicate set and set the values of the original accordingly.

    Clearly this is a horrendous use of resources and the chief reason why
    C is so slow. When one looks at a more modern (and a more serious)
    programming language like Java, C# or - even better - Visual Basic
    that lacks such archaic coding styles, one will also note a serious
    speed increase over C.

    So what does this mean for the programming community? I think clearly
    that C needs to be abandonded. There are two candidates that would be
    a suitable replacement for it. Those are Java and Visual Basic.

    Having programmed in both for many years, I believe that VB has the
    edge. Not only is it slightly faster than Java its also much easier to
    code in. I found C to be confusing, frightening and intimidating with
    its non-GUI-based coding style. Furthermore, I like to see the source
    code of the projects I work with. Java's source seems to be under the
    monopolistic thumb of Sun much the way that GCC is obscured from us by
    the marketing people at the FSF. Microsoft's "shared source" under
    which Visual Basic is released definately seems to be the most fair
    and reasonable of all the licenses in existance, with none of the
    harsh restrictions of the BSD license. It also lacks the GPLs
    requirement that anything coded with its tools becomes property of the
    FSF.

    I hope to see a switch from C to VB very soon. I've already spoken
    with various luminaries in the C coding world and most are eager to
    begin to transition. Having just gotten off the phone with Mr. Alan
    Cox, I can say that he is quite thrilled with the speed increases that
    will occur when the Linux kernel is completely rewritten in Visual
    Basic. Richard Stallman plans to support this, and hopes that the
    great Swede himself, Linux Torvaldis, won't object to renaming Linux
    to VB/Linux. Although not a C coder himself, I'm told that Slashdot's
    very own Admiral Taco will support this on his web site. Finally,
    Dennis Ritchie is excited about the switch!

    Thank you for your time. Happy coding.

    --
    Do you even lift?

    These aren't the 'roids you're looking for.

    1. Re:the future of C by Iamthefallen · · Score: 2

      argh, moderators on crack again.

      As a (primarily) VB developer I thought it was hilarious, good job!

      Oh, maybe you didn't know, but VB Script is even better, it's much faster than even VB since all variables are the same type, saving a lot of computing power instead of trying to keep track of all those strings and ints and crap. Go Variant!

      --
      Wax-Museum Fire Results In Hundreds Of New Danny DeVito Statues
  3. AsmL - A joke? by ryanmoffett · · Score: 5, Funny

    Today microsoft is putting forth AsmL1.5. It's reasonable to assume they will evnetually release AsmL8.

    1. Re:AsmL - A joke? by spongman · · Score: 2

      a new class of troll. very good.

  4. Pan? by Craig+Maloney · · Score: 2

    Funny, I thought Pan was the Pimp Ass Newsreader. or maybe they're thinking of the pan flute instead.

    1. Re:Pan? by Picass0 · · Score: 2


      As a simple caveman I find myself suddenly confused and unable to tell the difference between the MS product PAN and Pimp Ass Newsreader. From a trademark sense I think MS has dilluted this product name.

  5. ASML by chriso11 · · Score: 2, Funny

    I though asml meant
    Another Shitty M$ Language

    Whodda known?

    --
    No, I don't trust in god. He'll have to pay up front, like everybody else.
  6. Now for an hour through the research site. by penguin_punk · · Score: 5, Informative

    Thanks to whoever posted those links to the research site over at M$.

    A few notes from the past half-hour:

    PAN is old. The fricking code was last updated 2 years ago. I've seen that page before. 2 YEARS AGO.

    anyways. here's another note.

    http://research.microsoft.com/~dbwilson/ -- this guy's pretty funny as far as Microsoft goes. He's releasing some stuff under the GPL on Microsoft's server, as well as linking to GNU Emacs for Windows. I think he deserves a raise.

    --
    HURD - Hurd's Under Research & Development
  7. Microsoft Research, not Microsoft by Tom7 · · Score: 5, Insightful

    Once again, you guys are confusing Microsoft Research with Microsoft. It's a different place. They don't put out crappy, buggy software, or try to take over the world. It's just a research lab.

    Incidentally, MSR Cambridge has some of the best programming language researchers in the world! (Personally, I wish the linux world had more tolerance for new PL ideas..)

    1. Re:Microsoft Research, not Microsoft by kevin+lyda · · Score: 2

      > Personally, I wish the linux world had more tolerance for new PL ideas

      what?! how many languages must linux support? linux uses gcc for its compiler which is designed to allow people to more easily support new languages. plus there are tons of other languages supported - functional, logic, scripting, procedural, oo, and more.

      and look at the languages used to build on top of linux. c, c++, modula-3, perl, python, shell, tcl/tk, elisp, scheme, caml, fortran, java, objective-c. i've used pieces of s/w on linux systems that use all of those (not at once). and those are just the ones i know of.

      --
      US Citizen living abroad? Register to vote!
    2. Re:Microsoft Research, not Microsoft by Tom7 · · Score: 2, Insightful

      I'm reacting to the posts in this article, many of which are knee-jerks like "ANOTHER language from Microsoft! Who needs more languages??" It's true that lots of languages run on linux (though most of the ones you list are C or safe-C variants), though I don't think there is much enthusiasm for *new* programming language ideas on linux. That's pretty sad, because the linux folks are the ones who are supposed to adopt ideas because of their technical value!

    3. Re:Microsoft Research, not Microsoft by MagikSlinger · · Score: 2

      I think that's the problem: MSR is doing great work, while MS corrupts and ruins them to give us Clippy, the Talking Paperclip.

      I think this should be a poll topic: Your favorite research lab? Lawrence Livermore, MSR, Thomas J. Watson Research, AT&T Bell Labs, Cowboy Neal's Bedroom.

      --
      The bitter lessons of a veteran coder: http://bitterprogrammer.blogspot.com
    4. Re:Microsoft Research, not Microsoft by jon_c · · Score: 2


      don't put out crappy, buggy software


      No, i worked there, they do.

      -Jon

      --
      this is my sig.
    5. Re:Microsoft Research, not Microsoft by Kidbro · · Score: 2

      It depends... if you are accept KDE as the default desktop, then it is C++ uber-alles and other languages can just fuck off.

      Interesting. I'd better go tell my boss that we have to switch from Python to C++ for the QT based Client we're developing for our system.

  8. Not a new concept... by Cheetah86 · · Score: 2

    The concept of testing code on the fly is one of the features of python that makes python so great.(The interactive prompt part is where you can execute on the fly code)

    1. Re:Not a new concept... by jtdubs · · Score: 2

      Yes, but python is not the only, nor the first language to allow for interactive programming.

      As Paul Graham once noted, you see the PERL people scoffing at the C people and you see the Python people looking down at the PERL people. You'll notice those languages, in that order, C->Perl->Python are slowly getting closer to becoming LISP. LISP was, as far as I can remember, the first interactive language.

      LISP still is, in my opinion, the most powerful language ever devised. What other language can claim that you can make it an OO language, at run-time, via LISP code. You can add type-checking, at run-time, via LISP code. Code is data and data can be used as code. CLOS kicks ass. LISP kicks ass.

      Not that I don't like Python. It's a cool language. But it's complete lack of method overloading and type-checking make it less than ideal for large-scale projects or sophisticated OO projects. If you like Python, checkout Stackless Python. Very cool. Great support for tail recursion. Better continuation support. Good stuff.

      Anyway, about AsmL. I looked at the example code. For a language based on state machines, it sure was low-level. It looked more like a even-more-verbose pascal. Take a look at the IO example. Good GOD! So many nested if-statements just to open a file and write to it.

      Anyway, have a good day,

      Justin Dubs

  9. Re:$40 Billion by spongman · · Score: 2

    maybe they chose to invest it in the future

  10. OS alternative to AsmL by Capt.Smirk · · Score: 2, Insightful
    I've been following the abstract state machine community for some time. You can find more about ASM's at http://www.eecs.umich.edu/gasm/. An open source community building their own specification language has a site on SourceForge: http://sourceforge.net/projects/a-s-m/

    I was kind of sorry to see that ASM's inventor, Yuri Gurevich, left the University of Michigan for Microsoft Research. However, I'd probably take private research over the hassle of teaching while doing research.

  11. Re:MS Pan name infringes on (open source) newsread by Alex+Belits · · Score: 2

    Microsoft has a long history of using confusing names from similar but not exactly the same areas, so their names sound familiar to people -- just some most "famous" examples:

    1. Windows (operating system, conflict with user interface element that was already in wide use when it was developed).

    2. Digital Nervous System (used as a pointless phrase in ads, conflicts with Domain Name System).

    3. .NET (conglomerate of protocols, tools and libraries based on XML and RPC, conflicts with ".net" top-level domain).

    4. Windows XP (operating system, conflixts with Extreme Programming).

    5. X-box (game console, conflicts with X terminals from X Window System).

    And that doesn't include the use of terms that describe existing classes of products such as "SQL Server", "Internet Explorer", etc.

    --
    Contrary to the popular belief, there indeed is no God.