"java suck"



  • u_ser-l schrieb:

    wie eine gute Programmiersprache aussieht, zeigt die relativ neue Programmiersprache Cobra von cobra-language..com:

    einfache Python-ähnliche Syntax, wahlweise statisch oder dynamisch typisiert, design-by-contract, Bytecode. Zum Vergleich mit java sage ich jetzt nichts.

    Nimm doch lieber gleich eine richtige Programmiersprache mit der man auch effizient Arbeiten kann: python.

    Oder eine Sprache, in der du so tun kannst, als ob du effektiv wärst:
    Java.

    Oder vielleicht eine Sprache, in der du effektiv Programmieren musst, um nicht innerhalb der ersten wochen zu verzweifeln, wobei am ende meist eh nix effizientes rauskommt (in Anbetracht des zeitaufwandes):
    C++



  • Python is broken by design.
    Cobra wird über den Zustand der Irrelevanz nie hinauskommen, wurde sogar aus Wikipedia gelöscht: http://de.wikipedia.org/wiki/Wikipedia:Löschkandidaten/26._November_2008#Cobra_.28Programmiersprache.29_.28gel.C3.B6scht.29

    Man sollte gleich das Original nehmen: Groovy!



  • qwertzu schrieb:

    Cobra wird über den Zustand der Irrelevanz nie hinauskommen, wurde sogar aus Wikipedia gelöscht

    DAS hat gar nichts zu bedeuten



  • Löschipedia sucks schrieb:

    qwertzu schrieb:

    Cobra wird über den Zustand der Irrelevanz nie hinauskommen, wurde sogar aus Wikipedia gelöscht

    DAS hat gar nichts zu bedeuten

    Niemand interessiert sich für den Quatsch. :p



  • die Zeit ist reif für eine Sprache mit der Typisierungs-Flexibilität und der eleganten Syntax von Esterbrook's Cobra.

    in der englischen wiklpedla existiert der Eintrag übrigens.



  • u_ser-l schrieb:

    die Zeit ist reif für eine Sprache mit der Typisierungs-Flexibilität und der eleganten Syntax von Esterbrook's Cobra.

    in der englischen wiklpedla existiert der Eintrag übrigens.

    Also ich habe eben in den wikipedia Eintrag geschaut.

    Ich fasse mal zusammen:
    "It is strongly influenced by Python," -> okay hat sich was von python und paar anderen Sprachen was abgeguckt. Nichts neues.

    "and runs on the Microsoft .NET " -> BAMM, und schon hat cobra (unnötigerweise) die Vorzüge einer portablen Sprache verspielt. 👎

    "Appeared in 2006" -> Muss ja echt ausgereift sein.

    "It supports both static and dynamic typing." -> Haut mich jetzt nicht vom Stuhl. Bei der dynamischen Typisierung kannst du immer noch auf den Typ testen. In python kannst du dir beispielsweise (wenn gewünscht) (Funktions-)dekoratoren erstellen, die für dich den typ der Argumente oder des Rückgabewerts überprüfen/festlegen und bei Bedarf ne Exception werfen, wenn der Typ nicht passt. Funktionsdekoratoren sind nicht umständlicher als die explizite Angabe des Typs. Wozu man hier auch noch unbedingt statische Typisierung braucht, ist mir nicht klar.

    Und naja, in dem wikipediaartikel befindet sich in der "Features"-Liste auch nichts neues, was einen dazu bewegen könnte diese Sprache zu erlernen.

    👍 Wieder eine "neuartige" Sprache die man getrost mit einem müden Gähnen vernachlässigen kann.

    EDIT: Auch noch witzig:
    Unter den "Features" stand: "shebang line (#!)" 😃 Tolles feature.
    Das normalste auf der Welt unter den unix-scripten.



  • warten wir's ab 🙂

    Ganz unabhängig davon aber ist schnelle Popularität nicht unbedingt der beste Indikator für die Qualität einer Sprache.

    Wie populär war LISP in den frühen 60er Jahren? Trotzdem ist LISP eine der paar einflußreichsten Sprachen überhaupt. Java andererseits war schnell populär.



  • u_ser-l schrieb:

    Ganz unabhängig davon aber ist schnelle Popularität nicht unbedingt der beste Indikator für die Qualität einer Sprache.

    Jo.

    u_ser-l schrieb:

    Wie populär war LISP in den frühen 60er Jahren? Trotzdem ist LISP eine der paar einflußreichsten Sprachen überhaupt. Java andererseits war schnell populär.

    LISP ist auch eine tolle Sprache mit vielen tollen Konzepten, welche (wie du bereits erwähnt hast) von anderen Sprachen übernommen wurden. LISP hat sich seinen guten Ruf verdient.

    Zur Verbreitung von LISP hat auch die Tatsache beigetragen, dass es damals gerne als erste Programmiersprache in den USA gelehrt wurde.

    Jedoch darfst du nicht vergessen, dass es heute ein deutlich breiteres Spektrum an Programmiersprachen gibt. Und da muss sich cobra erst beweisen.

    Und wer braucht schon eine Programmiersprache die keine neuen (erwähnenswerten) Konzepte bietet. Cobra hat laut wikipedia das meiste von python abkopiert und außerdem noch hier und da von anderen Sprachen abgekupfert. Toll.

    Wenn es schon so python-ähnlich ist, warum soll ich dann cobra verwenden und nicht python? Python ist portabel, ausgereift und weist eine beachtenswerte Verbreitung auf. Zudem existieren Massenhaft bindings zu bestehenden libs/APIS/Frameworks/engines, sodass ich normal nie in die Situation gelange, wo mir etwas fehlt. Außerdem gibt es eine nette community.

    Und wenn du meinst, dass dir ".NET" an python fehlt:
    Nicht jeder will .NET.
    Und derjenige, der .NET will, der wird eher auf C# zurückgreifen als auf cobra. btw: Man kann python auch in C# einbinden (IronPython)



  • ganz klar, die zukunft gehört Perl 6 👍

    multiple implementierungen -> eine spec. -> multiple laufzeitumgebung
    ( läuft sogar auf java :p )

    nichts ist wahr, alles ist erlaubt 😉



  • Cobra wurde unter anderem auch von Boo inspiriert. Zu Boo muss ich sagen (was man in dem Artikel so sieht), das hätte auch Ruby sein können. Hätte mir jemand das Code-Snippet hingelegt ohne zu sagen welche Sprache das ist hätte ich wie aus der Pistole geschossen "Ruby" geantwortet (mit Syntaxfehler^^).



  • u_ser-l schrieb:

    die Zeit ist reif für eine Sprache mit der Typisierungs-Flexibilität

    Hat Groovy - falls man glaubt das wirklich zu brauchen.

    und der eleganten Syntax von Esterbrook's Cobra.

    Über Geschmack kann man nicht streiten. Entweder man hat ihn oder man hat ihn nicht. Wenigstens scheinen sie im Gegensatz zu Python das völlig unnütze "self" weggelassen zu haben.

    in der englischen wiklpedla existiert der Eintrag übrigens.

    Das ist aber sehr wenig. Die Homepage und das dazugehörige Forum sind auch nicht gerade aufregend, dafür dass es Cobra schon seit 2006 geben soll.



  • Optimizer schrieb:

    byto schrieb:

    C++-Progger schrieb:

    Wie sinnvoll ist es denn bitte Objekte nach Identität und nicht nach Gleichheit zu hashen?

    Objekte werden in Java nach Gleichheit gehasht. Aber der Hash von Arrays geht halt per Default nicht auf die Elemente.

    Per default wird nach Object.hashCode() gehasht und das macht es, wenn man es nicht überschreibt, für die Identität. Ebenso wie equals().

    Ja, aber fast jede Klasse aus der Java API überschreibt equals/hashcode mit einer Implementierung, die auf Gleichheit geht.



  • cobra=aa schrieb:

    Und wer braucht schon eine Programmiersprache die keine neuen (erwähnenswerten) Konzepte bietet.

    viele, wenn nicht die meisten, populären Sprachen enthalten u.a. Zusammenstellungen von Konzepten, die es schon vorher gab. C hat viel von BCPL und Algol, C++ von Simula und C, Die richtige Mischung macht's eben.

    python-Syntax + contracts + statisch/dynamische Typisierung + mono
    

    scheinen mir im Moment die richtigen Ingredienzien für eine praxistaugliche Sprache zu sein. Darauf warten doch "alle", oder nicht ?



  • Nein.



  • immer diese negativen Wellen 😃



  • u_ser-l schrieb:

    Darauf warten doch "alle", oder nicht ?

    Nein.

    u_ser-l schrieb:

    cobra=aa schrieb:

    Und wer braucht schon eine Programmiersprache die keine neuen (erwähnenswerten) Konzepte bietet.

    viele, wenn nicht die meisten, populären Sprachen enthalten u.a. Zusammenstellungen von Konzepten, die es schon vorher gab. C hat viel von BCPL und Algol, C++ von Simula und C, Die richtige Mischung macht's eben.

    python-Syntax + contracts + statisch/dynamische Typisierung + mono
    

    scheinen mir im Moment die richtigen Ingredienzien für eine praxistaugliche Sprache zu sein.

    Praxistauglich? Bis jetzt hat cobra garkeine praxis.

    python-Syntax + contracts + statisch/dynamische Typisierung + mono
    

    Was will ich mit cobra, wenn ich python haben kann und kein mono brauche. zudem ist mono zur Zeit eh unbrauchbar.
    Wer .NET braucht wird eh C# & co zurückgreifen und das richtige .NET benutzen...

    Aber ne warte, halt! Ich habe eine sensationelle Idee:
    ich werde cobra nehmen und inline-assembly intergrieren. Eventuell liefer ich dann noch ein ebay-interface mit. Das ganze veröffentliche ich als Weltneuheit (11elf) unter dem Namen "Blindschleiche".



  • cobra=aa schrieb:

    Und wer braucht schon eine Programmiersprache die keine neuen (erwähnenswerten) Konzepte bietet. Cobra hat laut wikipedia das meiste von python abkopiert und außerdem noch hier und da von anderen Sprachen abgekupfert. Toll.

    Hier ich und bestimmt noch weitere Millionen an Programmierer, wenn die neue Sprache die Nachteile in den Bibliotheken, der Build-Umgebung und der IDE der anderen Sprachen eleminiert. Die Features einer Sprache sind sowieso eher zweitrangig. Wieso ist Java so beliebt, obwohl es keine Operatorueberladung, Templates, Closures usw. bietet? Weil man, im Gegensatz zu anderen Sprachen die das alles bieten, mit Java arbeiten kann. Es hat eine sehr gute Standard-API, ist frei und kostenlos, ist portabel und mit Java wurden viele Nachteile von C/C++ elemeniert.

    Was eine Sprache ausmacht ist wie gut man mit der Sprache in ihrem Einsatzgebiet arbeiten kann, nicht ihre Sprachfeatures. Deswegen wird z.B. D auch eine Nischensprache bleiben und deswegen finde ich C++ einfach nur noch ueberladen. Die Prioritaeten einer Sprache sind eher:
    - die Bibliotheken die verfuegbar sind
    - die Build-Umgebung
    - die IDE+Debugger



  • DEvent schrieb:

    Wieso ist Java so beliebt, obwohl es keine Operatorueberladung, Templates, Closures usw. bietet? Weil man, im Gegensatz zu anderen Sprachen die das alles bieten, mit Java arbeiten kann.

    das auch, aber java paßte zeitlich gut zum beginnenden Internet-hype 1995, und das zu der damaligen Zeit schon lange vorhandene smalltalk-System, das Operatorueberladung, reine OO, closures und alles das bietet, war in Syntax und IDE zu revolutionär für den an C, Basic, Perl usw. gewöhnten Massengeschmack, außerdem genoß java "marketingtechnische" Vorteile.



  • DEvent schrieb:

    Wieso ist Java so beliebt, obwohl es keine Operatorueberladung, Templates, Closures usw. bietet?

    Java hat schon eine Art Closures, nämlich nicht-statische innere Klassen.



  • Was eine Sprache ausmacht ist wie gut man mit der Sprache in ihrem Einsatzgebiet arbeiten kann, nicht ihre Sprachfeatures. Deswegen wird z.B. D auch eine Nischensprache bleiben und deswegen finde ich C++ einfach nur noch ueberladen. Die Prioritaeten einer Sprache sind eher:
    - die Bibliotheken die verfuegbar sind
    - die Build-Umgebung
    - die IDE+Debugger

    An dieer Stelle möchte ich einfach mal die Frage in den Raum werfen, ob jemand Erfahrungen mit Scala (http://www.scala-lang.org/) gemacht hat. Gefällt mir von dem was ich gelesen habe sehr gut, nur hab ichs noch nie in der Praxis ausprobieren können.
    (zum Zitat: in dem Fall sind die Bibliotheken die Javabibliotheken + ein paar Scalabibliotheken. IDE nutze ich eh nur einen Editor und Debugger.. naja, müsst ich nochmal nachschauen - insofern kann ich mich hier auf die reine Wahl der Sprachfeatures konzentrieren.)


Anmelden zum Antworten