# Python vs Ruby



## .:AM:. (10. Jan 2007)

Hi zusammen,

auf der Suche nach einer interpretierten plattformunabhängigen OO Programmiersprache bin ich auf Python und Ruby gestossen. Da beide Sprachen in vielen Bereichen ähnlich erscheinen(und auch die selben Ziele verfolgen) wollte ich euch nach den positiven, sowie negativen Eigenschaften beider Sprachen im Vergleich fragen.

Klar ausgedrückt: Für welche Sprache würdet Ihr euch entscheiden? Und (vor allen Dingen) warum?  :wink: 

Gruß
AM


----------



## hupfdule (10. Jan 2007)

Python ist hierzulande (Europa und auch Amerika) verbreiteter. Daher eher python. Das ist aber auch der einzige Grund.


----------



## Hilefoks (10. Jan 2007)

Mir persönlich gefällt die Python-Syntax besser als jene von Ruby. 

Einen echten Grund für oder gegen eine der beiden Sprachen gibt es aber sicher nicht. Ruby ist durch Rails e.v. etwas "besser" (weil bekannter) für die Webentwicklung. Python findet hingegen viel Anwendung als Scriptsprache zur Systemadministration (Bsp. Portage in Gentoo) oder in Anwendungen (OpenOffice, KOffice, Blender, Gimp, ...).  Dennoch lässt sich Ruby ebenso gut für das Scripten von Anwendungen einsetzen, sowie auch Python in der Webentwicklung (siehe Zope, Trac, ...). 

MfG,
Hilefoks


----------



## Guest (13. Feb 2007)

.:AM:. hat gesagt.:
			
		

> Hi zusammen,
> 
> auf der Suche nach einer interpretierten plattformunabhängigen OO Programmiersprache bin ich auf Python und Ruby gestossen. Da beide Sprachen in vielen Bereichen ähnlich erscheinen(und auch die selben Ziele verfolgen) wollte ich euch nach den positiven, sowie negativen Eigenschaften beider Sprachen im Vergleich fragen.
> 
> ...


Phyton oder halt Java was ja nicht wirklich eine Compilersprache ist sondern eher in die Ecke der interpretierenden Sprachen gehört.


----------



## Jockel (13. Feb 2007)

Guest hat gesagt.:
			
		

> Phyton oder halt Java was ja nicht wirklich eine Compilersprache ist sondern eher in die Ecke der interpretierenden Sprachen gehört.


Man möge mir mal bitte "Compilersprache" definieren, bzw. den Unterschied zu einer interpretierten Sprache erläutern.


----------



## Guest (13. Feb 2007)

Jockel hat gesagt.:
			
		

> Guest hat gesagt.:
> 
> 
> 
> ...


Bei einer interpretierenden Sprache liegt das Programm nicht als allein ausfühbare Datei vor, sondern muss erst Stückchen für Stückchen in Echtzeit in Maschinencode zur Laufzeit übersetzt werden.

Bei einer Sprache die compiliert wird liegt das Ergebnis als ausführbare Datei vor und es kommuniziert direkt mit der Hardware oder der API des Betriebssystems.

Der Bytecode von Java wird zwar compiliert aber halt nicht für die CPU oder das OS sondern für seine virtuelle Welt der VM, welche dann beim Ausführen jedesmal neu den Bytecode in Maschinencode interpretieren muss, das macht es dafür aber recht gut und flink je nachdem was man programmiert.

Deswegen ist Java eigentlich ein Zwitter aus beiden Welten, aber für meine Auffassung mehr an einer interpretierenden Sprache anzusiedeln, da mehr interpretiert als compiliert wird. 

Beides hat seine Vor- und Nachteile.


----------



## Lim_Dul (13. Feb 2007)

Wobei die Grenzen mittlerweile deutlicher flexibler und weniger genau sind als früher, da beispielsweise mittels JIT bei java dann tatsächlich echter Maschinencode erzeugt werden kann und es afaik auch Compiler für Python gibt.


----------



## AlArenal (13. Feb 2007)

Die Frage ist doof! 

Was will der Autor denn damit machen?

Wer mal mit Perl gespielt hat oder mit Smalltalk, der wird in Ruby schnell klarkommen. Python sieht auf Anhibe mal schicker aus, weil die Einrückung Teil der Syntax und daher zwingend notwendig ist.

Python hat vielleicht die umfangreichere Lib und die Python-Entwickler stehen auf gutes Design. Ruby ist aber viel geekiger und irgrndwie gerade seeeehr IN. Sun kauft die beiden JRuby-Entwickler ein, Apple wird Max OS X ab 10.5 standardmäßig mit Ruby und Ruby on Rails ausliefern, im Gegenzug findet man Python als eine Art Open Source VB an vielen Stellen als integrierte Skriptsprache ...

Das Python ausgereifter sein soll, ist auch ne Geschmacksfrage. Python hat vielleicht derzeit eine noch größere Community, aber Ruby gibts nun schon seit.. ähm.. 15 oder so Jahren?

Da sich bekanntlich der Dritte freut, wenn sich zwei streiten: Saug dir Squeak, lern Smalltalk!


----------

