Idee einer Programmiersprache

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Idee einer Programmiersprache

    hallo forum,
    dies ist mein erster post :) ich habe eine idee... eine programmiersprache, bei der man bei funktionsdeklarationen die syntax selbst bestimmen kann... also das man z bsp eine funktion so deklariert:

    Quellcode

    1. void convert <char a> to <int &b>

    wie findet ihr die idee??
    lg bidu

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von bidu2004 ()

  • Die Idee ist blödsinn.
    Welche Vorteile ergeben sich daraus? Keine

    Und das würde nicht 10 Jahre dauern... Das würde niemals aufhören.
    Für jede neue Syntax müsstest du dann wieder am Compiler rumfuschen damit er das korrekt übersetzt.
    Und da Softwareentwicklung Teamarbeit ist, würde ich mal ganz stark vermuten, das niemand aus so einem Team
    jedes mal Lust hat sich über irgendeine neue Syntax zu informieren.

    Mal abgesehen davon, dass sich Codestyles schlechter umsetzen lassen, bei einer immer wechselden Syntax.

    Ich glaube nicht das du weist welche Arbeit hinter einem Compiler stecken, bzw. glaube ich nicht das du von der Materie
    viel Ahnung hast.


    Mfg
    nobody
    "Irren ist menschlich. Aber wer richtigen Mist bauen will, braucht einen Computer."
  • naja... stimmt schon aber das ist ja der vorteil... ein bug-feature... finde ich nicht wenn man den parser darauf optimiert muss man keine generelle syntax einbauen... das es verschiedene codestyles gibt ist eher nicht so... man knnte programmieren wie man spricht..... nd dass der compiler nicht zu langsam wird müsste man am anfang der zeileangeben welches framework man benutzt(wenn man mehrere benutzt).... ohne dieses element stimme ich euch zu... z bsp:

    Quellcode

    1. int:define a is 23
    ein bisschen syntax ist schon vorgegeben allerdigs fast nichts....

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von bidu2004 ()

  • Ganz verschweigen möchte ich meine Ablehnung des Grundsatzes gleichsam meiner Vorredner nicht, aber so richtig verstanden habe dein Beispiel nicht (
    void convert <char a> to <int &b>

    )

    Kannst du das nochmal genauer beschreiben, was das genau bedeuten soll ?
    Ist denn deine Idee also vielmehr die hypothetische Umsetzung -trotz der c syntax- noch in der imperativen Welt zu finden ?
  • Die Idee ist voll beknackt. Aus Gründen die Rushh0ur nannte und eines Logikfehlers, würde ich mal sagen.
    Wenn es denn unbedingt eine Funktion für eine Konvertierung sein soll, warum dann void? Damit erreicht man doch dann gar nichts, wenn man den konvertierten Endwert nicht erhält.
    Was würde bei dir dann eine "Konvertierungsfunktion" vom Typ INT zurückgeben? °_°
    Da wäre doch auch eine Doppelung darin, da man den Typ der Funktion als den Typen deklarieren müsste, der in den zweiten 'Klammern' steht, oder nicht?
    Sprich: Eines von beiden muss weg. Beides würde, mehr oder weniger, auf Syntax von schon vorhandenen Sprachen zurückführen.

    MfG
    Check

    PS: So besser? :rolleyes:
  • das ist doch nur ne beispielfunktion... was hättet ihr denn für verbesserungsvorschläge?? die eckigen klammern sollten ein argument darstellen, welches man ohne umschweife einbinden könnte.... wenn man programmiert wie man spricht, braucht man doch keine codestyles?!! ich würde sonderzeichen in funktionen verbieten um den entwickler zu zwingen, so zu programmieren wie man spricht.... die unendliche vielfalt müsste man iwie einschränken.... habt ihr eine idee wie man das umsetzen könnte??
    genau aus diesem grund hab ich den post aufgetan.... dass ich vorschläge habe wie ich nicht nen totallen mist zusammenstelle :D
  • bidu2004 schrieb:

    was hättet ihr denn für verbesserungsvorschläge??....

    ich würde sonderzeichen in funktionen verbieten um den entwickler zu zwingen, so zu programmieren wie man spricht.... die unendliche vielfalt müsste man iwie einschränken.... habt ihr eine idee wie man das umsetzen könnte??
    genau aus diesem grund hab ich den post aufgetan.... dass ich vorschläge habe wie ich nicht nen totallen mist zusammenstelle :D
    Mein Vorschlag: lass es. ;)

    Wenn du Programmierer zwingen willst so zu coden, wie sie sprechen, dann ergibt dann ebenso ein Choas.
    Man braucht etwas "einheitliches", da sich sowas von einem Team besser nutzen lässt.
    Da bringts nicht wenn Entwickler A den Code von Entwickler B bekommt, weil er da noch etwas erweitern muss,
    und nicht ein Ding versteht.

    Und es tut mir leid, aber das wird daraus hinauslaufen das, das der totale mist wird.
    "Irren ist menschlich. Aber wer richtigen Mist bauen will, braucht einen Computer."
  • Runnable schrieb:

    Jetzt gebt ihm doch erstmal die Chance, die Fragen zu beantworten.

    :thumbup:

    Ich denke auch, dass es nich sehr konstruktiv ist, die Idee sofort in 1000 Einzelteile zu zerreissen. Richtig, es wurde nach der persönlichen Meinung gefragt, aber falsch ist es, sofort Anwednungsgebiete und Fälle zu suchen warum es schlecht ist. Man kann eine neue Sprache/Syntax auch einfach auf dem Papier entwickeln und allen öffentlich zugänglich machen, vielleicht ist ein Entwickler später dankbar und greift den ein oder anderen Ansatz auf? Man kann auch einfach nur just4fun so etwas realisieren. Wenn man sich die Liste der esoterischen Porgrammiersprachen anschaut, dann findet man dort genug nonsense. Warum sollte man aus Lernzwecken nicht einfach selber was realisieren?
  • "Checkmateing" schrieb:

    Brainf*ck haut am meisten rein, finde ich.

    Yeah, fand ich auch, ich habe vor einiger Zeit mal einen Brainfuck-Interpreter in Java geschrieben - hat Spass gemacht :)
    Leider gibt es javacore.de nicht mehr, dort hatte ich das gepostet.

    Prinzipiell gibt es IMHO (zumindest aus akademischer Sicht) keinen Grund, nicht noch eine neue Sprache zu bauen, es gibt schon über 2000 und keiner wird irgendeine verurteilen, weil sie nicht populär geworden ist.
    Der Trend ist ja -kA, vlt schon immer gewesen- nützliche Pattern direkt in die Sprache zu integrieren. Google's Go zB- die Integration von althergebrachten CoRoutinen (Go nennt es go routinen :)) == sehr highlevelmässige Unterstützung für parallele Aufgaben. Oder Scala in Hinsicht auf das Decorator Pattern. Oder Erlang mit Blick auf Immutabilität. Ganz prominent C#: events/delegates == Observer Pattern / yield Schlüsselwort == (lazy implementierter) Iterator .......

    Was ich sagen will, vlt hat der Threadersteller einfach eine (durch Erfahrung entsatndene) Idee, ein oft gebrauchtes Muster in eine Sprache einfliessen zu lassen.

    "bidu" schrieb:

    habt ihr eine idee wie man das umsetzen könnte??

    Das ist leichter als du vermutlich denkst; mach dich mal in Richtung/rund um formale Sprachen/Grammatiken, Chromski-Hierarchie, theoretische Informatik schlau, falls du keine Vorlesung darüber gehört hast.
    Dann ist es mit einigen abstrakt formulierten Regeln ganz gut möglich, einen Compiler zu bauen.
    -> yacc (*.ix) / bison (M$) sind zwei von s.g. compiler compilern

    IMHO das Schwierigste bei der Pflege und Weiterentwicklung von Sprachen ist das Problem, Erweiterungen und Verbesserungen so einzubauen, dass jede Folgeversion abwärtskompatibel und legacy Code compilierbar bleibt. Diese Meinung beruht aber nur auf Beobachtung (Java/C#) und nicht auf Erfahrung.