Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

acme (189)

  (email not shown publicly)

Leon Brocard (aka acme) is an orange-loving Perl eurohacker with many varied contributions to the Perl community, including the GraphViz module on the CPAN. YAPC::Europe was all his fault. He is still looking for a Perl Monger group he can start which begins with the letter 'D'.

Journal of acme (189)

Wednesday June 06, 2001
01:29 PM

C# and stuff

[ #260 ]
I was in Washington DC this weekend for a wedding, which turned out wonderful. The bride was beautiful, the weather was nice and warm, and the drinks were flowing.

For the flight back I popped into a bookstore and grabbed a copy of "Microsoft C# Language Specifications" and "Common Lisp". (Yes, I could have got the latest John Grisham instead, but that's the kind of guy I am).

C#, as you all probably all know by now, is Microsoft's answer to Java, and is a "simple, modern, object orientated, and type-safe programming language derived from C and C++". Parts of it look just like Java, and parts of it look like C. It's even got a foreach statement.

I'm not going to insult C#. It has some nice ideas. It has some strange ideas. It uses at-signs for string literals ('groovy $4' in Perl is @"groovy $4" in C# - weird). C# is basically the same as a great deal of other programming languages. This is because all programming languages are basically the same.

This is so important I'll say it again: all programming languages are basically the same.

This is how GCC manages to pull off having frontends for C, C++, Objective C, Chill, Fortran, and Java (and many more). All the structures of computer languages are fundamentally the same. The differences are in the details, things like syntax and variable scope.

Thus, it is a simple step to a Common Language Runtime of Microsoft's .NET, which is simply a virtual machine which is good at sharing information.

Take a step back: right now there are LISP, Prolog, (and soonish Ruby, Python, and the mythical Perl6) interpreters/compilers for the Perl Virtual Machine. Right now. The Perl Virtual Machine is a joy to program. Perl is portable. Inline can only help.

It wasn't planned, but the current Perl Virtual Machuine is turning into a kind of CLR. There has been lots (and I means lots) of research done into virtual machines, from Smalltalk to new virtual virtual machines.

I think SOAP is interesting, but there's something more important out there.

I'm still not sure what my point is. My plan is that I'm gonna panic about my YAPC::NA slides and talk it over with people at the conference. There's something big here.