Ankündigung

Einklappen
Keine Ankündigung bisher.

if -> mehrere Anweisungen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #16
    Zitat von enertegus Beitrag anzeigen
    Ich versteh dein Post nicht ganz: Meinst Du: Der Strichpunkt sollte immer erlaubt sein, quasi als Ende-Markierung wie bei C?
    Ja, zum Beispiel. Ist das so schwer zu verstehen?
    BR
    Marc

    Kommentar


      #17
      Zitat von saft6luck Beitrag anzeigen
      Ja, zum Beispiel. Ist das so schwer zu verstehen?
      Naja, es ist dann ja weniger ein Verständnisproblem als mehr ein Wunsch nach einem anderem Verhalten. Ich war mir jetzt da gar nicht mehr sicher, ob Du das Verhalten buggy betrachtest oder nur ungewohnt.
      offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
      Enertex Produkte kaufen

      Kommentar


        #18
        Der Syntax ist unnötig umständlich (nicht ungewohnt!), bzw. man muss sich das Leben doch nicht unnötig kompliziert machen, oder?
        BR
        Marc

        Kommentar


          #19
          Ich geb jetzt auch noch meinen Senf dazu:

          Warum kann man nicht ein CRLF, CR, LF oder ; einfach als Ende eines
          Befehles akzeptieren?

          Was ist so schlimm an einem einzelnen ; ?
          Oder an sowas: ;;;;;; ;; ;;;;; ;;; ;;;;; ?

          Wenn zwischen zwei Semikolon nix oder Leerzeichen oder Tabs stehen, dann kann der Compiler die einfach ignorieren. Das ist kein grosser Aufwand.

          Und das kann man noch weiter spinnen:

          Warum muss ich mehrere Anweisungen zwischen { } setzen?
          Ich muss ja sowieso ein if .. then .. endif schreiben und kann ziemlich einfach alles was zwischen diesen Keywords liegt, als einen Block dem then- oder else- Teil zuordnen.
          Und warum darf das } nicht alleine stehen?

          Pascal Syntax war schon vor 20 Jahren deutlich verständlicher und einfacher strukturierbar, und Pascal gilt heute nicht mehr als das Optimum.

          Aus meiner Sicht greift das "EibPC ist Zeilenorientiert"-Argument nicht.
          Warum kann der Compiler nicht einfach ein ; zwischen zwei Anweisungen in einer Zeile als "neue Zeile" akzeptieren, wenn das "Zeilenorientiert" so fundamental wichtig ist?

          Die Leistungsfähigkeit des EibPC ist immens!
          Die Syntax ist verbesserungs-/vereinfachungswürdig.

          Und mit Yacc o.ä. gibt es ausreichend Tools, mit denen man seinen eigenen Compiler relativ einfach umsetzen kann, allerdings gebe ich zu, dass ich den Aufwand, den es bedeutet, das Validierungsschema über Yacc zu "verwursten" nicht bewerten kann.
          Gruss Pio

          Kommentar


            #20
            Zitat von pio Beitrag anzeigen
            Und mit Yacc o.ä. gibt es ausreichend Tools, mit denen man seinen eigenen Compiler relativ einfach umsetzen kann, allerdings gebe ich zu, dass ich den Aufwand, den es bedeutet, das Validierungsschema über Yacc zu "verwursten" nicht bewerten kann.
            Es ist ja eben kein Compiler im klassischem Sinn, sondern es werden Objekte in eine Art Baum-Abhängigkeit gebracht.
            Zudem ist da noch die Sache mit den Datentypen, die eine "Vererbung" der Datentypen in der Baumstruktur voraussetzen. Schließlich noch die Funktionsargumente und deren Überprüfung (ok, das dürfte mit yacc gehen). Aus meiner Sicht hat das ingesamt wenig mit dem klassischen Compiler zu tun.
            Zugegeben, ich hatte die Sache mit der Zeilenorientierung nicht so auf den Wichtigkeitsradar - aber das wird sich noch geben bzw. ändern lassen.
            Immerhin habe ich ja nun schon Direktiven in den Compiler eingebaut und Makro-Funktionen mit Rückgabe und lokalen Variablen. Das ist doch was, und der Rest wird schon noch. Immerhin ist der EibPC erst 13 Monate alt...
            offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
            Enertex Produkte kaufen

            Kommentar


              #21
              Hallo

              Mich würde nun noch folgendes interessieren (und ja, ich komme mit den Klammern, Strichpunkten, \\ ... auch null klar)

              ich würde gerne dieses If etwas lesbarer und auch für andere verständlich umstellen.

              Code:
                  if event ("BWM_Bad_Praesenz_EIBPC-6/3/7") and  ("BWM_Bad_Praesenz_EIBPC-6/3/7"==EIN) and  Loc_Stat_HelligkeitEsszimmer<=10f16 and !Loc_Stat_ManuellBad then  {write("Dim_Bad_Schalten-14/2/1", EIN) }endif
              Das würde ich mir wünschen:

              Code:
                  if event ("BWM_Bad_Praesenz_EIBPC-6/3/7")      and         //Wenn Prsenzmelder im Bad = EIN
                       ("BWM_Bad_Praesenz_EIBPC-6/3/7"==EIN) and         //        und
                         Loc_Stat_HelligkeitEsszimmer<=50f16 and         //Helligkeit im Esszimmer >50Lux
                        !Loc_Stat_ManuellBad                 then         //und Nicht Manuell dann
                        {write("Dim_Bad_Schalten-14/2/1", EIN) }endif        //Schalte das Licht ein
              Aber wie ich jetzt feststellen muss, kann ich egal mit welcher Schreibweise, mit Semikolon, \\, /* */ oder was auch immer keinen Kommentar vor einem then einfügen.

              Ist das so gewollt? Mache ich generell was falsch?

              Kommentar


                #22
                Das ist übrigens auf keinen Fall als Kritik am EIBPC zu verstehen.
                Ich werde nächsten Monat meinen 3ten kaufen... :-)

                Nur die Kommentarsache verstehe ich überhaupt nicht.
                Keine Ahnung warum das so kompliziert sein soll.
                Das haben schon deutlich schlechtere und unkreativere Köpfe hingekriegt.
                Ich glaube an euch.

                Kommentar


                  #23
                  Zitat von Little Bastard Beitrag anzeigen
                  Das ist übrigens auf keinen Fall als Kritik am EIBPC zu verstehen.
                  Ich werde nächsten Monat meinen 3ten kaufen... :-)

                  Das haben schon deutlich schlechtere und unkreativere Köpfe hingekriegt.
                  Ich glaube an euch.
                  Na das nehm ich mal als einen Ansporn an!
                  offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                  Enertex Produkte kaufen

                  Kommentar


                    #24
                    Des Kommentierers Paradies

                    so hab das nun mal eingebaut
                    [highlight=epc]

                    [EibPC]
                    /* Super, dieser Kommentar */ c=$$
                    z= 1 // Eine Variable wurde definiert


                    /* Super, dieser Kommentar mit Strichpunkt */; c2=$$

                    // Noch ein Kommentar, aber so wie bisher


                    /* Meine Beste if-Anweisung */ if /* Achtung Bedingung ist 1b01 */ EIN /* und wir haben nun den Then-Zweig */ then {
                    c=elog()
                    /* Das ist ein Kommentar ohne Strichpunkt */
                    /* auch kein Strichpunkt */
                    } endif


                    if AUS then {
                    // Oder lieber so
                    z=4;
                    // Diese Anweisung eben war ziemlich dumm
                    // weil wir lieber z auf 7 setzen sollten
                    z=7;
                    // Ende gut alles gut
                    } endif
                    [/highlight]
                    Dann ist hier wohl mal Ruhe im Karton mit den Kommentaren .
                    Geht ab dem nächsten Release im Compiler (eibparser)
                    offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                    Enertex Produkte kaufen

                    Kommentar


                      #25
                      Wat soll ich sachen?

                      Hammer, Geil, Super, Perfekt!
                      Sieht so aus, als könnte nun auch ich kommentieren.

                      Ich find euch immer noch genial.

                      Danke

                      Andreas

                      Kommentar


                        #26
                        Kommentare

                        Da kann ich auch nur sagen: DANKE!
                        Kann kaum erwarten die neue Version zu bekommen um endlich meinen Code vernünftig (also detailliert) dokumentieren zu können

                        Kommentar


                          #27
                          Zitat von Matthias Beitrag anzeigen
                          Da kann ich auch nur sagen: DANKE!
                          Kann kaum erwarten die neue Version zu bekommen um endlich meinen Code vernünftig (also detailliert) dokumentieren zu können
                          Ja, ich hätte auch schon vor 3 Wochen ein Release haben wollen, aber die Änderungen bzw. die Software sind noch nicht rund.
                          Und selbst, wenn man das als Beta tituliert, sollte es doch soweit sein, dass zumindest im testbetrieb nix auftritt. Da versuche Euch mit neuen Features zu vertrösten.
                          offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                          Enertex Produkte kaufen

                          Kommentar


                            #28
                            Hut ab, das mit den Kommentaren sieht echt cool aus so!!!

                            Ohne das Lob schmälern zu wollen: Hast du auch noch eingebaut, dass leere Strichpunkte (also Strichpunkt und dann Zeilenende) ignoriert werden? Fände ich noch sehr wichtig.
                            BR
                            Marc

                            Kommentar


                              #29
                              Zitat von saft6luck Beitrag anzeigen
                              Hut ab, das mit den Kommentaren sieht echt cool aus so!!!Ohne das Lob schmälern zu wollen: Hast du auch noch eingebaut, dass leere Strichpunkte (also Strichpunkt und dann Zeilenende) ignoriert werden? Fände ich noch sehr wichtig.
                              Na, wenn Ihr so nett fragt und weils ja bald Weihnachten hat - ich hab da auch mal nachgegeben und nun kann man den Strichpunkt setzten, wenn man will oder nicht.
                              offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                              Enertex Produkte kaufen

                              Kommentar

                              Lädt...
                              X