Ratlos, was programmieren
-
vorlkrad, du meinst das jetzt wirklich ernst, ja?
-
Klar meint der das ernst!!
Die Sprache wird V*= heissen, stimmt's?!
Was sind denn die Dinge, die Dich an C++ besonders stören, die Du anders haben möchtest?!?
Wir könnten ja ein Brainstorming dazu in die Wege leiten, und jeder sagt, was ihn noch stört, und Du machst Dir dazu Gedanken, ob es wirklich Sinn hat, das wegzulassen, etc...!
-
Nein der Name der Sprache ist nicht V*
MfG SideWinder
-
Also ich versteh den Witz nicht. Sgt. Nukem sat sie wird v*= heißen, was ich schon nciht verstehe und jetzt sagst du auch noch nei sie wird nicht v* heißen. Habt ihr irgendwo ne gemeime Diskussion laufen und lasst hier jetzt eure Insider los?
-
Helium schrieb:
Also ich versteh den Witz nicht. Sgt. Nukem sat sie wird v*= heißen, was ich schon nciht verstehe und jetzt sagst du auch noch nei sie wird nicht v* heißen. Habt ihr irgendwo ne gemeime Diskussion laufen und lasst hier jetzt eure Insider los?
v* ist, weil namensteile wie ++ oder # so hype sind und v wegen "volkard".
ja, geheime diskussion. daher wußte SideWinder den arbeitstitel "lang1".die diskussion ist auf http://www.coollist.com/group.cgi?id=lang1 und ich kann jeden brauchen, der mitdiskutieren mag.
-
Hi volkard,
würde mich mal interessieren, was für Verbesserungen deine Sprache bieten wird.Liebe Grüße
Real
-
Real schrieb:
würde mich mal interessieren, was für Verbesserungen deine Sprache bieten wird.
nen kleinen einblick bietet der mitschnitt auf www.volkard.de/lang1.txt
-
Volkard Volkard, haste wieder im DOS Editor geschrieben? ISO8859-1[5] und Unicode ist das wohl nicht? Aber solange nur die Umlaute kaputt sind.
b) teile der stl und wohl die ganze c++lib ohne stl wird
reimplementiert mit merh OO-geist im nacken und unter verwendung der
neuen mittel von a). daá mein cout threadsafe und 10-mal so schnell
wie std::cout ist, darf ja eigentlich nicht sein. (10-mal bei
ausgabeumleitung und ausgabe von 1000000 ints. ohne ausgabeumleitung
ca 100-mal, weil ich dann mogeln kann und nur alle 10ms den ganzen
screen neu male). dabei sringen hoffentlich viele wnsche fr a) raus!jo, ein schnelles cout wär geil. Eine Standard Library mit Threads (im boost Style) und Sockets wär noch geil.
a) pr„prozessor fr c++, der "var x=foo()" erlaubt und expandiert zu
"typeof(foo()) x=foo()". auáerdem ist voll n”tig ein foreach und wir
werden sehen, was noch unbedingt sein muá.solange der Preprozessor kleverer ist als der Standard PP. Wobei dann sind wir schnell bei c)
Das mit var hört sich übrigens so an wie der auto Vorschlag für C++0x
c) wenn der pr„proz nicht mehr reicht, wird druck entstehen, nen
eigenen compiler zu bauen. er wird auch c++ als zielsprwche haben. die
weiteren features sind noch unbekannt. sollen berhaupt noch typen
sichtbar sein? wenn man in b) feststellt, daá man IMMER "var" benutzt,
sollten sie evtl wegfallen. „hnliche sachen mehr. bestimmt fallen
teile der kryptischen c-syntax weg.
also lieber "array of 5 ptr to int" statt "int*[5]".
auch wir ein op= void zurckgeben, um nicht wiederverwendet zu werden.
nen rekursiven abstiegsparser zu machen, ist zum glck trivial. der
parsebaum kann ebensoleicht compiliert wie interpretiert weden. hier
schl„gt dann eine sehr wichtige forderung zu:1. bitte ein GCC Frontend, dann hat man gleich gut optimierten Output
2. bitte nicht so ein syntax. Mann, wir sind doch keine BASIC Programmierer. Lass zumindest das of/to weg, dann lieber so 'integer pointer array(5)'d) compilezeitprograme mssen wie laufzeitprogramme m”glich sein! also
alles, was der compiler schon durch hat, ist bereits zur compilezeit
aufrufbar.jo, laufzeit templates fänd ich teilweise recht nützlich. Die More Library (more.sf.net) soll ja so was anbieten. Aber ich hab mir das (leider) noch nicht so detailiert angeguckt und ist wohl auch nur für Unix/GCC
die schrecklche syntax der metaprogramme muss weg.
um genau zu sein, mssen auch "schlsselw”rter" wie for und while
definierbar sein (also auch in der standardlib definiert werden).
for(init,condition,step)command -> {init;while(condition){command;step;}}
oder so.
das wrde schonmal offensichtlich for, foreach, do, while und else auf
if und goto abbilden. fraglich ist, wie weit man das treiben kann.das wär geil. Dann müsste man aber im Compiler ein wenig mogeln um das trotzdem noch gut hinzubekommen
b2) es muss ein sehr gutes forum her, um ber die ganzen sachen zu
reden. vermutlich in b) geschrieben, den perl, php und python
sucken enorm.jo, nen Wiki wär auch geil. (und eine vernünftige Webprogrammiersprache würde mich auch freuen ;))
Ich werd die Entwicklung aber auf jeden Fall beobachten
<...>
-
a) pr„prozessor fr c++, der "var x=foo()" erlaubt und expandiert zu
"typeof(foo()) x=foo()". auáerdem ist voll n”tig ein foreach und wir
werden sehen, was noch unbedingt sein muá.Zu dem Thema vielleicht einfach mal die Sprache Scala ansehen.
also lieber "array of 5 ptr to int" statt "int*[5]".
Das ist zu freakig.
Söner wäre was in dem Stil:array[ptr[int]][5]
Naja, so in der Richtung jedenfalls.
die schrecklche syntax der metaprogramme muss weg.
um genau zu sein, mssen auch "schlsselw”rter" wie for und while
definierbar sein (also auch in der standardlib definiert werden).
for(init,condition,step)command -> {init;while(condition){command;step;}}
oder so.Auch hier könnte ein Blick auf Scala nichts schaden. Du kannst ein C-artiges while 1:1 nachbilden (ist dort auch Teil der Standard-Lib).
das wrde schonmal offensichtlich for, foreach, do, while und else auf
if und goto abbilden. fraglich ist, wie weit man das treiben kann.*arg!* Wieso das? Lieber einen Compiler, der ordentlich mit Tailrecursion umgehen kann und dann ein funktionaler Ansatz.
Für komplexere Schleifen, etc. wäre natürlich auch ein BETA-Ansatz möglich. Allgemein finde ich den Ansazt von BETA recht schön. Nicht für jeden scheiß ein eigenes Konstrukt; Klassen, funktionen, kontanten, Exceptions, ... Warum nicht alles in einem einzigen einheitlichen Konstrukt vereinen.um nen baum mit cout auszugeben, muá gehen:
foreach x in tree
cout<<xpreorder, inorder, postorder? Ich nehme mal an es geht dann nur inorder.
-
diskussionen darüber wären mir in der liste lieber.
-
Noch Zwei Vosrchläge
also lieber "array of 5 ptr to int" statt "int*[5]".
Wie wärs noch wenn man die Grenzen à la Pascal definieren könnte.
Array [1..5] of Pointer to Integer
Ein gescheites Modulkonzept für deine Sprache wäre auch nicht schlecht. Hab nämlich kein Bock mehr auf das antiquierte Zeug von C/C++. Das könnte gleichzeitig Linkerfehler und Compilezeiten runterschrauben.
Servus
-
X schrieb:
Noch Zwei Vosrchläge
also lieber "array of 5 ptr to int" statt "int*[5]".
Wie wärs noch wenn man die Grenzen à la Pascal definieren könnte.
Array [1..5] of Pointer to Integer
...
Servuslol