Deutsch
Wünsche und Anregungen

Vorschläge für künftige Versionen

Parametertrenner bei Befehlen

 

Jörg
Sellmeyer
Ich würde mir wünschen, dass Parametertrenner einheitlich verwendet werden. Also keine Minus mehr bei verschiedenen Fenster- oder auch Zeichenbefehlen, sondern stattdessen einheitlich Kommas als Trenner.
Auch das Semikolon könnte besser ersetzt werden.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
19.08.2016  
 




RGH
Aus Kompatibilitätsgründen ist es leider nicht möglich. Und würde ich beides erlauben, würde der Parser nur unübersichtlicher, langsamer und fehleranfälliger!

Gruß
Roland
 
XProfan X3
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
19.08.2016  
 




Jörg
Sellmeyer
Naja - ich hatte da auch eher an eine mittel- bis langfristige Lösung gedacht. Also Ankündigung jetzt und Umsetzung dann mit X15 oder X16.
Bis dahin hätte jeder genug Zeit, seine Codes mal durchzuforsten.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
19.08.2016  
 




RGH
Sorry, ich habe wohl bei meiner Antwort zu kurz gedacht:

Ich habe mir die Sache noch mal genauer an geschaut! Es ist offensichtlich alles viel einfacher, als ich im ersten Moment dachte: Für die allermeisten Befehle können schon jetzt die Parameter-Trenner "=", ";" und ">" (andere kommen neben dem Komma ja nicht vor) durch ein Komma ersetzt werden, da das Komma ja zu den Zeichen gehört, die grundsätzlich das Ende eines Parameters anzeigen. (Das geht eigentlich schon seit Jahren.)

Ausnahme, die ich ändern müsste:
WINDOW - Das "-" wird als Kennzeichen genutzt, dass es 4 Parameter gibt und nicht nur zwei. Das kann ich aber vermutlich leicht ändern.

Ausnahmen, die auch so bleiben sollten:
PLAY - hier trennt das Komma die Töne der Folge, das Semikolon die Stimmen eines Tons
PRINT - beim Semikolon werden die Ausdrücke direkt hintereinander ausgegeben, beim Komma wird ein Leerzeichen eingefügt

Bei den Zuweisungen an eine Bereichsvariable mit BYTE, CHAR, LONG, etc. ist das "=" natürlich sinnvoll, da es sich ja um eine Zuweisung handelt. (Tatsächlich kann es aber auch hier durch ein "," ersetzt werden.)

Bei CLASS und STRUCT sollte das "=" natürlich weiterhin zwingend erforderlich bleiben, da es sich um eine Definition handelt.

Bei MAT handelt es sich beim Trennzeichen zwischen den Parametern tatsächlich um einen Operator, so dass hier nur "=", "+", "-", "/" oder "*" erlaubt sind und bleiben.

Kurz: Lediglich WINDOW bedarf einer Überarbeitung!

Gruß
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
19.08.2016  
 




Jörg
Sellmeyer
Super - Hartnäckigkeit zahlt sich eben doch aus
Nimm den Thread doch einfach in deine ToDo-Liste auf. Wenn es dann eingebaut ist, könntest du es hier direkt auf erledigt setzen. Ich würde sowieso diesen ganzen Wünsche-Bereich gerne mal etwas aufräumen, damit man mal wieder weiß, weas eigentlich schon erledigt ist, was noch ansteht und was nicht umsetzbar ist.
Mal sehen, wann David mal wieder reinschneit.
 
XProfan X3
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
19.08.2016  
 




RGH
Erledigt: Im nächsten Bugfix bzw, der nächsten Version (X3.1a oder X3.2) kann man dann auch beim Windows-Befehl das "-" durch ein "," ersetzen. Da aber immer noch das "-" erlaubt ist, muss im Zweifelsfall ein Ausdruck mit "-" im zweiten Parameter geklammert werden ... wie bisher.

Gruß
Roland
 
XProfan X3
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
19.08.2016  
 




Michael
W.
Da gibt's ja inzwischen etliches zu Beachten in der Syntax.

Frage: Funktioniert bei CaseOf auch das neue !=

und
Quad B,A = N1 [,N2 [...]]// der fehlt leider (und sein Gegenstück)


.Super.{methode}(...)
AddFiles [*]S
Arc X1,Y1 - X2,Y2; X3,Y3; X4,Y4
Array( Typ$ E1 [,En...]) // kein Trenner zw. Typ und Werten
Byte B,A = N1 [,N2 [...]]
Case {bedingung} : {befehl}
CaseNot {bedingung} : {befehl}
CaseOf T1 [,T2 [...]] // <,<=,>,>=,<> UND DIE FRAGE: != (als neuer Operator) auch erlaubt???
Char B,A = S1 [,S2 [...]]
Chord X1,Y1 - X2,Y2; X3,Y3; X4,Y4
Class {name} = [g1]E1 [,[g2]E2 [...]]
Copy S1 > S2
CopyBmp X1,Y1 - X2,Y2 > X3,Y3; N1 [,N2]
CopyBmpToMem X1,Y1 - DX,DY > X2,Y2
CopyPic H,X1,Y1 - X2,Y2 > X3,Y3; N1 [,N2]
CopySizedBmp X1,Y1 - X2,Y2 > X3,Y3 - X4,Y4; N
CopySizedPic H,X1,Y1 - X2,Y2 > X3,Y3 - X4,Y4; N
db("Go" , X [,N]) // [ |<, >|, <, >, * ]
DrawExtBmp I,S,X,Y; N
DrawPic /**/ H,X,Y; N1 [,N2] /**/ S,X,Y; N1 [,N2] /**/ I,S,X,Y; N1 [,N2]
DrawSizedExtBmp I,S,X1,Y1 - X2,Y2; N
DrawSizedPic /**/ H,X,Y - DX,DY; N /**/ S,X,Y - DX,DY; N /**/ I,S,X,Y - DX,DY; N
DrawText /**/ X,Y,S[,N] /**/ X1,Y1,X2,Y2,S,N
Ellipse X1,Y1 - X2,Y2
Float B,A = N1 [,N2 [...]]
If( {bedingung}, {True-Wert}, {False-Wert})
LoadBmp S,X,Y;N
LoadSizedBmp S,X1,Y1 - X2,Y2;N
Long B,A = N [,N[...]]
MCopyBmp X1,Y1 - X2,Y2 > X3,Y3; N1 [,N2]
MCopySizedBmp X1,Y1 - X2,Y2 > X3,Y3 - X4,Y4; N
Mouse( X1,Y1 - X2,Y2) // !!! Minus in Funktionsparametern
oGL("2D" ,X,Y,Z,vSX,vSY) // Referenz-Parameter: vSX,vSY
Pie X1,Y1 - X2,Y2; X3,Y3; X4,Y4
Play N1[ ;N2 [...;N16]] ,T,P
Print /**/ f;f,f ... /**/ #N,f;f,f ...
Rectangle X1,Y1 - X2,Y2
RoundRect X1,Y1 - X2,Y2; X3,Y3
SaveBmp S,X1,Y1 - X2,Y2
SaveBmpToClip X1,Y1 - DX1,DY1
ScreenCopy [X1,Y1 - X2,Y2]
String B,A = S [,S[...]]
StringW B,A = S [,S[...]] // alt
Struct {Name} = E1 [,E2 [...]]
SubProc {ContainerFunc}.{Unterfunktion}
TBox X1,Y1 - X2,Y2; N
TMouse( X1,Y1 - X2,Y2) // !!! Minus in Funktionsparametern
WideChar B,A = WS [,WS[...]]
WideString B,A = WS [,WS[...]]
Window [X1,Y1 - ] X2,Y2
Word B,A = N[,N[...]]
WriteIni S1,S2,S3=S4
Funktionieren bei STRUCT und CLASS die neuen Datentypen ???
 
System: Windows 8/10, XProfan X4
Programmieren, das spannendste Detektivspiel der Welt.
21.08.2016  
 




RGH
Nein, bei CaseOf funktioniert das "!=" nicht.

Bei Mouse() und TMouse() kann man schon (fast) immer das "-" duch ein "," ersetzen.

QUAD fehlt tatsächlich noch. Das sollte aber kein Problem sein, das einzubauen.

In Strukturen und Klassen sind die neuen Datentypen erlaubt, wie sie in der Hilfe unter 7.5 und 7.6 stehen: && und %% (Ich habe gerade gesehen: In der Referenz muss ich sie noch nachtragen.)

Gruß
Roland
 
XProfan X3
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
21.08.2016  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

10.366 Betrachtungen

Unbenanntvor 0 min.
H.Brill01.08.2023
Sven Bader18.08.2021
Michael W.11.08.2018
Jörg Sellmeyer25.05.2018
Mehr...

Themeninformationen

Dieses Thema hat 3 Teilnehmer:

RGH (4x)
Jörg Sellmeyer (3x)
Michael W. (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie