Stories
Slash Boxes
Comments
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)

acme
  (email not shown publicly)
http://www.astray.com/

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)

Saturday June 07, 2003
02:53 PM

Portugal

[ #12684 ]
For the past couple of days, I've been in lovely sunny Portugal. I was a speaker at JOIN2003, a technical conference at the University of Minho at Braga.

Speaking before me was Simon Peyton Jones, Haskell guru extraordinaire. The university teaches Haskell in the first year and lots of the students are complete Haskell-heads. Luckily I found out that they teach Perl in the last year (for the natural language processing course), but I was constantly joking that Perl was more, well, practical.

Simon gave a retrospective on Haskell, noting what he thought were particular good and bad moves for the language in the past. I haven't really done much Haskell since university so it was a great recap - I even understood what monads are about. I particularly like his view that the major problem with monads was the name, which just scares people off. Also, he suggested that being lazy by default was a problem (for performance: most functional programs can work just fine without laziness for 90% of the time), and that Haskell2 (or whatever) should be lazy just on programmer demand. I noticed a lot of similarities between Haskell and Perl 6, which I think should be interesting.

I then presented my "Little languages in Parrot talk", putting in a little bit more about the history of Parrot and Perl 6 than I normally do. I rattled the talk of pretty quickly as we were a little behind the schedule. It was fun being back at university again, but it was annoying how few questions the students asked. Howerver, I think overall my talk was successful as I have inspired a few people to investigate Befunge.

Speaking after me was David Welton, who explained how he built Rivet, a PHP-alike using Tcl and Apache. There were, of course, many other talks afterwards, some of which abused Powerpoint in horrible ways. In particular "Oracle and Very Large DataBases" was presented by a marketing droid and very boring. Some of the student talks were quite interesting however.

In the evenings there were a couple of fun events. One was a Counterstrike tournament, originally Staff versus Students but the Staff chickened out. I was a judge in a programming competition, with students having to write UNIX filters for a variety of problems in a short time using whatever language they chose. Many chose Haskell, but the Perl people showed off a little bit too. Some even chose to program C, but mostly spent the whole time fixing off-by-one errors and segfaults. Haskell won two out of three, with a particularly cute C program which called main() recursively winning the code style award. There was also an event where you had to find answers to a series of questions using the web, where I managed to scare everyone by correctly guessing the 300th digit of pi.

Throughout the conference, the organisers (Magda and Alberto) took great care of me, taking me out on the town and showing me Porto. I didn't know Portugal very well, but found it all very laid back and the food here is great. I also tested my theory that Chinese food is different around the world and succeeded by having some decidedly weird deep-fried ice cream.

Overall it was great fun and a wonderful conference to start my Perl Conference World Tour with. I shall leave you with the wisdom from one of the JOIN adverts:

E tu, queres ver alguéem vestido de cor-de-laranja? Sabes de que é que eu estou a falar? Então vai à JOIN, que é para aprenderes! ;) De orange_mistery@...

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • Wow. The anecdotes I've read have all seemed to point to Haskell's being hard as a first language, so I'm surprised the students chose it freely for random coding tasks. What kind of Haskell environment did they use? What other languages had they seen (and in what order)? Did you get a sense for what portion of the students "got it"?

    /s

    • Re:Haskell?! (Score:2, Informative)

      Hi! I'm the Alberto guy! :-)

      Here in the university, programming languages are presented in this order (this will change a little sooner or later): Haskell, C, Prolog, Java Other languages are used but under other subjects: Perl for system admins and natural language processing, Visual Basic (yuck!) for some database applications, and so on.

      Regarding the use of Haskell and not another language, teachers noticed that students which already program (C, for example) have more dificulties to learn Haskell th

      • Regarding the use of Haskell and not another language, teachers noticed that students which already program (C, for example) have more dificulties to learn Haskell than the virgin ones

        This makes sense to me. I started out with Scheme, then C++, and it took me awhile to be able to write idiomatic Haskell. I'm still not comfortable in Prolog, but since I don't really have a use for it, that's not such a big deal.

        I'm impressed by the language variety there, btw. Where I am now (UCSD), they throw the stude

  • But the 400th digit! In fact, Leon pointed that the 400th digit of Pi is a 4. In fact, the 400th decimal digit of Pi is a 4. The real 400th digit (counting the 3) is a 9 (I think!)
  • > Howerver, I think overall my talk was successful as I have inspired a few people to investigate Befunge.
    <br><br>
    Niark, niark! Seems that my plan for world domination works! :->