OOP Precompiler und Konstrukte
Ich denke, derjenige der eine PreProzessor für OOP schreibt, muss neben der Fähigkeit diesen exzellent in PB zu schreiben auch sehr gute Kenntnisse in OOP besitzen. Ich will hier nicht! arrogant klingen, denn ich selber backe da lieber kleinere Brötchen.
Es sollte sich ein Team finden, die dies umsetzen, fertig da stimme ich Hroudtwolf zu.
Das Ganze sollte aber nicht nach zwei, drei Wochen an den Nagel gehangen werden, weil dann plötzlich jemand beruflich sehr eingespannt ist oder der Hund in Kur muss - das Ding ist dann eben ein richtiger Job.
Ich habe erlebt, wie sowas letztes Jahr in die Hose ging .... wurde viel erzählt und theorisiert, aber es kam quasi in der Praxis nix konsequentes bei raus.
Diese OOP Syntax Diskussionen gibts hier schon massenweise im deu. und engl. Forum, somit sollte sich dieses "Team" vorab untereinander auf eine Syntax einigen, welche sinnvoll und auf lange Sicht für den späteren User gut zu verwenden ist. Unabhängig davon, was hier bereits vorgeschlagen wurde. Denn Ziel ist es, EINE inoffizielle OOP Syntax für PB zu finden, welche nah an der Syntaxlogik von PB ist, und die sodann klar definiert "feststeht" - es wird immer jemanden der späteren Nutzer geben, der dies oder das eben anders sieht.
Denn .... jeder der in solch einem Thread postet will es anders machen oder findet seine individuellen Vorschläge sinnvoller (geht mir auch so). Ich denke hätte Fred bevor er PB erschuf einen Thread mit "PB Syntax Wünschen" eröffnet, würde die Syntax bis heute noch nicht stehen.
PS: fsw z.B. muss sich viell. eh fragen warum jetzt wieder das gleiche Projekt neu angefangen wird, obwohl er schon sehr weit gekommen ist, ..... nur hat ihn keiner bei seiner Vorleistung durch klare Feedbacks weiter in seinem Projekt unterstützt ... und da hat ihn viell. auch irgendwann mal die Lust verlassen, was dann auch normal ist.
Einfach ihn eine PM senden und ihn fragen, ob er seinen Code vielleicht LGPL'en (o.ä) will, damit man daran ansetzen kann. Sein und Hroudtwolf's Code könnte man in ihren Vorzügen "mergen" um beider Codes Vorteile nutzen zu können.
Es sollte sich ein Team finden, die dies umsetzen, fertig da stimme ich Hroudtwolf zu.
Das Ganze sollte aber nicht nach zwei, drei Wochen an den Nagel gehangen werden, weil dann plötzlich jemand beruflich sehr eingespannt ist oder der Hund in Kur muss - das Ding ist dann eben ein richtiger Job.
Ich habe erlebt, wie sowas letztes Jahr in die Hose ging .... wurde viel erzählt und theorisiert, aber es kam quasi in der Praxis nix konsequentes bei raus.
Diese OOP Syntax Diskussionen gibts hier schon massenweise im deu. und engl. Forum, somit sollte sich dieses "Team" vorab untereinander auf eine Syntax einigen, welche sinnvoll und auf lange Sicht für den späteren User gut zu verwenden ist. Unabhängig davon, was hier bereits vorgeschlagen wurde. Denn Ziel ist es, EINE inoffizielle OOP Syntax für PB zu finden, welche nah an der Syntaxlogik von PB ist, und die sodann klar definiert "feststeht" - es wird immer jemanden der späteren Nutzer geben, der dies oder das eben anders sieht.
Denn .... jeder der in solch einem Thread postet will es anders machen oder findet seine individuellen Vorschläge sinnvoller (geht mir auch so). Ich denke hätte Fred bevor er PB erschuf einen Thread mit "PB Syntax Wünschen" eröffnet, würde die Syntax bis heute noch nicht stehen.
PS: fsw z.B. muss sich viell. eh fragen warum jetzt wieder das gleiche Projekt neu angefangen wird, obwohl er schon sehr weit gekommen ist, ..... nur hat ihn keiner bei seiner Vorleistung durch klare Feedbacks weiter in seinem Projekt unterstützt ... und da hat ihn viell. auch irgendwann mal die Lust verlassen, was dann auch normal ist.
Einfach ihn eine PM senden und ihn fragen, ob er seinen Code vielleicht LGPL'en (o.ä) will, damit man daran ansetzen kann. Sein und Hroudtwolf's Code könnte man in ihren Vorzügen "mergen" um beider Codes Vorteile nutzen zu können.
Hier gibts die OOP Option für PureBasic.
@ZeHa
Man muss es ja net so unverständlich mache wie die Politiker und
Beamten-Hanseln.
Demokratie leben in einem "freien" Forum. Warum nicht alles hier posten.
@inc.: Genau das ist das Problem, closed-source projekte verenden oft
weil ne Katze krank geworden ist
fsw' ansätze wären ja net schlecht gewesen, aber ohne source ???
Man muss es ja net so unverständlich mache wie die Politiker und
Beamten-Hanseln.
Demokratie leben in einem "freien" Forum. Warum nicht alles hier posten.
@inc.: Genau das ist das Problem, closed-source projekte verenden oft
weil ne Katze krank geworden ist

fsw' ansätze wären ja net schlecht gewesen, aber ohne source ???
Rings hat geschrieben:ziert sich nich beim zitieren
Jepp, ich sehe das ähnlich, man muß sich einigen - aber wichtig ist auch, daß das nicht einer oder zwei Leute machen, sondern daß erstmal sehr viel an Vorschlägen ankommt, was man als Material verwenden kann um damit dann die "perfekte" Syntax zu bilden. Daher hab ich hier auch einiges vorgeschlagen, und ich denke, es wäre ganz sinnvoll, wenn jeder, der hierzu irgendwie Ideen hat, diese kurz äußert und - ganz wichtig - auch begründet. Dann sind hoffentlich genügend Konstellationen und Gedanken da, um daraus dann eine endgültige Linie abzuleiten.


ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Ähh worauf war das jetzt bezogen? Verstehe grad den Zusammenhang nicht so ganzRings hat geschrieben:@ZeHa
Man muss es ja net so unverständlich mache wie die Politiker und
Beamten-Hanseln.
Demokratie leben in einem "freien" Forum. Warum nicht alles hier posten.



ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Mein Vorschlag: Zumindest die Chance nicht ungenutzt lassen, fsw anzuschreiben und ihn fragen. Wenn er nicht möchte ist dies natürlich sein gutes Recht, aber wenn er zustimmt, .... würde das ein Wiederbeleben seiner Arbeit bedeuten.Rings hat geschrieben:@inc.: Genau das ist das Problem, closed-source projekte verenden oft
weil ne Katze krank geworden ist![]()
fsw' ansätze wären ja net schlecht gewesen, aber ohne source ???
Zudem, wenn alle drauf zugreifen sollen, könnten wir bei Sourceforge.net ein Projekt anlegen, wo eben Admins für jenes Projekt angelegt werden.
Jeder kann auf den Code zugreifen, aber das Projekt wird bei Sourceforge gehostet.
Hier gibts die OOP Option für PureBasic.
Ok, habs verbessert und paar bugs gefixt:
http://www.forgesoft.net/Resources/OOP-Precompiler.zip
Beispielcode:
Und hier der Output, damit jeder weiß, wie ich es mir vorgestellt habe:
http://www.forgesoft.net/Resources/OOP-Precompiler.zip
Beispielcode:
Code: Alles auswählen
Class OBJECT
a.l
b.w
Declare DummyProc:ProctypeB(a,b,c)
EndClass
Class ObjectA
n.l
d.w
Declare TestProc:ProctypeC(a,b,c,d)
EndClass
Method DummyProc(a,b,c)
Debug "Summe: "+Str(a+b+c)
EndMethod
Method TestProc(a,b,c,d)
Debug "Summe: "+Str(a+b+c+d)
EndMethod
New MyObject.OBJECT
MyObject\DummyProc(1,1,0)
New Test.ObjectA
Test\TestProc(4,1,1,1)
Und hier der Output, damit jeder weiß, wie ich es mir vorgestellt habe:
Code: Alles auswählen
Prototype ProctypeB(a,b,c)
Prototype ProctypeC(a,b,c,d)
Structure OBJECT
a.l
b.w
DummyProc.ProctypeB
EndStructure
Structure ObjectA
n.l
d.w
TestProc.ProctypeC
EndStructure
Procedure DummyProc(a,b,c)
Debug "Summe: "+Str(a+b+c)
EndProcedure
Procedure TestProc(a,b,c,d)
Debug "Summe: "+Str(a+b+c+d)
EndProcedure
MyObject.OBJECT
MyObject\DummyProc=@DummyProc()
MyObject\DummyProc(1,1,0)
Test.ObjectA
Test\TestProc=@TestProc()
Test\TestProc(4,1,1,1)
; IDE Options = PureBasic 4.10 Beta 4 (Windows - x86)
; CursorPosition = 48
; Folding = -
1) Wozu benötigst Du diesen ominösen Proctype in der Klassen-Definition?
2) Warum wird Method und EndMethod nicht durch Procedure und EndProcedure ersetzt?
3) Warum setzt Du den Funktionspointer zur Methode bei jedem Aufruf neu?
2) Warum wird Method und EndMethod nicht durch Procedure und EndProcedure ersetzt?
3) Warum setzt Du den Funktionspointer zur Methode bei jedem Aufruf neu?


ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
>1) Wozu benötigst Du diesen ominösen Proctype in der Klassen-Definition?
Prototype ProctypeB(a,b,c)
>2) Warum wird Method und EndMethod nicht durch Procedure und EndProcedure ersetzt?
Ups, war noch die alte Exe dabei. Habs jetzt neu hochgeladen.
>3) Warum setzt Du den Funktionspointer zur Methode bei jedem Aufruf neu?
Tia..
Werde 1 und 3 gleich fixen.
Prototype ProctypeB(a,b,c)
>2) Warum wird Method und EndMethod nicht durch Procedure und EndProcedure ersetzt?
Ups, war noch die alte Exe dabei. Habs jetzt neu hochgeladen.
>3) Warum setzt Du den Funktionspointer zur Methode bei jedem Aufruf neu?
Tia..
Werde 1 und 3 gleich fixen.
Jo aber das mit dem Proctype, kannst Du das nicht auch gleich automatisieren? Wäre doch umständlich, das dauernd so angeben zu müssen...


ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.