On Mon, 10 Jul 2017, Graeme Geldenhuys wrote:

Hi,


Purely on the language side of things.... I love the fact that there is no *.h or an "interface section" in my code - why must C/C++ and Object Pascal duplicate that information. If I want to see a purely "interface" view of my code, the IDE doesn't that as standard in the unit Outline window.

If that is all, on the language side, I am a happy man :)

I think Java is a rather primitive language, so I had hoped for something massively impressive.

Let me give you a counter example why I think Java plainly sucks.

I get very depressed when I see things like this:

dstream.foreachRDD(new VoidFunction<JavaRDD<String>>() {
  @Override
  public void call(JavaRDD<String> rdd) {
    rdd.foreachPartition(new VoidFunction<Iterator<String>>() {
      @Override
      public void call(Iterator<String> partitionOfRecords) {
        Connection connection = ConnectionPool.getConnection();
        while (partitionOfRecords.hasNext()) {
          connection.send(partitionOfRecords.next());
        }
        ConnectionPool.returnConnection(connection);
      }
    });
  }
});

Such code is completely unreadable to me.

Compare this to the same code in Python:

def sendPartition(iter):
    connection = ConnectionPool.getConnection()
    for record in iter:
        connection.send(record)
    ConnectionPool.returnConnection(connection)

dstream.foreachRDD(lambda rdd: rdd.foreachPartition(sendPartition))

The very paragon of readability.

Or Scala:

dstream.foreachRDD { rdd =>
  rdd.foreachPartition { partitionOfRecords =>
    val connection = ConnectionPool.getConnection()
    partitionOfRecords.foreach(record => connection.send(record))
    ConnectionPool.returnConnection(connection)
  }
}

Infinitely more readable than Java in my opinion. And that is what matters to me.

The Java version with all it's templates is just painful.

(And mainly the reason why I think common use of Generics or templates is just a plain wrong approach, but that is another story)

So in fact your mail is a relief, I thought there would be some killer
arguments why Java is better than Object Pascal...

About the IDE: there I cannot argue, there are probably many more things
that can be done in Lazarus.

Michael.
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to