Deutsch
Forum

Vorschlag zur Syntaxerweiterung

 

CB
Hi, iF!
Wie wärs mit folgender Syntax für die nächste XPSE-Version:
[box:d99e4290f2]2 < x% < 3[/box:d99e4290f2]statt[box:d99e4290f2](2 < x%) And (x% < 3)[/box:d99e4290f2]
und analog mit Stringvariablen?
[box:d99e4290f2]x$ = a$ <> b$[/box:d99e4290f2]
2 Bedingungen auf einen Streich abgefragt - das wär doch was!

Ciao, Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
28.04.2005  
 



Ich glaube ich bin mit der Logik nicht einverstanden.

Meiner Meinung ist 2 < x% < 3 nicht (2 < x%) And (x% < 3)

sondern 2<x%<3 ist (2<x%)<3 wobei (2<x%) nur true oda false sein kann und true nicht <3 sein kann.

Da gibt es also verschiedene Interpretationsvarianten. Wenn man sich darüber einig werden würde dann ist die Umsetzung sichlich kein Problem.

Salve.
 
28.04.2005  
 




CB
Tut leid, kapier ich nicht.
Die Bedingung, ob 2 < 3 ist, werde ich doch hoffentlich nimmer abfragen müssen, das sollte immer true ergeben - wenns anders wäre, gäbs spätestens in der 2. Klasse Volksschule ein Setzen, Nicht genügend!
Ich will ja nur abfragen, ob x% größer als 2 UND kleiner als 3 ist. Wenns sogar die WordBasic-Syntax versteht, sollts in Profan doch auch möglich sein?

Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
28.04.2005  
 



Ok mal ne Frage Christian - wie würdest Du das hier verstehen:

if (aix&=fopen(c:\test.dat,r-))

?

Salve.
 
28.04.2005  
 




CB
Kann ich nur vermuten, weil ich fopen nicht kenne.
Ich nehme mal an, daß erst das Attribut von test.dat geprüft wird, bei r- also nicht read-only gesetzt ist und danach erst erhält aix& ein Handle oder halt nicht - korrekt?

Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
28.04.2005  
 




CB
Habe mich inzwischen ein bissel weitergebildet: (aus:https://de.php.net/fopen)
[box:387d7faec3]fopen
(PHP 3, PHP 4 , PHP 5)

fopen -- Öffnet eine Datei oder URL
Beschreibung
resource fopen ( string filename, string mode [, int use_include_path [, resource zcontext]] )

fopen() bindet eine benannte Resource, welche mittels filename spezifiziert wurde, an einen Stream. Hat filename die Form  [...]  wird angenommen, dass es sich hier um eine URL handelt und PHP sucht nach einem Protokollhandler (auch als Wrapper bekannt) für dieses Schema. Sind keine Wrapper für dieses Protokoll registriert, gibt PHP als Hilfe zum Verfolgen potentieller Probleme in Ihrem Skript einen Hinweis aus und setzt dann weiter fort, obwohl filename eine reguläre Datei spezifiziert.

Ist PHP zu dem Schluss gekommen, dass filename eine lokale Datei spezifiziert, wird es versuchen, einen Stream an dieser Datei zu öffnen. Die Datei muss für PHP verfügbar sein, weshalb Sie sicherstellen müssen, dass die Dateirechte diesen Zugriff ermöglichen. Wenn Sie Safe Mode oder open_basedir aktiviert haben, können weitere Einschränkungen zutreffen.

Kam PHP zum Schluss, dass es sich bei filename um ein registriertes Protokoll handelt, und ist dieses Protokoll als eine Netzwerk URL registriert, prüft PHP, ob allow_url_fopen aktiviert ist. Ist es nicht aktiviert, gibt PHP eine Warnung aus, und der Aufruf von fopen wird scheitern.[/box:387d7faec3]
Also allzu weit war ich nicht entfernt...

Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
28.04.2005  
 



Ja und wann wird denn nun nach Deinem Verständnis Hallo Welt angezeigt bei

if (fopen(,)) { die(Hallo Welt);}

?

Salve.
 
28.04.2005  
 




CB
Wenn Du glaubst, daß ich jetzt nach einer simplen Frage meinerseits PHP lernen werde, um Dir die Frage beantworten zu können, muß ich Dich enttäuschen.
Ich habe ja noch beim Äpfel- und Birnen-Vergleich mitgespielt, aber jetzt probierst Dus mit Lychees! Kann halt kein japanisch - na und?

Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
28.04.2005  
 



Siehst - ich wollte doch nur mal demonstrieren (was ich oben schon schrieb) das es bei dieser Argumentation verschiedene Interpretationsmöglichkeiten gibt.

ein if a=fopen ist dann z.B. true wenn das fopen an a ein resourcehandle übergeben konnte. Hierbei wird das Übertragen von fopen auf a mit true oder false bewertet. Das Übertragen - nicht das logische Argument.

Deshalb meinte ich ja

ein x<y<z

könnte heißen

((x<y)&(y<z)) == ((true|false)&(y<z)) == ((true|false)&(true|false)) == (true|false)

oder aber auch

((x<y)&(y<z)) == ((true|false)<z) == (NAN|0)

Da nicht klar ist - wie die syntax von XProfanern verstanden würde - ...

Salve.
 
28.04.2005  
 




CB
Da hast Du mich falsch verstanden:
Ich will ja nicht x < y < z (dabei hättest Du natürlich recht),
sondern 2 < x < 3, will also mit einer Abfrage eruieren, ob x kleiner als ein Fixwert und größer als ein anderer Fixwert ist.

Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
28.04.2005  
 



Ich müsste in XProfan jedoch als Fixwerte auch Konstanten zulassen - da diese jedoch nicht ausschließlich headermäßig deklariert werden müssen sind diese eigendlich Variablen lol.

Hierbei kann also in XProfan nicht zwischen Fix,- und Variabel-Werten unterschieden werden - oder man müsse Konstanten rauslassen.

hmpf - ich werde mir dazu später nochmals Gedanken machen - habs in die ToDo geschrieben.

Ich glaube aber eher es wäre interessant wenn man auch (x$=y$=z$=str$(h&)=5) schreiben könnte.

Salve.
 
28.04.2005  
 




Michael
Wodrich
[quote:9cdc2c84d6]
Da hast Du mich falsch verstanden:
Ich will ja nicht x < y < z (dabei hättest Du natürlich recht),
sondern 2 < x < 3, will also mit einer Abfrage eruieren, ob x kleiner als ein Fixwert und größer als ein anderer Fixwert ist.

Christian
[/quote:9cdc2c84d6]
...und warum muß man dazu die Syntax verbiegen????
KompilierenMarkierenSeparieren
Def InRange!(3)    @If((@!(1)) >= (@!(2)),@If((@!(1)) <= (@!(3)),1,0),0)
Def InRange&(3)    @If((@&(1)) >= (@&(2)),@If((@&(1)) <= (@&(3)),1,0),0)
Def InRangeEx!(3)  @If((@!(1)) > (@!(2)),@If((@!(1)) < (@!(3)),1,0),0)
Def InRangeEx&(3)  @If((@&(1)) > (@&(2)),@If((@&(1)) < (@&(3)),1,0),0)
InRange!   - ... (Float)
InRange&   - ... (Ganzzahl)
InRangeEx! - ... (Float) (ohne Grenzwerte)
InRangeEx& - ... (Ganzzahl) (ohne Grenzwerte)
- Prüft, ob Wert 1 innerhalb des Bereiches v. Wert 2 (Min) u. Wert 3 (Max) liegt.

Die InRange-Funktion erwartet als ersten Wert den zu prüfenden.
Der 2.Wert ist der Minimum, der 3.Wert der Maximum-Wert.

MfG
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
29.04.2005  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

12.897 Betrachtungen

Unbenanntvor 0 min.

Themeninformationen

Dieses Thema hat 3 Teilnehmer:

CB (11x)
iF (6x)
Michael Wodrich (4x)


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