Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Perl in the "Microsoft Research Center"

by gmpassos (Priest)
on Jan 15, 2004 at 05:34 UTC ( [id://321467]=perlmeditation: print w/replies, xml ) Need Help??

I was looking the "Microsoft Research" for the 1st time, and was surprised with how many time we found references to Perl on it.

We can see Perl used for a "Bilingual Sentence Aligner", Perl REGEXP implementation for C++ on VC++, etc...

Some links:

And the list goes...

Graciliano M. P.
"Creativity is the expression of the liberty".

janitored by ybiC: Made URLs to be active links using square brackets thusly: []

Replies are listed 'Best First'.
Re: Perl in the "Microsoft Research Center"
by EdwardG (Vicar) on Jan 15, 2004 at 09:44 UTC

    I'm not quite sure what point you are making.

    You are surprised, ok. But other monks probably aren't. Perl is ubiquitous, that means it is everywhere, even at Microsoft. I would expect that it has influenced more than a few design decisions, particularly with the recent design of C#. For instance Eric Gunnerson, a Microsoft Programme Manager for C#, admits to being an "old Perl guy" and has used perl as a benchmark for text processing speed.

    The world is full of entities that refuse to line up neatly into stereotypes, and that includes Microsoft.

      I'm not going to speak for the OP's thoughts, but I myself have been a little surprised at times to see M$ "products" or M$-only environments (like where I work) and Perl together.

      In my mind I often equate M$ with closed-ness, death-grip control, and TOWWTDI - There's Only One Way To Do It - the M$ way. I'll have to admit that I have these biases based on my experiences at work and the people here. They'll say, "Perl - we can't use that? It's not on the company's approved software list!" Or they might say, "Perl - who can read it?", when I might argue otherwise.

      Furthermore, did you see the OP's sig?

      Graciliano M. P.
      "Creativity is the expression of the liberty".

      Perhaps, like me, the OP thinks like this:

      @msProducts = ("Visual InterDev", "ASP", "VB", ...); sub creativity { ... } sub security { ... } sub stability { ... } sub coolness { ... } @whatIWouldLikeToUse = grep creativity, grep security, grep stability, grep coolness, @msProducts; print scalar @whatIWouldLikeToUse; # 0!

      , where sub (creativity|security|stability|coolness) are defined such that they always return false whenever they're fed the name of a M$ product or technology. When we run across things that challenge our assumptions, we are surprised. :-) I can understand the OP's surprise.

        M$ product or technology. When we run across things that challenge our assumptions, we are surprised. :-)

        The use of M$ in your writing is self demeaning. If you dont like MS (as many don't) or what they do (as most don't) thats one thing. But the childish M$ stuff is script kiddie stuff. And IMO doesnt belong on PM.

        If you seriously expect anyone who is a regular user of MS products to listen to what you say, you might want to try not to be derogatory and childish in the way you do so. If you dont care if they listen then why comment?

        So are you suprised?


          First they ignore you, then they laugh at you, then they fight you, then you win.
          -- Gandhi

Re: Perl in the "Microsoft Research Center"
by perrin (Chancellor) on Jan 15, 2004 at 13:18 UTC
    Don't let the "duh!" posts get you down -- I think it's interesting. MS Research is pretty far removed from the rest of the company, so other MS interactions with Perl are not really relevant to this one. They employ a lot of smart people at MS Research and do some cool stuff, much of it with little obvious practical value to the rest of MS.
Re: Perl in the "Microsoft Research Center"
by hardburn (Abbot) on Jan 15, 2004 at 14:03 UTC

    In general, pure research departments at any company are far removed from the shareholders. They do stuff like port Linux to a Mr. Coffee. Microsoft is no exception.

    I wanted to explore how Perl's closures can be manipulated, and ended up creating an object system by accident.
    -- Schemer

    : () { :|:& };:

    Note: All code is untested, unless otherwise stated

Re: Perl in the "Microsoft Research Center"
by rob_au (Abbot) on Jan 15, 2004 at 12:47 UTC
      Don't forget that MS & Activestate are closely tied together, at least before the buy out by sophus. This old news article talked about how Microsoft and Active State developed a parternship to develop and support perl on windows platforms. (Caveat My buisness knowledge of ActiveState is only based on what I read, which I partially remmeber. Feel free to correct me if there is additional details which I'm forgetting...)

        Remember, Activestate used to be Hip Communications. And MS gave Hip Communications a shedload of money to port and support perl on Win32, to make it easier for people to switch their applications from the Netscape web server to IIS.
Re: Perl in the "Microsoft Research Center"
by BrowserUk (Patriarch) on Jan 15, 2004 at 12:16 UTC

    This is far from new news. If you type "help ftype" on NT4 going back to 1996 (maybe earlier) you get

    E:\Perl\src\perl-5.8.1-RC4-bc\win32>help ftype

    Displays or modifies file types used in file extension associations

       FTYPE [fileType[=[openCommandString]]]

     fileType Specifies the file type examine or change

     openCommandString Specifies the open command to use when launching files of this type.

    Type FTYPE without parameters to display the current file types that have open command strings defined. FTYPE is invoked with just a file type, it displays the current open command string for that file type.

    Specify nothing for the open command string and the FTYPE command will delete the open command string for the file type. Within an open command string %0 or %1 are substituted with the file name being launched through the assocation. %* gets all the parameters and %2 gets the 1st parameter, %4 the second, etc. %~n gets all the remaining parameters starting with the nth parameter, where n may be between 2 and 9, inclusive.

    For example:

       ASSOC .pl=PerlScript

       FTYPE PerlScript=perl.exe %1 %*

    would allow you to invoke a Perl script as follows: 1 2 3

    If you want to eliminate the need to type the extensions, then do the following:


    and the script could be invoked as follows:

       script 1 2 3

    Examine what is said, not who speaks.
    "Efficiency is intelligent laziness." -David Dunham
    "Think for yourself!" - Abigail
    Timing (and a little luck) are everything!

Re: Perl in the "Microsoft Research Center"
by zentara (Archbishop) on Jan 15, 2004 at 15:21 UTC
    I don't find it surprising that MS would have people using Perl. Like one of the prominent sigs on this site says: "90% of all software has already been written"....and alot of that is in Perl. So they use it. That's smart.

    What really surpised me recently was how MS was outsourcing it's web sites to linux servers for security reasons. MS goes to linux

    That speaks volumes, and would make me consider selling any MS stock which I owned.

    If there is anything I would worry about from Microsoft dabbling with Perl, is that they will develope their own version, "slightly incompatible with standard Perl",then push it on all their they tried with Java.

PerlScript in MS SQL Server
by YAFZ (Pilgrim) on Jan 15, 2004 at 22:02 UTC
    I remember the first time Ive seen Perl in an MS environment. Back in 2000, it was the Enterprise Manager of SQL Server 7.0 and I was using it to export some tables to text format (or EXCEL I don't remember :). It was the plain old wizard style of MS and I was keep on hitting Next, Next and entering some parameters. The last screen contained an interesting tab page and when I clicked on it Ive seen that the program allowed me to do some detailed text manipulation as the data was being transferred. One way to do the manipulation was Visual Basic code the other way was... PerlScript they called it. It was nice to see db columns in Perl, you could insert your Perl functions, regexen, etc.

    It is 2004, SQL Server 2000 and the PerlScript is here to stay ;-)

    This is no research environment as you see, pure production :)
Re: Perl in the "Microsoft Research Center"
by jryan (Vicar) on Jan 15, 2004 at 20:38 UTC

    A lot of people (except hardburn) are missing an important point: we're talking about Microsoft Research here, not an actual product development place. The way research in company like that works is something like:

    1. "Someone" tells a researcher a topic to research.
    2. The researcher does stuff.
    3. The researcher reaches some conclusion and writes a paper about it.

    There aren't any rules about which products they have to use, or whether they have to stick to the company line or anything like that. They are given a lot of freedom.

    Hell, the researchers probably didn't write the actual code themselves. Many researchers just stick to the "soft" theoretical part, and leave it to a grad-student intern (a code monkey) to implement and prototype their ideas.

      Good point, but you forgot perrin's post :) (It was 45 earlier than hardburn's, but they both deserve to be upvoted. Mr. Coffee, indeed!)


        Ah, you are right. Apologies to perrin. :)

Re: Perl in the "Microsoft Research Center"
by Anonymous Monk on Jan 15, 2004 at 08:07 UTC

    Just two questions - Do you really think Microsoft would support Perl in any way if it threatened them at all? And if not, then why are these things always viewed as a good thing for Perl.

    It's a sign of Perl's increasing ineffectiveness. The $40 billion-in-the-bank monopoly that created such wonderful things as windows, activex, and visual basic likes your language. I'd be worried.

      Using perl does not imply supporting it. Even so, perl isn't a threat to MS, nor would I want it to be. It's Just Another Language which they may or may not support in their products in the future just like they've supported C, BASIC, Java, Fortran, COBOL and perl (yes, perl) in the past. And unlike (eg) Java it isn't encumbered with a litigious MS-hating corporation or a restrictive licence.

      Contrary to popular geek mythology, people working for MS are not stupid. Some of them may be ... ethically challenged, but stupid they ain't. And intelligent knowledgeable people like to use the best tools available for their job, which sometimes means using perl. And intelligent managers say to their intelligent peons^Wemployees "OK, you can use perl, because it will mean you do more work and make Bill more millions".

      Note to self: stop replying to trolls.

      Oh bother.

      If you take a look, before blame anything, they aren't using Perl to support it or to make softwares that work with it. They are developing new things with Perl and porting Perl resources to others.

      For me this tell how Perl is practical and efficient, or why they aren't using their own technology to develop? Because Perl is already there and works very well.

      Graciliano M. P.
      "Creativity is the expression of the liberty".

        Ive heard that MS uses Perl as a part of their daily build and test processes. I dont know if it is (or for that matter ever was) true, but it sounds possible, even perhaps likely.


          First they ignore you, then they laugh at you, then they fight you, then you win.
          -- Gandhi

A reply falls below the community's threshold of quality. You may see it by logging in.

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlmeditation [id://321467]
Approved by Corion
Front-paged by DrHyde
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others examining the Monastery: (4)
As of 2024-04-13 02:45 GMT
Find Nodes?
    Voting Booth?

    No recent polls found