Combining The Best Of Python, Ruby, & Java??????

?

=?iso-8859-1?q?Luis_M._Gonz=E1lez?=


Static typing, type inference, "sequence comprehensions"...
Looks that there's a new crop of programming languages on top of the
main .NET and JAVA with these characteristics.
This one seems to be following the trend initiated by Nemerle and Boo.
The good thing about these languages is that they offer the performance
of static languages, with the feel of dynamic ones.
Thanks to their local type inference, you don't have to declare types
or return types so often, and with generics, type castings are also
reduced to a minimum.
Anyway, I think that from a python programmer perspective, those
looking for a static language for .NET or Mono would find Boo more
appealing.
For example, I use it for writing extenssions for Ironpython when I
need more performance.
 
P

Paul McGuire

Tim Daneliuk said:
So it is claimed:

http://www.infoq.com/news/Scala--co...-;jsessionid=CC7C8366455E67B04EE5864B7319F5EC

Has anyone taken a look at this that can provide a meaningful contrast
with Python?

Ok, here's the Hello World example from the Scala website:

object HelloWorld {
def main(args: Array[String]) = {
Console.println("Hello, world!")
}
}

Opening and closing braces?
"def main(args: Array[String])"?
Console.println?

About the only Pythonic thing I can see here is the "def" keyword.
Otherwise, it looks too much like Java - no, thanks!

-- Paul
 
R

Ravi Teja

Ok, here's the Hello World example from the Scala website:
object HelloWorld {
def main(args: Array[String]) = {
Console.println("Hello, world!")
}
}

Opening and closing braces?
"def main(args: Array[String])"?
Console.println?

About the only Pythonic thing I can see here is the "def" keyword.
Otherwise, it looks too much like Java - no, thanks!

-- Paul

Don't be too harsh on it though. It is a language built for the
JVM/CLR. The author perhaps intended the library to be natural to the
users of the respective SDKs regardless of its' aesthetics and it
explicitly seems to provide a unified API for Java and .NET. Of course,
that is nothing new. Many languages have interchangeable backends for
these platforms these days but there seems to be a specific focus on
that here. The syntax does resemble Java/C#, which is also important if
you want buy in from the Java/C# crowd.

But semantically it is a proper functional language. The features may
not attract Python users who might prefer Boo/Jython/IronPython. But it
does offer something to disillusioned Groovy users.

But on the other hand, there are some neat features even for Python
programmers.
Tail recursion
Pattern matching
Currrying
Macros
Concurrency
Native XML support

Of course, you can get by without some of these in Python with
workarounds, libraries or hacks.
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/496691
http://www.python.org/dev/peps/pep-0309/ (in 2.5)
http://logix.livelogix.com/ (offline)
 
D

Diez B. Roggisch

But semantically it is a proper functional language. The features may
not attract Python users who might prefer Boo/Jython/IronPython. But it
does offer something to disillusioned Groovy users.

Are they disillusioned? Just wondering.

Diez
 
?

=?iso-8859-1?q?Luis_M._Gonz=E1lez?=

Diez said:
Are they disillusioned? Just wondering.

Diez

Whay talking about disillutioned programmers?
These are tools, not religions...
I love python, and I like it more everyday. And with the advent of
Pypy, its future looks brighter than ever.
But I also find very interesting these new options that are coming up.
Although I'm not a professional programmer (not even a serious
aficionado), I love to be able to translate my python skills very
easily to .NET through Boo, for example.
I even find it more appealing than Ironpython, because it was created
from the ground up to take advantage of the CLR.
On the other hand, porting pure python to .NET is in many aspects like
trying to fit a square on a circle (I don't know if this sentence makes
sense in english...).
Because many of the design choices taken by GvR back in the early
nineties were surely conditioned by the platform he chose to write
python, which is the c language.
The good thing is that python is having a lot of influence in these new
languages.
As far as I could see, even C# 3.0 is showing up some pythonic traits.
 
R

Ravi Teja

Luis said:
Whay talking about disillutioned programmers?
These are tools, not religions...
I love python, and I like it more everyday. And with the advent of
Pypy, its future looks brighter than ever.
But I also find very interesting these new options that are coming up.
Although I'm not a professional programmer (not even a serious
aficionado), I love to be able to translate my python skills very
easily to .NET through Boo, for example.
I even find it more appealing than Ironpython, because it was created
from the ground up to take advantage of the CLR.
On the other hand, porting pure python to .NET is in many aspects like
trying to fit a square on a circle (I don't know if this sentence makes
sense in english...).
Because many of the design choices taken by GvR back in the early
nineties were surely conditioned by the platform he chose to write
python, which is the c language.
The good thing is that python is having a lot of influence in these new
languages.
As far as I could see, even C# 3.0 is showing up some pythonic traits.

I did not realize the flame potential of that remark. Just to clarify,
I have no criticism of any kind on Groovy. I mentioned Groovy since
Scala, the original topic of the thread addresses the needs of the same
group (a modern language with a Java friendly syntax). I am not a
language bigot. Note that I am defending Scala, a new language, in this
thread so far. I do not want this thread to break into a language war
from my remark. I hope that Python gets some of the features listed in
my above post in it's own unique Pythonic way eventually. The
discussion perhaps is more constructive if we can see some good in
Scala that is worth adopting.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,537
Members
45,020
Latest member
GenesisGai

Latest Threads

Top