473,811 Members | 2,485 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

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

So it is claimed:

http://www.infoq.com/news/Scala--com...E5864B7319F5EC

Has anyone taken a look at this that can provide a meaningful contrast
with Python?
--
----------------------------------------------------------------------------
Tim Daneliuk tu****@tundrawa re.com
PGP Key: http://www.tundraware.com/PGP/
Jun 12 '06 #1
9 1866
Scala seems terse and fast enough, few examples:

http://shootout.alioth.debian.org/gp...co&lang2=scala

Bye,
bearophile

Jun 13 '06 #2
Tim Daneliuk wrote:
So it is claimed:

http://www.infoq.com/news/Scala--com...E5864B7319F5EC

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


I find the language very interesting but it is not like Python or Ruby
at all. Feels a lot more like OCaml + Haskell for JVM with a more
mainstream (Java) syntax.

Jun 13 '06 #3
be************@ lycos.com wrote:
Scala seems terse and fast enough, few examples:

http://shootout.alioth.debian.org/gp...co&lang2=scala

Bye,
bearophile


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.

Jun 13 '06 #4
"Tim Daneliuk" <tu****@tundraw are.com> wrote in message
news:nf******** ****@eskimo.tun draware.com...
So it is claimed:

http://www.infoq.com/news/Scala--com...E5864B7319F5EC
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
Jun 13 '06 #5
> 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/Coo.../Recipe/496691
http://www.python.org/dev/peps/pep-0309/ (in 2.5)
http://logix.livelogix.com/ (offline)

Jun 13 '06 #6
> 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
Jun 13 '06 #7

Diez B. Roggisch wrote:
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


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.

Jun 13 '06 #8

Diez B. Roggisch wrote:
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.


Nah! Just a poor passing attempt at humor. Groovy is a great language
too. I should watch out. Maybe Groovy programmers have knives too :-).
http://cardboard.nu/blog/2005_02_02/...scripting.html

Jun 13 '06 #9

Luis M. González wrote:
Diez B. Roggisch wrote:
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


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.

Jun 13 '06 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

220
19206
by: Brandon J. Van Every | last post by:
What's better about Ruby than Python? I'm sure there's something. What is it? This is not a troll. I'm language shopping and I want people's answers. I don't know beans about Ruby or have any preconceived ideas about it. I have noticed, however, that every programmer I talk to who's aware of Python is also talking about Ruby. So it seems that Ruby has the potential to compete with and displace Python. I'm curious on what basis it...
54
6588
by: Brandon J. Van Every | last post by:
I'm realizing I didn't frame my question well. What's ***TOTALLY COMPELLING*** about Ruby over Python? What makes you jump up in your chair and scream "Wow! Ruby has *that*? That is SO FRICKIN' COOL!!! ***MAN*** that would save me a buttload of work and make my life sooooo much easier!" As opposed to minor differences of this feature here, that feature there. Variations on style are of no interest to me. I'm coming at this from a...
699
34295
by: mike420 | last post by:
I think everyone who used Python will agree that its syntax is the best thing going for it. It is very readable and easy for everyone to learn. But, Python does not a have very good macro capabilities, unfortunately. I'd like to know if it may be possible to add a powerful macro system to Python, while keeping its amazing syntax, and if it could be possible to add Pythonistic syntax to Lisp or Scheme, while keeping all of the...
65
5555
by: Amol Vaidya | last post by:
Hi. I am interested in learning a new programming language, and have been debating whether to learn Ruby or Python. How do these compare and contrast with one another, and what advantages does one language provide over the other? I would like to consider as many opinions as I can on this matter before I start studying either language in depth. Any help/comments are greatly appreciated. Thanks in advance for your help.
122
7932
by: seberino | last post by:
I'm interested in knowing which Python web framework is most like Ruby on Rails. I've heard of Subway and Django. Are there other Rails clones in Python land I don't know about? Which one has largest community/buzz about it?
118
6761
by: 63q2o4i02 | last post by:
Hi, I've been thinking about Python vs. Lisp. I've been learning Python the past few months and like it very much. A few years ago I had an AI class where we had to use Lisp, and I absolutely hated it, having learned C++ a few years prior. They didn't teach Lisp at all and instead expected us to learn on our own. I wasn't aware I had to uproot my thought process to "get" it and wound up feeling like a moron. In learning Python I've...
6
3010
by: Chas Emerick | last post by:
This may seem like it's coming out of left field for a minute, but bear with me. There is no doubt that Ruby's success is a concern for anyone who sees it as diminishing Python's status. One of the reasons for Ruby's success is certainly the notion (originally advocated by Bruce Tate, if I'm not mistaken) that it is the "next Java" -- the language and environment that mainstream Java developers are, or will, look to as a...
122
7461
by: Edward Diener No Spam | last post by:
The definition of a component model I use below is a class which allows properties, methods, and events in a structured way which can be recognized, usually through some form of introspection outside of that class. This structured way allows visual tools to host components, and allows programmers to build applications and libraries visually in a RAD environment. The Java language has JavaBeans as its component model which allows Java...
27
2240
by: scott | last post by:
Hi all, I have been looking at the various programming languages available. I have programed in Basic since I was a teenager and I also have a basic understanding of C, but I want something better. Can anybody tell me the benefits and weaknesses of using Python? -- Your friend,
0
9605
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10648
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10389
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10402
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
10135
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
9205
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
6890
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
2
3867
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
3018
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.