Interview mit N. Wirth
-
- Beiträge: 6194
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Interview mit N. Wirth
Da würde ich nach ein inline hinter der procedure anhängen.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
- fliegermichl
- Lazarusforum e. V.
- Beiträge: 1435
- Registriert: Do 9. Jun 2011, 09:42
- OS, Lazarus, FPC: Lazarus Fixes FPC Stable
- CPU-Target: 32/64Bit
- Wohnort: Echzell
Re: Interview mit N. Wirth
oder wieder die Version für Schreibfaule mit DefaultparameterWinni hat geschrieben: ↑Do 10. Sep 2020, 17:24Code: Alles auswählen
procedure incF (var f: single; increment: single); begin f := f + increment; end;
Code: Alles auswählen
procedure incF (var f: single; increment: single = 1);
begin
f := f + increment;
end;
-
- Beiträge: 369
- Registriert: Do 8. Jun 2017, 18:21
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10, FPC 3.2.0
- CPU-Target: 64Bit
- Wohnort: Wien
Re: Interview mit N. Wirth
oder vielleicht
lol
Leute, ich verstehe euch nicht.
Natürlich muss man sich an jede Änderung erstmal gewöhnen, aber etwas kompakterer Code ist immer besser, angenehmer zu schreiben und angenehmer zu lesen. Wie kann man lieber eine selbstgeschriebene Funktion verwenden (bei der jeder, der das Programm nicht kennt und bearbeitet erst nachschauen muss, was die genau macht), als ein fest in die Sprache eingebautes Feature zu verwenden?
Code: Alles auswählen
procedure incF (var f: single; increment: single);
begin
f += increment;
end;
Leute, ich verstehe euch nicht.
Bloß weil das Sprachkonstrukt im ursprünglichen Pascal nicht existiert hat, ist es doch nicht schlechter als eine Klassendefinition. Die gabs im Ur-Pascal auch nicht.
Natürlich muss man sich an jede Änderung erstmal gewöhnen, aber etwas kompakterer Code ist immer besser, angenehmer zu schreiben und angenehmer zu lesen. Wie kann man lieber eine selbstgeschriebene Funktion verwenden (bei der jeder, der das Programm nicht kennt und bearbeitet erst nachschauen muss, was die genau macht), als ein fest in die Sprache eingebautes Feature zu verwenden?
- m.fuchs
- Lazarusforum e. V.
- Beiträge: 2640
- Registriert: Fr 22. Sep 2006, 19:32
- OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
- CPU-Target: x86, x64, arm
- Wohnort: Berlin
- Kontaktdaten:
Re: Interview mit N. Wirth
Das ist deine Meinung, ich widerspreche da allerdings. Klar, unnötiges Aufblähen des Codes sollte man vermeiden. Eine gewisse Ausformulierung zähle ich aber nicht dazu. Deswegen benutze ich ja Pascal und kein C.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
- Winni
- Beiträge: 1577
- Registriert: Mo 2. Mär 2009, 16:45
- OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
- CPU-Target: 64Bit
- Wohnort: Fast Dänemark
Re: Interview mit N. Wirth
Hi!
Das ist es ja gerade, wogegen sich N. Wirth gewendet hat:
Das unnötige Aufblähen der Syntax.
Und hier noch ein bischen C, und dort noch ein bischen Java, und bitte abschmecken mit Basic und SQL.
Und am Ende landet man bei solch einem Monster wie ADA, das alle Programmiersprachen, die jemals in den amerikanischen Streitkräften benutzt wurden, vereint. Grusel!
Die fpc-Macher sind eifrigst bemüht, jegliche C-.Konstrukte rauszuschmeissen. Falls die jemand unwissentlich eingeschmuggelt hat. Sie haben gute Gründe.
Keep It Simple Stupid !!!!
Winni
Das ist es ja gerade, wogegen sich N. Wirth gewendet hat:
Das unnötige Aufblähen der Syntax.
Und hier noch ein bischen C, und dort noch ein bischen Java, und bitte abschmecken mit Basic und SQL.
Und am Ende landet man bei solch einem Monster wie ADA, das alle Programmiersprachen, die jemals in den amerikanischen Streitkräften benutzt wurden, vereint. Grusel!
Die fpc-Macher sind eifrigst bemüht, jegliche C-.Konstrukte rauszuschmeissen. Falls die jemand unwissentlich eingeschmuggelt hat. Sie haben gute Gründe.
Keep It Simple Stupid !!!!
Winni
-
- Lazarusforum e. V.
- Beiträge: 3158
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: Interview mit N. Wirth
Da kann Delphi aber gut mitmachen . Die neuen Attribute sind da echt nicht so klar, wie man sich das als Entwickler wünscht.
Gerade das [volatile] Attribut ist so herrlich undefiniert, wie es in C++ bis zum aktuellen Stand C++ 20 war.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
- Winni
- Beiträge: 1577
- Registriert: Mo 2. Mär 2009, 16:45
- OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
- CPU-Target: 64Bit
- Wohnort: Fast Dänemark
Re: Interview mit N. Wirth
Hi!
Bei Sockes Post über Delphi bekommt man ja das Grauen.
Ich hab kein aktuelles Delphi und kümmer mich eigentlich auch nicht um Delphi.
Aber:
Erst werden alle möglichen Cache-Mechanismen bemüht, um den Ablauf zu beschleunigen.
Und dann braucht man Befehle um diese Mechanismen zu deaktivieren.
Und diese Syntax mit dem [vorangestellten Attribut] ist ja wohl das Letzte!
Ich krame gleich mein altes Turbo-Pascal wieder raus.
Oder mein altes UCSD-Pascal.
Winni
Bei Sockes Post über Delphi bekommt man ja das Grauen.
Ich hab kein aktuelles Delphi und kümmer mich eigentlich auch nicht um Delphi.
Aber:
Erst werden alle möglichen Cache-Mechanismen bemüht, um den Ablauf zu beschleunigen.
Und dann braucht man Befehle um diese Mechanismen zu deaktivieren.
Und diese Syntax mit dem [vorangestellten Attribut] ist ja wohl das Letzte!
Ich krame gleich mein altes Turbo-Pascal wieder raus.
Oder mein altes UCSD-Pascal.
Winni
-
- Beiträge: 830
- Registriert: Mi 3. Jun 2020, 07:18
- OS, Lazarus, FPC: L 2.0.8, FPC Trunk, OS Win/Linux
- CPU-Target: Aarch64 bis Z80 ;)
- Wohnort: München
Re: Interview mit N. Wirth
Vor allem, wenn man im Zusammenhang mit Hardware arbeitet, ist es sehr wichtig, dass einem der Optimizer keinen Strich durch die Rechnung macht. Wobei in FPC dies durch ein Volatile-Intrinsic erreicht wird, das an der jeweiligen Zugriffsstelle genutzt wird, damit nicht jeder Zugriff darunter zu leiden hat.
Da klage ich quasi schon seit erscheinen der Syntax mit Delphi 8.Net drüber, da sich CodeGear (oder war das damals sogar noch Borland?) einfach komplett an C# orientiert hat, statt dies mit einer Pascal-artigeren Syntax zu machen. FPC 3.3.1 unterstützt die mittlerweile auch zumindest für Typen und published Properties.
FPC Compiler Entwickler