Beispiele zu neuen Funktionen PB5.10
- NicTheQuick
- Ein Admin
- Beiträge: 8807
- Registriert: 29.08.2004 20:20
- Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti - Wohnort: Saarbrücken
Re: Beispiele zu neuen Funktionen PB5.10
Nachtrag: Diese verschachtelten Makros funktionieren laut Fred eigentlich gar nicht in PB. In dem Fall zufälligerweise aber schon, also sollte man sich nicht darauf verlassen, dass es in Zukunft auch so klappt. Schade eigentlich.
Re: Beispiele zu neuen Funktionen PB5.10
@NicTheQuick:
Der Compiler ist ja auch eigentlich dafür da einen Code zu kompilieren, nicht um ihn erst zu erstellen, wenn du verstehst was ich meine. Trotzdem nettes Beispiel.
Der Compiler ist ja auch eigentlich dafür da einen Code zu kompilieren, nicht um ihn erst zu erstellen, wenn du verstehst was ich meine. Trotzdem nettes Beispiel.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
- NicTheQuick
- Ein Admin
- Beiträge: 8807
- Registriert: 29.08.2004 20:20
- Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti - Wohnort: Saarbrücken
Re: Beispiele zu neuen Funktionen PB5.10
Ich nehme an du kennst die Boost-Library für C/C++ nicht.
Generische Programmierung sieht schräg aus, ist aber irre praktisch.

Re: Beispiele zu neuen Funktionen PB5.10
Praktisch mag es sein, aber PB ist nun mal dahingehend optimiert,
dass beim Aufruf einer Prozedur exakt gekannt ist, welchen Typ die Parameter haben.
Klar kann man aus "praktischen" Gründen, bei allen Funktionen zusätzlich diese Typenabfrage einbauen,
dann würde man überall nur noch eine Funktion haben wie:
nur Str() ohne StrF, StrD
oder nur Write() ohne WriteLong(), WriteString(), WriteFloat() usw.
Ich meine funktionieren würde es ja nun dank TypeOf(),
aber ich bin der Meinung, dass würde die Kopilierungszeit erheblich erhöhen.
[Offtopic]
Ansonsten kannst du auf meine Script-Sprache warten, dort gehe ich sogar soweit, dass ich mit Operationszeichen (zB +) nicht nur Zahlen oder String addieren/verbinden kann, sondern auch Vektoren, Matrizen, Listen usw. und ich gehe noch weiter, auch Memorys, Dateien, Bilder, Sounds können auf diese weise verbunden/überlagert werden.
Auch kann man eigene Operationszeichen definieren, sodass man selbst einen Funktionsaufruf sparen kann:
%a ⇄ %b := Swap(%a, %b)
[/Offtopic]
dass beim Aufruf einer Prozedur exakt gekannt ist, welchen Typ die Parameter haben.
Klar kann man aus "praktischen" Gründen, bei allen Funktionen zusätzlich diese Typenabfrage einbauen,
dann würde man überall nur noch eine Funktion haben wie:
nur Str() ohne StrF, StrD
oder nur Write() ohne WriteLong(), WriteString(), WriteFloat() usw.
Ich meine funktionieren würde es ja nun dank TypeOf(),
aber ich bin der Meinung, dass würde die Kopilierungszeit erheblich erhöhen.
[Offtopic]
Ansonsten kannst du auf meine Script-Sprache warten, dort gehe ich sogar soweit, dass ich mit Operationszeichen (zB +) nicht nur Zahlen oder String addieren/verbinden kann, sondern auch Vektoren, Matrizen, Listen usw. und ich gehe noch weiter, auch Memorys, Dateien, Bilder, Sounds können auf diese weise verbunden/überlagert werden.
Auch kann man eigene Operationszeichen definieren, sodass man selbst einen Funktionsaufruf sparen kann:
%a ⇄ %b := Swap(%a, %b)
[/Offtopic]
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr