undokumentierte Konstanten

Anfängerfragen zum Programmieren mit PureBasic.
KPA
Beiträge: 35
Registriert: 10.06.2010 22:53

Re: undokumentierte Konstanten

Beitrag von KPA »

Also mal ehrlich an alle Multipass Gegner.
Es kann doch wohl nicht sein, daß das automatische Setzen der Declare Befehle durch den Compiler ernsthaft

- das kompilieren merklich verlangsamt
- irgendwelcher Quellcode neu zu schreiben ist (es sei denn ihr habt unsinnig programmiert)
- die Exe langsamer laufen lassen soll (Prozeduren die nicht aufgerufen werden verlangsamen doch nicht die exe nur weil ein declare dafür da ist)

Was wollt ihr ? Stagnation ?? Warum seid ihr nicht dann bei DOS geblieben dann hättet ihr euch nicht die Mühe machen müssen die Programme für Wondows neu zu schreiben

Ich möchte nicht auf Verbesserungen verzichten müssen nur weil ihr alt hergebracht seid !!!!
Benutzeravatar
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

Beitrag von ts-soft »

Warum bist Du nicht bei PowerBasic geblieben, wenn es doch so toll ist.

Den Rest haste anscheinend nicht verstanden, aber es geht jetzt wohl wieder von vorne los :mrgreen:

Bitte schliessen!
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.
Bild
Benutzeravatar
Vera
Beiträge: 928
Registriert: 18.03.2009 14:47
Computerausstattung: Win XP SP2, Suse 11.1
Wohnort: Essen

Re: undokumentierte Konstanten

Beitrag von Vera »

KPA hat geschrieben:Was wollt ihr ? Stagnation ?? Warum seid ihr nicht dann bei DOS geblieben
hä ? - warum bleibst Du denn dann nicht bei bei PowerBasic ?
KPA hat geschrieben:Ich möchte nicht auf Verbesserungen verzichten müssen nur weil ihr alt hergebracht seid !!!!
Denkst Du ernsthaft, dass Beleidigen eine fruchtbare Argumentation sei ?

Vera
°
<°)))o><
~~~~~~~~~
echo "Don't worry"
echo "Keep quiet"
@echo off
format forum:\
Benutzeravatar
TomS
Beiträge: 1508
Registriert: 23.12.2005 12:41
Wohnort: München

Re: undokumentierte Konstanten

Beitrag von TomS »

KPA hat geschrieben:Also mal ehrlich an alle Multipass Gegner.
Es kann doch wohl nicht sein, daß das automatische Setzen der Declare Befehle durch den Compiler ernsthaft

- das kompilieren merklich verlangsamt
- irgendwelcher Quellcode neu zu schreiben ist (es sei denn ihr habt unsinnig programmiert)
- die Exe langsamer laufen lassen soll (Prozeduren die nicht aufgerufen werden verlangsamen doch nicht die exe nur weil ein declare dafür da ist)
Gugg dir doch nochmal den Link an, wo Freak alles erklärt.
Wenn alle Prozeduren richtig deklariert sind, brauch es eben keinen Multi-Pass-Compiler.
-> Multipass-Compiler, nur weil einige zu faul sind, ihre Prozeduren in der richtigen Reihenfolge zu schreiben, oder eben das Declare-Keyword zu verwenden, ist Unfug.

Das was du hier als MPC darstellen willst, lässt sich ganz einfach durch Pre-Compiler oder IDE-Tools bewerkstelligen und verlangsamt das kompilieren natürlich nicht merklich.
Echtes Multipasscompiling aber schon.
KPA
Beiträge: 35
Registriert: 10.06.2010 22:53

Re: undokumentierte Konstanten

Beitrag von KPA »

An Toms

und was ist mit der Möglichkeit, daß nur ein Multipass Compiler die Fähigkeit besitzt weitergehende Optimierungen am Code zu machen ? Die Tatsache daß man MPC nicht bräuchte wenn man declare verwendet oder die Prozeduren an den Anfang stellt stimmt schon. Und umgekehrt, mit einem MPC kann man seine Prozeduren weiterhin an den Anfang stellen und seine Main ans Ende. Also stört euch der MPC doch nicht!!
KPA
Beiträge: 35
Registriert: 10.06.2010 22:53

Re: undokumentierte Konstanten

Beitrag von KPA »

@Vera

Ja das mit dem Beleidigen dachte ich mir auch als Ts-soft mir unterstellte, den Rest hätte ich nicht verstanden
KPA
Beiträge: 35
Registriert: 10.06.2010 22:53

Re: undokumentierte Konstanten

Beitrag von KPA »

Vera hat geschrieben:Hallo Ihr da,

dieser Thread und seine Links sind wirklich sehr aufschlußreich, schade nur, dass dafür eine unglückliche Vermischung von persönlicher Philosopie und technischen Gegebenheiten die Basis bildet.

Mir ist vieles klar geworden. Es gab eine grundsätzliche Entscheidung, eine, für Menschen leicht nachzuvollziehende Programmiersprache zu entwickeln und dies nicht nur rein semantisch. Dazu gehört auch die strenge Logik: was unbekannt ist, kann auch nicht verwendet werden.

Dies wiederum führt unweigerlich zu der Notwendigkeit, die Reihenfolge der Abläufe zu beachten. (also nicht schlampig coden ;) )
Das führt automatisch zu einem bestimmten strukturierten Aufbau des Codes und gewährleistet eine leichtere Orientierung und Nachvollziehbarkeit. Ebenso ist auch die chronologische Zuortenbarkeit von Fehler und Ursache der menschlichen Realität sehr entgegenkommend (entsprechend).

Genau dazu, ist dann auch ein SinglepassCompiler die stimmige Wahl, da er nur damit arbeitet, was er an gegebener Stelle kennt. Wie halt auch der Mensch an jedem Lebensort nur einmal vorbeikommt, und sich seine Handlungen ausschließlich daraus ergeben, was er bis zu diesem Zeitpunkt gelernt (erlebt) hatte.

Das scheint mir eine elementare Basis von PureBasic zu sein, die, an dieser Stelle geändert, PureBasic auflösen würde.
Multipass zu fordern, kann also nur auf Gegenwehr stoßen.

Ich empfehle sich eher darüber zu freuen, dass
- Vorwärtsdeklarationen erlaubt sind (dies entspräche der menschlichen Vorsehung)
- 'Tricksereien' möglich sind - also, sich eins der Tools oder anderer Lösungen zu bedienen, die die PureBasicGemeinschaft freizügig anbietet.

Grüße ~ Vera
1. Einerseits sprichst du vom logischen Programmieren in der richtigen Reihenfolge, gleich weiter unten dann von trickserein die sicherlich nicht ordentliches programmieren darstellen (Logik wo bist du)
2. Warum bietet PureBasic dann überhaupt declare ?????? nach euren Aussagen müsste doch dieser Befehl dann ganz fehlen
Benutzeravatar
mk-soft
Beiträge: 3845
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: undokumentierte Konstanten

Beitrag von mk-soft »

@KPA,

Purebasic ist halt anders als Powerbasic. Ich bin mit Powerbasic gar nicht klar gekommen (PBDLL61).
Windowsfenster zu erstellen war mir zu viel Code. Mit der Syntax kam ich nicht klar, ...

Da war mir als alter Basic, Pascal, C-Code und ASM Programmer der Einstieg in die Windowsprogrammierung mit Purebasic viel mehr entgegenkommend. Vor allen der strenge sequenzielle Ablauf entspricht meiner Denkweise wie sauber Programme zu arbeiten haben.

Ab und zu muss ich noch alte VB6 Programme überarbeiten, oder irgendwelche VB- oder C-Scripte erstellen.
In diesen Fällen muss man halt auch den Kopf umstellen.

Also nicht vergleichen, sondern die Stärken der verschiedenen Compiler nutzen.

!!! Schon mal mit Powerbasic für Linux ein Programm geschrieben ?
Zuletzt geändert von mk-soft am 28.06.2010 21:50, insgesamt 1-mal geändert.
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
TomS
Beiträge: 1508
Registriert: 23.12.2005 12:41
Wohnort: München

Re: undokumentierte Konstanten

Beitrag von TomS »

Welche weitergehenden Optimierungen?

Du hast schon Recht. Codes die SPC-"kompatibel" sind, werden mit MPC weder länger beim kompilieren brauchen, noch wird die EXE dadurch langsamer oder sonst irgendwie eingeschränkt.
Man kann die Aussage von ts-soft, dass man sich eine andere Sprache suchen soll, wenn man gerne Prozeduren ans Ende der Datei schreibt, auch getrost ignorieren.

So wie ich das sehe, würde es aber einen sehr erheblichen Mehraufwand für Fred und Co bedeuten PB in einen MPC zu verwandeln. Im schlimmsten Fall müsste der Compiler sogar zu 100% neu geschrieben werden.
Und ich glaube nicht, dass irgendwelche weiteren Optimierungen, die ein MPC ermöglicht diesen Mehrufwand aufwiegen können.

Die ursprüngliche Offtopic-Frage lautete ja, warum man Declare braucht und die Antwort lautet: Weil PB ein SPC ist.
Die Lösung für dieses "Declare-Problem" liegt aber nicht darin PB zum MPC zu machen, sondern Pre-Compiler und IDE-Tools.

Ich weiß auch nicht, wie du darauf kommst, Declare sei überflüssig.
Es wird eben benötigt, damit der Code von einem SPC kompiliert werden kann.
Benutzeravatar
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

Beitrag von ts-soft »

KPA hat geschrieben:@Vera

Ja das mit dem Beleidigen dachte ich mir auch als Ts-soft mir unterstellte, den Rest hätte ich nicht verstanden
PureBasic ist in der Lage, im gegensatz zu PowerBasic, unbenutze Proceduren nicht mit zu kompilieren,
somit sind diese auch nicht in der Exe und diese bleibt schön klein. Wenn aber alle Proceduren vorher
referenziert werden, müssen diese auch mit kompiliert werden, somit wird die Exe grösser. Je grösser
die Exe, umso länger die Ladezeit, also auch langsamer.

MPC hat also mehr Nachteile als Vorteile. Ausserdem wird es das in PB zumindest in den nächsten
Jahren nicht geben, also ist Dein IMHO unnötiger Wunsch ziemlich sinnlos.

Aber warum antworte ich Idiot den noch, wird sowieso nicht verstanden, weil ja bereits alles gesagt wurde :mrgreen:
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.
Bild
Gesperrt