was sich durch eine kleines häckchen in einer checkbox erledigen lassen würde. welche vorteile meinst du?DarkDragon hat geschrieben:Doch, alle Quelltexte müssen wieder angepasst werden, die sich das zum Vorteil gemacht haben. Das soll so bleiben wie es ist.
undokumentierte Konstanten
Re: undokumentierte Konstanten
-
- Beiträge: 6291
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
Re: undokumentierte Konstanten
Naja, es gibt sicher ne Menge QuellTexte hier im Web die z.B. so funktionieren:
Aber würde Test() nun SinglePassWontAllowAccessBeforeButMultiPassDoes kennen würde es nichtmehr laufen.
Code: Alles auswählen
Procedure Test()
Debug SinglePassWontAllowAccessBeforeButMultiPassDoes
EndProcedure
Global SinglePassWontAllowAccessBeforeButMultiPassDoes.i = 10
Debug SinglePassWontAllowAccessBeforeButMultiPassDoes
Test()
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Re: undokumentierte Konstanten
wie oben geschrieben, würde sich das leicht durch eine einstellmöglichkeit in den compileroptionen lösen lassen, damit alter code weiterhin singlepass compiliert wird. damit wäre auch jedem die möglichkeit geboten, sich weiterhin mit einem einfachen compiler abzuplagen.
von mir aus kann aber gerne jeder, der ein programm ohne EnableExplicit schreibt probleme bekommen bis ende nie.
von mir aus kann aber gerne jeder, der ein programm ohne EnableExplicit schreibt probleme bekommen bis ende nie.
Re: undokumentierte Konstanten
Um nochmal auf die Fragestellung zurückzukommen. Alle mir bekannten Farb-Konstanten:
Gruß, Rudi
Code: Alles auswählen
If OpenWindow(0, #PB_Ignore, #PB_Ignore, 322, 112, "Farbkonstanten", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
SendMessage_(WindowID(0),#WM_SETICON,#False,11)
TextGadget(1, 5, 5, 100, 30, "#Black")
SetGadgetColor(1, #PB_Gadget_BackColor, #Black)
SetGadgetColor(1, #PB_Gadget_FrontColor, #White)
TextGadget(2, 5, 40, 100, 30, "#Gray")
SetGadgetColor(2, #PB_Gadget_BackColor, #Gray)
TextGadget(3, 110, 5, 100, 30, "#Red")
SetGadgetColor(3, #PB_Gadget_BackColor, #Red)
TextGadget(4, 215, 5, 100, 30, "#Magenta")
SetGadgetColor(4, #PB_Gadget_BackColor, #Magenta)
TextGadget(5, 110, 40, 100, 30, "#Green")
SetGadgetColor(5, #PB_Gadget_BackColor, #Green)
TextGadget(6, 215, 40, 100, 30, "#Yellow")
SetGadgetColor(6, #PB_Gadget_BackColor, #Yellow)
TextGadget(7, 5, 75, 100, 30, "#White", #WS_BORDER)
SetGadgetColor(7, #PB_Gadget_BackColor, #White)
TextGadget(8, 110, 75, 100, 30, "#Blue")
SetGadgetColor(8, #PB_Gadget_BackColor, #Blue)
TextGadget(9, 215, 75, 100, 30, "#Cyan")
SetGadgetColor(9, #PB_Gadget_BackColor, #Cyan)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
-
- Beiträge: 6291
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
Re: undokumentierte Konstanten
So besser:Josh hat geschrieben:von mir aus kann aber gerne jeder, der ein programm ohne EnableExplicit schreibt probleme bekommen bis ende nie.
Code: Alles auswählen
Procedure Test()
Define SinglePassWontAllowAccessBeforeButMultiPassDoes
Debug SinglePassWontAllowAccessBeforeButMultiPassDoes
EndProcedure
Global SinglePassWontAllowAccessBeforeButMultiPassDoes.i = 10
Debug SinglePassWontAllowAccessBeforeButMultiPassDoes
Test()
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Re: undokumentierte Konstanten
Hi nino
hilf mir zu verstehen. Der Vorteil eines Singlepass Compiler soll die Garantie der besseren Lesbarkeit von Quelltexten sein ?? Weil man die Procedure in der richtigen Reihenfolge schreibt ??
Was soll das heißen. Schreibst du die Procedures mitten in den Quelltext ? Aber selbst wenn, wohin genau wenn es mehrere Aufrufe der gleichen Procedure an versch. Stellen des Quelltextes gibt? Und wie soll das die lesbarkeit erhöhen ??
Ich glaube hier wird lediglich der Nachteil das PureBasic kein Multipass Compiler ist versucht wegzudiskutieren.
hilf mir zu verstehen. Der Vorteil eines Singlepass Compiler soll die Garantie der besseren Lesbarkeit von Quelltexten sein ?? Weil man die Procedure in der richtigen Reihenfolge schreibt ??
Was soll das heißen. Schreibst du die Procedures mitten in den Quelltext ? Aber selbst wenn, wohin genau wenn es mehrere Aufrufe der gleichen Procedure an versch. Stellen des Quelltextes gibt? Und wie soll das die lesbarkeit erhöhen ??
Ich glaube hier wird lediglich der Nachteil das PureBasic kein Multipass Compiler ist versucht wegzudiskutieren.
-
- Beiträge: 6291
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
Re: undokumentierte Konstanten
Ich glaube du bist dir garnicht bewusst, was es heißt sowas nachträglich einzubauen. Solche zusammengehackte Tools wie man sie hier findet sind mit sowas nicht vergleichbar, immerhin muss danach ja alles korrekt laufen. Es werden also weitere Bugs auftauchen und dadurch dass man nun eine Checkbox sogar fordert um den alten Compiler zu verwenden wird die ganze Arbeit verdoppelt. Und wie schon erwähnt, KPA: wenn du all unsere Codes dann anpasst dann sind wir damit einverstanden. Die Wende um PB 4.0 war uns schon genug.
@Josh: Ich glaub du willst KPA dabei helfen, gell? Kannst ja mal mit dem Code-Archiv anfangen.
Wenn ihr fertig seid können wir darüber diskutieren, vorher seh ich da keinen Grund jetzt nach all den Jahren umzustellen wegen sowas.
@Josh: Ich glaub du willst KPA dabei helfen, gell? Kannst ja mal mit dem Code-Archiv anfangen.
Wenn ihr fertig seid können wir darüber diskutieren, vorher seh ich da keinen Grund jetzt nach all den Jahren umzustellen wegen sowas.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Re: undokumentierte Konstanten
an solche obskuren logiken solltest du dich hier gewöhnenKPA hat geschrieben:hilf mir zu verstehen. Der Vorteil eines Singlepass Compiler soll die Garantie der besseren Lesbarkeit von Quelltexten sein ?? Weil man die Procedure in der richtigen Reihenfolge schreibt ??

- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Re: undokumentierte Konstanten
Ich benötige fast nie Declare, lediglich bei sehr grossen Programmen mit vielen Includes, wenn die
Proceduren sich in einer anderen Datei befinden.
Solange ich kein Declare nutze, kann ich bei auftreten eines Fehlers sicher sein, das ich im Source
nach Oben suchen muß. Dies ist bei MultiPass nicht mehr gegeben.
Den Geschwindigkeitsvorteil haben wir bereits erwähnt.
Ausserdem wenn aus allen Single-Pass Compilern Multi-Pass Compiler gemacht werden, gibt es
keine Multi-Pass Compiler mehr
Das Wort zum Sonntag sprach:
Thomas
Proceduren sich in einer anderen Datei befinden.
Solange ich kein Declare nutze, kann ich bei auftreten eines Fehlers sicher sein, das ich im Source
nach Oben suchen muß. Dies ist bei MultiPass nicht mehr gegeben.
Den Geschwindigkeitsvorteil haben wir bereits erwähnt.
Ausserdem wenn aus allen Single-Pass Compilern Multi-Pass Compiler gemacht werden, gibt es
keine Multi-Pass Compiler mehr

Das Wort zum Sonntag sprach:
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Re: undokumentierte Konstanten
natürlich. sinnvolle vorschläge werde ich immer unterstützenDarkDragon hat geschrieben:@Josh: Ich glaub du willst KPA dabei helfen, gell?