Hat jemand schon Erfahrung in ruby gesammelt?



  • KasF schrieb:

    Was empfiehlt ihr für eine andere Sprache um mal von C++/Java wegzukommen. Was sollte ich mir mal angesehen haben ?
    Python ? Ruby ? etc. kA

    Forth ist eine interessante Sprache. Trotz sehr einfacher Syntax kann man damit sehr komplexe Programme schreiben.
    Lisp und andere funktionale Sprachen sind auch mal einen Blick wert.



  • Hallo

    python-fan schrieb:

    Hat ruby auch so eine umfangreiche standard lib wie python?

    Ja, so ungefähr.

    python-fan schrieb:

    Gibts irgendwas, was ihr als Vorteil gegenüber python anseht

    Auch nach langem Überlegen: Ich kann keinen praktischen Vorteil erkennen.

    python-fan schrieb:

    Gibts irgendwas, was euch an ruby missfält?

    Ja, einiges:

    Die Ruby Syntax. Die vielen @ $ { } << etc., dazu auch noch
    BEGIN .. END. Gefällt mir nicht. Zu viele Sonderzeichen, zuviel überflüssige
    BEGIN..END. Zu viel Perl, zuviel Smalltalk. Python ist für meinen Geschmack einfach eleganter und ästhetischer.

    Für etliche Programmelemente gibt es in Ruby mehrere verschiedene Syntax-Elemente (siehe Hash tables, siehe { }-Notation, siehe ... ).
    So etwas ist meiner Meinung nach überflüssig und kann Anfänger (und wahrscheinlich auch Fortgeschrittene) verwirren.

    In Python gibt es meist nur einen optimalen und eleganten Weg, etwas
    auszudrücken und so soll's auch sein. Wozu braucht man in Ruby etwa ein halbes Dutzend Syntaktische Wege, um Blocks zu verwenden?

    Python befolgt recht konsequent das 'principle of least surprise'.
    Alles funktioniert in Python so, wie man sich unvoreingenommerweise vorstellt, daß es funktionieren sollte, ohne 'Bells and whistles'.
    Im Ergebnis sind Python-Programme üblicherweise knapp, ästhetisch ansprechend und fast von Laien zu verstehen.

    Was Ruby gegenüber Python auszeichnet, sind meiner Meinung nach unter anderem
    zwei Dinge:
    1. Die konsequentere Objektorientierung
    2. Syntax-Elemente, die teils an Smalltalk, teils an Perl erinnern.

    Ich habe mir nach extensiver Python-Anwendung Ruby angesehen und bin nach
    einigen kleinen Probe-Projekten fluchtartig zu Python zurückgekehrt.
    Ich finde nicht, daß die Ruby-spezifischen Features Grund genug sind, die
    Python-typische sprachliche Eleganz und Klarheit zu opfern.

    Ich bleibe bei Python.

    Gruß



  • kleine Bemerkung schrieb:

    Die Ruby Syntax. Die vielen @ $ { } << etc., dazu auch noch
    BEGIN .. END. Gefällt mir nicht. Zu viele Sonderzeichen, zuviel überflüssige
    BEGIN..END. Zu viel Perl, zuviel Smalltalk. Python ist für meinen Geschmack einfach eleganter und ästhetischer.

    Mir geht es genau umgekehrt. Python finde ich ziemlich unästhetisch und unelegant mit der erzwungenen Einrückung, und den schon angesprochenen Unterstrich- und "self"-Orgien. Aber nicht nur die Syntax sondern auch die Objektorientierung halte ich bei Ruby für gelungener.
    Aber über Geschmack sollte man bekanntlich nicht streiten. Entweder man hat ihn oder man hat ihn nicht 😃

    Hier noch ein Link zu Python-Ruby-Unterschiede: http://www.ruby-lang.org/de/documentation/ruby-from-other-languages/to-ruby-from-python/

    tfa



  • Ich empfinde Ruby ebenfalls als schöner als Phyton. Und das "doppelte" Anlegen von Hashes&Co finde ich nicht störend, ganz im Gegenteil, das zeigt doch wie stark die Standardbibliothek in die Sprache integriert ist. So kann man natürlich mit der Sprache arbeiten, aber der darunterliegende Code ist Teil der Standardbibliothek denk man auch direkt benutzen kann.

    Zum Glück kann jeder die Sprache wählen die ihm besser zusagt 🙂



  • Hallo

    wer einmal eine wirklich originelle Programmiersprache kennenlernen will, könnte sich mal Smalltalk ansehen.

    Smalltalk enthält praktisch alles das, was in anderen Sprachen als Neuheit nach und nach eingeführt wurde, nur mit dem Unterschied, daß Smalltalk all' das schon seit etwa 35 Jahren hat.

    Selbst die im Moment angesagtesten und scheinbar revolutionärsten
    Features von Ruby (Blocks, Generatoren, Iteratoren) sind in Smalltalk seit Jahrzehnten in Gebrauch, allerdings ist die Beschreibung der Smalltalk-Syntax nur eine halbe Seite lang (,wenn man es gerne ausführlich hat. Sonst reichen auch ein paar Zeilen).
    Und wenn man Java mit Smalltalk vergleicht ...

    Gruß



  • mastercpp schrieb:

    Forth ist eine interessante Sprache. Trotz sehr einfacher Syntax kann man damit sehr komplexe Programme schreiben.

    'Einfache Syntax' ist gut. Forth hat überhaupt gar keine Syntax. Du schreibst einfach die Befehle (getrennt von Whitespaces) hintereinander weg.

    Ruby kann ich nur empfehlen. Ist eine sehr schöne Sprache und auch besser als Python. An Python stört mich, dass man sein Quelltext nicht so formatieren kann, wie man will.



  • Ok, werden mir dann mal bei Gelegenheit Ruby und Smalltalk anschauen. Später kommt sowas wie Erlang, Haskell, etc. mal sehen.



  • Hallo

    Takumi schrieb:

    'Einfache Syntax' ist gut. Forth hat überhaupt gar keine Syntax.

    Ja, Forth hat schon den optimalen Geek-Faktor 😉
    Kann man definitiv coole Sachen mit machen, wie einen Floating Point Emulator
    auf nur einer Bildschmirmseite Quellcode oder ein OO-System auf einer halben
    Seite.

    Leider notationsmäßig zu weit weg vom Rest der Welt, trotz aller Vorzüge.

    Takumi schrieb:

    Ruby ... Ist eine sehr schöne Sprache und auch besser als Python.

    Aber nicht doch 😉

    Takumi schrieb:

    An Python stört mich, dass man sein Quelltext nicht so formatieren kann, wie man will.

    Das ist für mich eines der schönsten Python-Features.
    Kürzere Programme mit weniger Code; was will man mehr?

    Gruß



  • Takumi schrieb:

    An Python stört mich, dass man sein Quelltext nicht so formatieren kann, wie man will.

    Was stört dich daran? Dass man keine religiöse Flamewars über das Setzen der Klammern starten kann :p 😉



  • lolz schrieb:

    Takumi schrieb:

    An Python stört mich, dass man sein Quelltext nicht so formatieren kann, wie man will.

    Was stört dich daran? Dass man keine religiöse Flamewars über das Setzen der Klammern starten kann :p 😉

    Jo, Leute die nicht wissen, wie sie Klammern setzen sollen, müssen dann eben Python nehmen 🤡


Anmelden zum Antworten