Was kommt nach der Objektorientierung?
-
redrew99 schrieb:
hustbaer schrieb:
Um programmieren zu können muss man sowieso schon viele Dinge können.
Willst du noch eine Fähigkeit hinzufügen, die man bloss braucht weil sich jemand eingebildet hat dass 3D Tools kuhl wären?Die möglichen Vorteile einer 3d-Programmierung hatte ich schon genannt.
Um Coolness geht es nicht.Hast du? Dann hab' ichs nicht gesehen. Also keine konkreten Vorteile. "Könnte sein dass man damit was besser machen kann" (sinngemäss) ist auch so ein "Totschlagsargument" wie du es nennst.
redrew99 schrieb:
hustbaer schrieb:
Wie viel das in der Praxis kostet, und was daraus im Endeffekt dann für ein Schaden entsteht ist eine ganz andere Sache.
Sry, aber genau die gleiche Kritik kann ich bei jeder Programmiersprache anwenden. Das ist einfach nur ein typisches Totschlagsargument.
Es mag ein Totschlagsargument sein, aber es stimmt halt auch. Nicht nur hier, sondern auch "allen Programmiersprachen".
Wobei ich einen grundlegenden Unterschied sehe: Das Erlernen einer neuen "klassische" Programmiersprache erfordert in den wenigsten Fällen komplett neue Fähigkeiten.
Das Erlernen bzw. Verwenden einer "3D Programmierpsrache" erfordert dagegen dreidimensionales Vorstellungsvermögen - und das ist eine Fähigkeit die Programmierer mit "klassischen" Programmiersprachen kaum brauchen.Es geht also nicht nur um den Aufwand etwas ganz neues zu lernen, sondern auch bzw. viel mehr darum, dass du zusätzliche "Fähigkeiten" voraussetzt. Und mit "Fähigkeiten" meine ich etwas was nicht unbedingt erlernbar ist. Der eine kanns, der andere nicht, und wird's auch nie lernen.
Damit engst du den Kreis derer die sich zum Programmierer eignen (mMn. stark) ein.
ps: es hat schon einen Grund dass die "dummen" (=einfach zu erlernenden) Programmiersprachen wie Java und C# so beliebt sind
-
redrew99 schrieb:
Xin schrieb:
Vielleicht kennst Du das Basketball-Experiment: http://www.youtube.com/watch?v=2pK0BQ9CUHk
Nein, kannte ich bislang nicht, die Problematik allerdings schon.
(Ist übrigens ganz lustig, natürlich habe ich die Person, oder was auch immer dazwischen läuft, nicht gesehen.)
Das Beispiel ist aber trotzdem sehr gut. Denn die Wahrnehmung funktioniert nur aufgrund der großen Ähnlichkeiten und der Bewegungsgeschwindigkeit der Teilnehmer nicht.Die Bewegungsgeschwindigkeit von Quelltext ist 0 - sofern nicht gescrollt wird.
Das sollte auch so bleiben, ich würde es jedenfalls als unschön finden, wenn sich Algorithmen vor mir verstecken...redrew99 schrieb:
Xin schrieb:
Ich arbeite im CAD Bereich. Unsere Kunden wollen 3D Modelle sehen; aber planen wollen sie in 2D. Es steckt schon im Wort. Ein Plan ist planar.
Modellierung erfolgt (bisher) immer nach Plan oder ist statisch.Das glaube ich auch sofort, aber nur, weil man (noch) nicht wirklich in 3d planen kann.
Man wird nie in 3D planen können, sondern nur modellieren. ^^
Und hier kommt eben der Punkt, dass wir nicht 3D sehen könne, also den Überblick verlieren werden.
Wir haben nunmal nur 2D Sinnesorgane. Und damit stellen wir uns eine 3D Welt vor. Wenn wir hinter ein Objekt greifen wissen wir aber nicht, ob da die Flasche Wasser, ein nicht isoliertes Stromkabel oder ein Wurmloch ist.
Wir wissen, dass unser Hirn mit auf 2 * 2D arbeitet. Wir kombinieren Zusatzinformationen (Hinder dem Objekt fühlt es sich nach Glas an, es schmerzt und riecht nach verbrannten Fleisch oder die Hand erscheint an einer anderen Stelle im Zimmer. Vorstellen können wir uns das nicht. Für das Wurmloch bräuchten wir eine vierte Dimension, in der wir die drei ertastbaren Dimensionen krümmen könnten wie ein Blatt Papier im 3D-Raum, so dass sich der 3D-Raum wieder berührt. Verstehst Du, was ich erkläre? Kapiert kein Mensch.
Ich verstehe nichtmals alle Algorithmen im 2D.redrew99 schrieb:
Richtige Profis sollten das aber packen. Natürlich nicht von heute auf morgen.
Ich habe nur ein Diplom der Informatik, arbeite in CAD-Bereich. Ich habe nicht das Gefühl, dass ich eine 3D-Programmierung in den nächsten 5 Jahren verkraften würde.
redrew99 schrieb:
Wäre halt eine größtenteils neue Programmiersprache.
Eigentlich wäre es auch keine Sprache mehr. Eine Sprache ist eindimensional, es sei denn, Du liest Postings kursorisch. Das kann ich nicht, weil meine Wahrnehmung eingeschränkt ist (der Daumen der ausgestreckten Hand). Du liest also die Zeile in einer Dimensionsrichtung ab.
Du kannst ja auch nicht zwei Sprechern gleichzeitig zuhören. Alles eindimensional.Der erste Schritt wäre also erstmal eine 2D-Sprache zu entwickeln - und zu begründen.
Wir benutzen zwei Dimensionen für Text, weil die Zeilenlänge begrenzt ist. Welchen Vorteil bringt
die dritte Dimension in der Semantik einer Sprache?redrew99 schrieb:
Xin schrieb:
Eins der ersten Programme, die ich in meiner Sprache laufen lies, war der Quicksort-Algorithmus, der ein Char-Array sortierte.
Könntest Du mir beschreiben oder zeichnen, wie Du Dir einen Sortieralgorithmus in 3D programmierst?
Ein simples Beispiel:
Man nehme zwei Behälter, einen gefüllten, einen leeren, dazwischen ein Sieb und öffne den ersten.Über komplexe Algorithmen müßten sich Mathematiker Gedanken machen,
im Prinzip müßten aber durch die dritte Dimension auch effektivere Sortieralgorithmen möglich sein.Was ist ein Behälter? Was wird hier sortiert? Wie erkläre ich "Behälter" und "Sieb" meiner CPU?
Eine Progammiersprache ist - auch wenn diese Ansicht derzeit deutlich aus der Mode gekommen ist - immer Vermittler zwischen Entwickler und Maschine. Und eine Sprache muss effizient sein, denn Brute-Force-Sprachen, wie Prolog sind zwar geniale Ideen, aber im Alltag trotzdem nicht zu gebrauchen.
hustbaer schrieb:
ps: es hat schon einen Grund dass die "dummen" (=einfach zu erlernenden) Programmiersprachen wie Java und C# so beliebt sind
Du sprichst mir aus der Seele.
-
Richtige Profis sollten das aber packen
Komische Aussage. Rate mal, warum Java so erfolgreich ist. Damit fuer die meisten Programmteile eben keine Profis* erforderlich sind.
*Profis: Mag jeder anders definieren.
Brute-Force-Sprachen, wie Prolog sind zwar geniale Ideen
Hust ... Manche steuern damit Militaerhubschrauber. Und ja, Lisp war im Weltall. Kann das Java von sich behaupten?
-
knivil schrieb:
Und ja, Lisp war im Weltall. Kann das Java von sich behaupten?
Ohne ein Beispiel nennen zu können würde ich darauf wetten.
Die (relativ kleine) Firma in der ich arbeite hat vor wenigen Jahren Messgeräte für die ISS geliefert. Die waren unabhängig von den Systemrelevanten Geräten und wurden "nur" für Experimente verwendet. Bald startet eine Neue Mission, diesmal auch noch mit Software aus unserm Haus die auf einem Notebook betrieben wird und die Messgeräte steuert.
Der ESA ist es scheiß egal welche Sprache da zum Einsatz kommt, solange sehr gut Dokumentiert wird. V.a. bei Änderungen. Hochgeschickt wird eine abgewandelte Delphi-Software weil sie seit Jahren auf der Erde im Einsatz ist (auch wenn sie totaler Müll ist, unter uns gesagt). Die Alternative wäre C# gewesen nur ist die Basissoftware dazu leider noch nicht so lange im Einsatz und das zählt für Änderungsmanagement-Junkies mehr als die Qualität.
Was ich sagen will: Es hätte genauso gut Java sein können und ich bin mir sicher dass da oben etliche Millionen Zeilen Code jeder bekannten Sprache im Einsatz sind.
-
aus unserm Haus die auf einem Notebook betrieben wird und die Messgeräte steuert
Das meinte ich nicht.
Der ESA ist es scheiß egal welche Sprache da zum Einsatz kommt, solange sehr gut Dokumentiert wird. V.a. bei Änderungen.
Nein, man wird wohl nicht Prolog verwenden um ein Mikroskop anzusteuern. Das alles sind keine kritischen Systeme.
Hier ein paar Links: http://www.flownet.com/gat/jpl-lisp.html ... Debugging a program running on a $100M piece of hardware that is 100 million miles away is an interesting experience ... Nein, ich habe nicht alles gelesen.
Den Hubschrauber suche ich noch ...
-
relativ unabhängig von dem aktuellen gespräch:
knivil, ich finde 90% deiner beiträge zum kotzen.
meistens sind sie einfach nur wertlos.
einfach mal die fresse halten...
-
qweerterterzz schrieb:
meistens sind sie einfach nur wertlos.
Deswegen sind sie auch umsonst.
-
hustbaer schrieb:
Hast du? Dann hab' ichs nicht gesehen. Also keine konkreten Vorteile. "Könnte sein dass man damit was besser machen kann" (sinngemäss) ist auch so ein "Totschlagsargument" wie du es nennst.
Nicht einmal das. Alles was redrew an Beispielen bringt, seh ich ganz klar als riesige Handicaps, sollte es überhaupt irgendwie realisierbar sein.
-
Xin schrieb:
Warum sollte ich das hier erklären, wenn einerseits "tl;dr" und "Hier klingt alles unheimlich vage" aufeinander trifft. Es ist doch Zeitverschwendung. Und genau das ist der Regelfall in allgemeinen Foren, die sich nicht auf genau dieses Thema spezialisiert haben.
Dies ist nicht das richtige Forum dafür, ich habe es bereits vor ein paar Jahren ausprobiert.
Gut, dann schreibe doch mal einen externen Artikel in dem du uns deine Sprache erläuterst und dann setzt du hier einen Link zu dem Artikel rein.
Vorteil für dich:
Du mußt den Artikel nur einmal schreiben und kannst ihn immer wieder, auch in anderen Foren, posten, wenn mal wieder nach einer Erklärung für deine Programmiersprachenidee gefragt wird.
Wenn du dem Artikel noch eine History oder Versionsgschichte anfügst, dann kannst du sogar kritische Stellen im Artikel überarbeiten.
-
Feriuko schrieb:
Gut, dann schreibe doch mal einen externen Artikel in dem du uns deine Sprache erläuterst und dann setzt du hier einen Link zu dem Artikel rein.
Ein Tutorial auf der Projektwebsite dokumentiert feststehende Features. Inkl. Versionsgeschichte.
Den Link werde ich bekannt geben, sobald ich eine Version veröffentliche, sonst könnte man ja nix damit anfangen.