Difference lists

November 12th, 2006

Well…. I just discovered this new wonderful world. I really like them a lot.

I suspect I’m getting a little bit more into Prolog programming. However, I still find more exciting Haskell lazy programming. But I have to admit that my scarce love for Prolog it’s more a problem of (my) ignorance.

A couple of days ago my Programming Language teacher built under my eyes a small compiler and and interpreter for arithmetic expressions in less than 10 minutes (while explaining Prolog to my fellow students). In fact he used extensively Prolog unification mechanism (since the arithmetic expressions he was compiling were also Prolog terms).

However, thanks to DCG grammars building a parser is also quite easy.

In fact I’m falling in love with declarative programming. I definitely start liking declarative languages like Haskell (functional) or Prolog (logic) a lot more than classical programming languages.

In fact I still love Python and Ruby. I like C (and  we *need* C). I also like compiled languages like ObjectiveC (waiting for Objective C 2.0…) and D. After all, I like C++ too. But what is the point of Java? I definitely don’t understand. It’s dramatically uninteresting.

Prolog, Senza Categoria | Comments | Trackback

2 Responses to “Difference lists”

  1. 1Paolo DonaNo Gravatar
    November 16th, 2006 @ 03:08

    Well, you’re right when you say Java is not interesting anymore. But I feel people have misunderstood Java. I had a talk with James Gosling (the father of Java) at the last Italian Java Conference and, while I was asking for missing dynamic features, closures etc, he reminded me that Java was made just to let C++ programmers avoid common mistakes. So they did the garbage collection, single class inheritance, and all those things we’re starting to hate. Java allowed a lot of people to make reliable software.

    Well, smart people always struggle with language limitations, but for the average programmer those limitations are a plus. The less they have to learn/understand, the better. You’re obviously not one of them!

  2. 2Enrico FranchiNo Gravatar
    November 16th, 2006 @ 10:35

    We have already discussed about it in the italian Ruby mailing list. In fact I do agree with you. Java does what it was meant to do. It is a ’simpler’ C++ replacement, with ’simpler’ in the sense you described above.

    I just find quite uninteresting the language itself (while I highly praise the ’standard’ Java library and find quite interesting hotspot, too).

    I would only like to see Mixins in Java (that would be an easy feature to add… I wrote some code do to it — later on this blog — and would make a lot of software easier to write).

    I don’t really think closures are needed (and afterall you can almost emulate them with anonymous classes, even not in such a general way).

    However, from a language study point of view, programming in Java is not as exciting as programming in Ruby or in Haskell. However, the program itself can be so exciting that the thing does not matter.

Leave a Reply

  1.  
  2.  
  3.  
  4. XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
You can keep track of new comments to this post with the comments feed.

Recent Posts

Blogroll

Siti amici

Misc

Recent Comments

Categories

Enrico Franchi graduated in Maths and Computer Science and is now studying for a Computet Science MSc (though because of italian bureaucracy that very course is to be cancelled).

RiK0's Tech Temple is using WP-Gravatar