Ein ketzerische Frage

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
ZenForAll
Beiträge: 38
Registriert: Fr 1. Sep 2023, 18:24

Ein ketzerische Frage

Beitrag von ZenForAll »

Hallo mein erster Post und gleich so kontrovers
Ich habe in den letzten Jahren mehr in Arduino C++ programmiert und
die Syntax schätzen gelernt. Das letzte gekaufte Delphi war XE6
Nun da ich meinen Rechner neu aufgesetzt habe und ich die Registration nicht mehr machen wollte hab ich mal Lazarus eine Chance gegeben, weil größere Sachen, will ich nicht mehr programmieren.
Deswegen meine komische Frage
Pascal ist doch sehr verstaubt und doch meine große Liebe, aber warum wird Pascal nicht weiter entwickelt.
Warum behält man nicht die großartige lesbare Syntax von Pascal bei aber erweitert diese Sprache nicht um die Vorzüge von C++
Ein simples Beispiel ist get rid of begin end und ändert das in {}
Ändert das for x := i in die C++ Syntax. Die Sprache würde meiner Meinung ein wenig ihr Nischen Dasein verlassen wenn man es ein wenig modewrner macht. Leider sind meine Programm Kenntnisse zu bescheiden so etwas anzugehen. Ich freue mich auf eure Antworten.
By the way Ihr Programmierer von Lazarus :D :D :D :D :D :D :D :D :D :D :D

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2641
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: Ein ketzerische Frage

Beitrag von m.fuchs »

Für ketzerisch Fragen bin ich hier zuständig - lass mich nur kurz den Scheiterhaufen vorwärmen... :mrgreen:

Kurze Antwort: weil die Syntax von C Scheiße ist.

Lange Antwort: Welchen Vorteil sollte so etwas haben? Wenn man plötzlich C schreibt, dann kann man auch gleich C nehmen.

Pascal ist sicherlich weitschweifiger (begin..end vs. {..}) aber damit auch lesbarer. Und nach über 30 Jahren in der Softwareentwicklung habe ich wenigsten eines gelernt:
Das was richtig Zeit kostet, ist unleserlicher Code. Wenn ich erst wieder ein paar Stunden brauche um mich in den Quellcode einzulesen, nur damit ich eine Zeile Bugfix einbauen kann, dann ist das verschwendete Zeit.

Die For-Schleife von Pascal in die von C zu ändern geht übrigens gar nicht - C hat nämlich keine. Bei C gibt es ausdrucksorientierte Schleifen, die dort als For-Schleife bezeichnet werden. Die sind aber eigentlich was anderes.

Ja, man kann das in C auch benutzen um durch verkette Liste o.ä. zu iterieren, aber dafür gibt es in Freepascal eine eigene Möglichkeit for..in. Womit ich dann schlußendlich auch zeigen möchte: in Freepascal wird auch Pascal weiterentwickelt. For..in ist nämlich ein relativ neues Element in der Sprache. Wie viele andere Elemente auch. Der Fortschritt geht auch hier immer weiter.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

siro
Beiträge: 732
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: Ein ketzerische Frage

Beitrag von siro »

Muss ich jetzt mal loswerden: :wink:

Also ich bin seit knapp 40 Jahren dabei mit Pascal
und musste notgedrungen in der Firma irgendwann mit C arbeiten.

Seitdem haben sich die Debuggingzeiten ver"C"ehnfacht...
Im Laufe der Jahre hab mich mich natürlich auch intensiv mit "C" beschäftigt
und muss aus meiner Sicht sagen: Ohje.....
Das ist wirklich extrem Fehleranfällig.

Die wenigsten wissen vermutlich was es mit der Integer Promotion auf sich hat,
aber das ist eine der katastrophalsten Eigenschaften in C überhaut.

Dann gibt es die Präzedenztabelle, welche die Reihgenfolge von Operatoren beschreibt,
die ist derartig abartig, dass man vom Glauben abfällt.
Schiebeoperationen sind normalerweise Multiplikationen bzw Divisionen um 2er Potenzen,
aber die werden nicht bevorzugt, im Vergleich zu "vernünftigen" Programmiersprachen.
SHR 1 ist eine Division durch 2 und was haben wir mal gelernt: Punktrechnung vor Strichrechnung
aber das gilt in "C" halt nicht.....

Bis zu 190 Fälle undefinierten Verhaltens enthält die aktuelle Version des C99-Standards.
Es ist also NICHT eindeutig festgelegt, wie der Compiler eine C-Anweisung zu übersetzen hat.

Wer hier sicherheitsrelevante Anwendungen schreibt, wie ich in der Medizintechnik,
kann die Problematikenvon C garnicht mehr verantworten....
Für mich ein absolutes NoGo in diesen Bereichen.

Ich will da auch garnicht weiter ausschweifen, aber der C Code ist teils kaum nachvollziehbar/lesbar
Pascal liest man wie ein Buch, sofern der Code einigermaßen vernünftig codiert ist.

Pascal wurde ja auch immer mehr erweitert.
Zuweisung x+=3; kann man ja inzwischen auch schreiben,
aber ehrlich gesagt wo ist da der Gewinn ? Und die geschweifeten Klammen anstelle von Begin und End, finde ich völlig irrelavant,
auch die Symboliken der Operatren AND OR NOT usw. liest man einfach so weg in Pascal, bei C fängt man an zu grübeln,
was war das jetzt....

Unleserlichen Code kann man in jeder Sprache schreibem, in "C" fällt es einem aber leichter.... :mrgreen:
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

MmVisual
Beiträge: 1470
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 3.0 FPC 3.2)
CPU-Target: 32/64Bit

Re: Ein ketzerische Frage

Beitrag von MmVisual »

Ich programmiere beides. C und Pascal.
C für Mikrocontroller, deshalb weil sämtliche Demos und Codevorlagen aller µC Hersteller in C geliefert werden und es ist bei den modernen STM32H7 mit Display und TouchGFX nicht machbar in Pascal zu schreiben. Auch können die Kollegen das C.
Hingegen PC Programme schreibe ich immer mit Lazarus.

Das verstaubte Pascal kann in der Zwischenzeit eine Integer Variable direkt zu ein String wandeln, "i.ToString", das war früher ebenfalls nicht möglich.
Die Stringverarbeitung ist nach wie vor in dem verstaubten C eine gravierende Katastrophe, erst recht wenn man Display Anwendungen schreibt, die sämtliche in der Welt verfügbaren Sprachen darstellen soll. C ist weder UTF8 Tauglich noch Unicode tauglich. Selbst bei den Quellcode Dateien muss man da auf das korrekte Format achten, standardmäßig ist das ASCII und dann kommt am Ende nur Müll raus. C++ ist da ebenfalls keinen Punkt besser. Hingegen das moderne Pascal hat sich über die Jahre von "ASCII" in "UTF8" gewandelt, kann sämtliche Zeichen und es gibt Datentypen für Unicode.

Somit: Pascal hat sich der neuen Anforderung durchaus angepasst.
C und C++ sind nach wie vor ein verstaubter alter Schrott, den niemand optimieren möchte.
Dafür wurde nun das C# erfunden, welches mit C und C++ gar nichts mehr zu tun hat. Wenn man sein Projekt auf C# "hochziehen" möchte heist das in großen Teilen neu programmieren. Das ist ebenfalls ein schei# aufwand, den gibt es bei Pascal nicht.

Von daher ist Pascal zwar alt, jedoch alles andere als verstaubt, sondern in den letzten 20 Jahren stetig weiter gewachsen. Das sind so starke Pluspunkte, das verhalten findet man so bei kaum einer anderen Programmiersprache.
EleLa - Elektronik Lagerverwaltung - www.elela.de

Benutzeravatar
h-elsner
Lazarusforum e. V.
Beiträge: 259
Registriert: Di 24. Jul 2012, 15:42
OS, Lazarus, FPC: LINUX Mint21.1, Win10, Lazarus 2.2.4, FPC3.2.2
CPU-Target: X86-64; arm 32bit
Wohnort: Illertissen
Kontaktdaten:

Re: Ein ketzerische Frage

Beitrag von h-elsner »

Ich würde gerne auch in C programmieren, speziell für die µController. Ich habe z.B. den ESP8266 lieben gelernt. Was mich aber bei C (oder C++) wirklch stört und was ich für groben Blödsinn halte, sind komische Zeichen als Operatoren. Der Quelltext sieht aus, als ob sich ein Hund auf der Tastatur gewälzt hätte. Wie kann man auf die Idee kommen, geschweifte Klammern als Anfang (begin) und Ende (end) eines Blockes zu nehmen? Völlig bescheuert. Ohne Einrückungen bist du da komplett verloren. Unlesbar!

Wie oben gesagt, Lesbarkeit des Codes ist das wichtigste Leistungsmerkmal überhaupt. Sonst kann ich gleich in Assembler programmieren oder die Hex-Codes so runterschreiben.

IMHO...

Gruß HE

Warf
Beiträge: 1913
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Ein ketzerische Frage

Beitrag von Warf »

ZenForAll hat geschrieben:
Fr 1. Sep 2023, 18:37
Ein simples Beispiel ist get rid of begin end und ändert das in {}
Das höre ich sehr oft, aber das ist ein absolutes non problem. Niemand wählt eine Sprache wegen so kleinigkeiten, ob du (bzw eher deine IDE) jetzt {} oder begin-end schreibst macht keinen wirklichen unterschied. Die meiste Zeit beim Programmieren geht nicht fürs Schreiben drauf, sodass man das optimieren muss, sondern fürs lesen und überlegen.
In großen Projekten schreibt der durchschnittliche Entwickler nur 10 Zeilen Code am tag. Da macht es absolut nix aus ob in man da 6 Buchstaben mehr oder weniger schreiben muss, das ist nicht der Flaschenhals.
ZenForAll hat geschrieben:
Fr 1. Sep 2023, 18:37
Ändert das for x := i in die C++ Syntax.
Wenn die C for syntax so toll ist, warum gehen dann alle Sprachen weg davon? Fast alle Sprachen benutzen mittlerweile iterator basierte for-in loops (pascal ja auch), mit lazy generatoren.

Der C for loop ist eins dieser Konzepte die von Assembler Programmierern ausgedacht wurden um ihr leben leichter zu machen (sowie z.B. auch das C Switch Case), und ist sehr Toll für low level Systemprogrammierung, aber für die allermeisten Fälle ist es tatsächlich nicht sehr leserlich.

Und der Pascal for loop hat einen echten Vorteil, Grenzwert checking. Beispiel, versuch mal das mit C umzusetzen:

Code: Alles auswählen

var
  s: ShortInt;
begin
  for s:=0 to High(ShortInt) do
    WriteLn(s);
end. 
Der naive ansatz:

Code: Alles auswählen

for (int8_t s=0; s<=INT8_MAX; ++s)
  printf("%d" PRIu8 "\d", s);
And hier hast du eine Endlosschleife weil nach INT8_MAX erneut Inkrementiert wird, das Triggert den overflow und damit ist s wieder kleiner und es startet von vorn

Ich benutze gerne C++, ich mag einige features davon, z.B. Varardische Template argumente, Lokale Konstruktoren und Destruktoren, Move operationen, etc. Alles coole features.
Die beiden sachen die du hier genannt hast sind aber M.E. nach absolute non-Probleme die absolut nix verbessern würden

ZenForAll
Beiträge: 38
Registriert: Fr 1. Sep 2023, 18:24

Re: Ein ketzerische Frage

Beitrag von ZenForAll »

Oh danke für eure aufschlussreichen Ausführungen.
Meine große Liebe ist ja auch Pascal aber mit einem modernen Editor ist die {} Thematik kein Problem mehr. Lassen wir es dabei. Etwas ketzerisches zum Abschluss. Warum wird Pascal dann immer weniger von Programmierern benutzt.

Als ich Pascal in den 80 gelernt hatte, habe ich viele Routinen in asm geschrieben. Heute weiß ich nicht mal mehr die Befehle und Register. Ich programmiere nur aus Spaß und danke an die Leute die Lazarus programmiert haben. Habt ihr im Forum einen Bereich und da Mal fragen zu stellen.

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2641
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: Ein ketzerische Frage

Beitrag von m.fuchs »

ZenForAll hat geschrieben:
Sa 2. Sep 2023, 20:51
Etwas ketzerisches zum Abschluss. Warum wird Pascal dann immer weniger von Programmierern benutzt.
Warum fahren Menschen kurze Strecken mit dem Auto und fliegen innerhalb Deutschlands per Flugzeug? Warum denken Menschen, dass Putin in die Ukraine einmarschiert ist um das Land von Nazis zu befreien? Warum waschen sich Menschen nach dem Pinkeln nicht die Hände? Warum konsumieren wir so sehr, dass die jährlichen Ressourcen bereits am 2. August aufgebraucht sind? Warum ist die Mehrheit für eine Fiskalpolitik von der die meisten Nachteile haben? Warum konsumieren Menschen Drogen die keinerlei Vorteile aber viele Nachteile bringen?

Diese Fragen kann man endlos weiterstellen und wird kaum zu einer zufriedenstellenden Antwort kommen.

Als Zyniker würde ich sagen: weil wir alle immer mehr verdummen. Kann man auch gut als Antwort auf deine ursprüngliche Frage benutzen. Also wenn man Zyniker ist.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Warf
Beiträge: 1913
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Ein ketzerische Frage

Beitrag von Warf »

ZenForAll hat geschrieben:
Sa 2. Sep 2023, 20:51
Lassen wir es dabei. Etwas ketzerisches zum Abschluss. Warum wird Pascal dann immer weniger von Programmierern benutzt.
Wird es nicht. Stackoverflow bring jedes jahr das Developer Survey raus, und einer der Punkte ist leute die die Sprache neu Lernen, und da war für Delphi (gibt keine Pascal kategorie direkt) der Anteil in 2022 nor 0.88% während 2023 es schon 1% ist. Es werden also mehr.
https://survey.stackoverflow.co/2023/#m ... uage-learn
https://survey.stackoverflow.co/2022/#m ... uage-learn

Generell wenn man sich das mal so anschaut, dann ist Delphi vergleichbar mit den typischen Nieschensprachen wie Lisp, Zig, OCaml, Scala und sogar Swift ist mit 2.47% nicht weit ab. Klar es ist jetzt nicht die neue Hype Sprache a'la JavaScript oder Python, aber wenn sich Pascal so hält wie LISP, dann ist das doch schonmal sehr stabil.

Auch interessant ist das "Admired vs Desired", das im Grunde misst wie viele Leute angegeben haben vorzuhaben im nächsten Jahr eine Sprache benutzen zu wollen, vs wie viele Leute die Sprache weiter benutzen wollen. Der Admired Wert von Delphi ist mit fast 63% sehr hoch und damit deutlich höher als z.B. C, C++, JavaScript oder Java.
Daran erkennt man das nur weil eine Sprache Populär ist, sie nicht unbedingt gemocht wird. Grade wenn man sich JavaScript oder Java anschaut sieht man mit den Nidrigen Admired Werten das sind Sprachen die nutzen Programmierer weil sies müssen, auch wenn sie es lieber nicht machen würden.
Umgekehrt heist es für Pascal, wenn mal jemand rum kommt es Auszuprobieren sind die Chancen sehr hoch das die Person bleibt.

https://survey.stackoverflow.co/2023/#t ... nd-desired

delphifreak
Beiträge: 23
Registriert: Di 10. Mär 2015, 19:08
OS, Lazarus, FPC: Mint 21.3 Lazrus 3 Win10/Win11 Delphi 12.x Athens

Re: Ein ketzerische Frage

Beitrag von delphifreak »

Ich habe bis heute noch keine gute Antwort erhalten, wieso eine Programmiersprache "case-sensitive" sein muss.
Ich verdiene meinen Lebensunterhalt seit 26 Jahren mit Software Entwicklung (Delphi) und habe dieses "Sprach-Feature" nie vermisst.
Aus meiner Sicht ist das nur eine weitere Quelle für Programmier-Fehler.

Mathias
Beiträge: 6210
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Ein ketzerische Frage

Beitrag von Mathias »

Wird es nicht. Stackoverflow bring jedes jahr das Developer Survey raus, und einer der Punkte ist leute die die Sprache neu Lernen, und da war für Delphi (gibt keine Pascal kategorie direkt) der Anteil in 2022 nor 0.88% während 2023 es schon 1% ist. Es werden also mehr.
Krass, viele Punkte der interpreter-Müll hat.
Das C/C++ weit oben ist, dies ist verständlich. C und Pascal ist fast ebenbürtig, was hinten beim Compiler raus kommt. Der grösste Unterschied ist nur, das in Schulen, UNI, etc. viel Werbung für C gemacht wird.
Ich habe bis heute noch keine gute Antwort erhalten, wieso eine Programmiersprache "case-sensitive" sein muss.
Ich verdiene meinen Lebensunterhalt seit 26 Jahren mit Software Entwicklung (Delphi) und habe dieses "Sprach-Feature" nie vermisst.
Aus meiner Sicht ist das nur eine weitere Quelle für Programmier-Fehler.
Dies habe ich auch nie vermisst. Da ist die Pascal Lösung eiiges besser. Ein T für Type, ein P für Pointertypen.
And hier hast du eine Endlosschleife weil nach INT8_MAX erneut Inkrementiert wird, das Triggert den overflow und damit ist s wieder kleiner und es startet von vorn
Da bin ich mal bei einem Arduino stecken geblieben, schlussendlich musste man da einen 16 biter als Zähler nehmen.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

charlytango
Beiträge: 845
Registriert: Sa 12. Sep 2015, 12:10
OS, Lazarus, FPC: Laz stable (2.2.6, 3.x)
CPU-Target: Win 32/64, Linux64
Wohnort: Wien

Re: Ein ketzerische Frage

Beitrag von charlytango »

m.fuchs hat geschrieben:
Sa 2. Sep 2023, 22:09
Als Zyniker würde ich sagen: weil wir alle immer mehr verdummen.
:arrow: Stimmt leider -- und je dümmer desto, leichter zu lenken.

ZenForAll
Beiträge: 38
Registriert: Fr 1. Sep 2023, 18:24

Re: Ein ketzerische Frage

Beitrag von ZenForAll »

Wow Danke für die spannenden Antworten.
Ich selber neige dazu schlampig zu programmieren und C zwingt mich mit dem Case Sensetivity meinen
Code zu strukturieren. Ich bin Gesundheitlich eingeschränkt.
Was mir in der Nacht eingefallen ist Alle Programmier Sprachen die ich kenne von Java Script über PHP Pearl etc. benutzen die Syntax {}
Ich bin der festen Meinung (wahrscheinlich liege ich falsch) das ein kleines Refresh Pascal gut tun würde. Sind wir mal ehrlich.
Junge Leute machen was, weil es "Cool" sein muss, also braucht Pascal eine Coole Glasur. Nur ein spinniger Gedanke.
Im Grunde wollte ich mal checken wie ihr hier tickt. Weil ich eine geistige Beeinträchtigung habe, werde ich in vielen Foren negativ wahrgenommen.
Das einzige Forum wo die Leute immer freundlich sind auch wenn ich mal eine blöde Frage stelle, ist das 3D Drucker Forum https://drucktipps3d.de/forum/
Danke das es euch gibt. Respekt ist nicht nur eine Rhetorische Frage man muß es auch leben

Warf
Beiträge: 1913
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Ein ketzerische Frage

Beitrag von Warf »

ZenForAll hat geschrieben:
So 3. Sep 2023, 09:32
Was mir in der Nacht eingefallen ist Alle Programmier Sprachen die ich kenne von Java Script über PHP Pearl etc. benutzen die Syntax {}
Ich bin der festen Meinung (wahrscheinlich liege ich falsch) das ein kleines Refresh Pascal gut tun würde. Sind wir mal ehrlich.
Das haben wir aber einfach nur Java zu verdanken. Bevor Java groß wurde waren Pascal und Basic zusammen mit C die drei Großen Sprachen. Dann kam Java raus und Java hat einfach "gewonnen". Das hat weniger mit der Syntax zu tun, sondern einfach das Java zum richtigen Zeitpunkt die richtigen Features hatte. Volle ausrichtung auf OOP und das Tooling das die JVM erlaubt hat haben einfach die Entwicklerwelt überschwemmt.
Davor hatten war die sprachwelt sehr aufgeteilt. Klar PHP hat die C syntax, aber im selbe Jahr kam Ruby raus, was auch eine sehr beliebte Sprache wurde, und das hat eine Verbose syntax. Perl kam im selben Jahr raus wie TurboBasic, und vor Java war TurboBasic sehr beliebt. Und eine der beliebtesten Sprachen die auch vor Java entwickelt wurde ist Python, explizit auch nicht die C syntax benutzt.

Nach Java kam natürlich die Welle an Java Klonen, JavaScript hat nicht umsonst den Namen bekommen. C# was als 1-1 Java Klon angefangen hat hat ziemlich schnell VB überholt, obwohl es an sich von den Features here identisch war, einfach nur weil Java so dominant war.

Also wenn man das ganze historisch betrachtet gibt es eigentlich absolut keinen Grund annzunehmen das die Sprachen die Syntax benutzen weil die Syntax beliebter ist. Es ist eigentlich anders rum, die Syntax wurde einfach nur in beliebten Sprachen verwendet, weshalb sie überall kopiert wurde. Wenn die Syntax so viel beliebter wäre, warum hat das niemand in den ersten 30 Jahren die es die gab gemerkt?

Wenn eine Sprache beliebt sein will braucht sie coole (und konsistente) features. Du kannst die Beste Syntax allerzeiten haben (was auch immer das bedeutet), wenn die Features nicht stimmen dann benutzt niemand die Sprache, auf der anderen Seite kann man eine absolut grauenvolle syntax haben, aber wegen den Features unerlässlich sein.
Beispiel JavaScript, niemand mag JavaScript, wie man bei dem SO Survey sehen kann. Die Sprache ist so schlecht das sich TypeScript Entwickelt hat, was im Grunde die Idee hat "Was wenn JavaScript nur in gut". Aber da es DIE websprache ist, ist das egal, leute benutzen es trozdem.

Wenn Pascal begin-end zu {} ändern würde, würde das Folgende passieren, erstmal würden alle bestehenden Code-bases kaputt gehen, und die bestehenden Pascal Entwickler würden sich beschwerer, und vermutlich würde ein Großteil das neue Feature nicht benutzen, und auf Alternativversionen umsteigen. D.h. die bestehende Nutzerbasis wird substantiell schrumpfen.
Und dann stellt sich die Frage, warum sollten leute jetzt plötzlich zu Pascal wechseln wenn sies vorher nicht gemacht haben? Klar Pascal sieht jetzt aus wie C, aber das ist nicht grade ein USP, C sieht aus wie C, C++, Swift, Java, C#. Warum sollte jemand der Aktuell glücklich ist eine dieser Sprachen zu benutzen, diese andere Sprache benutzen wo grade sich die hälfte der Nutzerbasis verabschieded hat?

In dem Stack Overflow survery sind noch ein paar weitere interessante Punkte, z.B. Die Developer Rollen, also was wird wie viel gemacht: https://survey.stackoverflow.co/2023/#d ... oper-roles
Über 50% der Befragten arbeitet im Webdevelopment bereich (Fullstack mit 33,48%, Backend mit 17,88% und Frontend mit 6,6%). Hier hat sich Pascal nicht wirklich gut Positioniert. Es ist zwar Möglich, ist aber wender Historisch das Steckenpferd, noch ist es aktuell so ausgereift wie z.B. React, Blazor o.ä.

Desktop und Enterprise hat zusammen nur 5.08%, das ist das wo Pascal Historisch und Aktuell am Stärksten ist. Die LCL bzw. VCL zusammen mit dem RAD Tooling ist extrem Stark hier und auch sehr ausgereift. Wobei der Enterprise Bereich natürlich nach wie vor von Java dominiert wird.

Ich würde daher vermuten das der Grund warum Pascal eine Nichensprache ist mit nur (laut SO Survey 3% der Befragten), dann liegt das vermutlich daran das die Hauptniche die Pascal mit seinen Bibliotheken und Tooling bedient insgesammt nur 5% ausmacht. Wenn sich daran nichts Ändert, bringen alle Syntaxänderungen sowieso schonmal nix

Warf
Beiträge: 1913
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Ein ketzerische Frage

Beitrag von Warf »

Mathias hat geschrieben:
So 3. Sep 2023, 08:46
Krass, viele Punkte der interpreter-Müll hat.
Das C/C++ weit oben ist, dies ist verständlich. C und Pascal ist fast ebenbürtig, was hinten beim Compiler raus kommt. Der grösste Unterschied ist nur, das in Schulen, UNI, etc. viel Werbung für C gemacht wird.
Nur weil was interpretiert ist ist es ja nicht schlecht. Und ich meine die Positionierungen sind ja schon irgendwie klar. JavaScript, HTML/CSS und SQLsind ziemlich Domainspezifisch auf Web Development ausgelegt, was die Dominante Entwicklerniche aktuell ist (siehe weiter unten im survery: über die Hälfte aller Entwickler arbeitet in Web Development). Klar man kann sich viel darüber beschweren das JavaScript ne schlechte Sprache ist, aber wenn man webdev macht muss man sie halt benutzen. Es gibt keine andere Alternative. Selbst mit sowas wie Pas2JS muss man JavaScript kennen, da es im grunde nur ein Wrapper für JS APIs ist, deren Dokumentation komplett auf JS ausgelegt ist.

Und bash ist halt die Sysadmin sprache schlecht hin. Ich mein stell dir mal vor du müsstest um ein einfaches LS in einem Ordner zu machen ein Pascal programm für schreiben. Es hat einen Grund warum Leute Bash für sowas benutzen.
Danach fangen schon die Kompilierten Sprachen an, TypeScript, Java, C#, C++, etc.

Die einzige Sprache die m.E. nach "Fehlplatziert" ist ist Python. Python ist eine echt gute Scriptsprache und optimal für Klebecode zu schreiben der einfach nur daten von einer Bibliothek in eine andere zu schieben. Deshalb wurde Python ja auch so beliebt in der ML und DataScience Welt. Niemand würde dafür eine Kompilierte Sprache nehmen. Durch den Boom von AI und DataScience ist Python allerdings auch groß geworden, und auf dem Schirm der Management Ebene gelandet, die denken "Wenn jeder Aktuell so viel mit Python macht, muss es ja gut sein" und seit dem wird Python extrem viel außerhalb der Bereiche benutzt wo es wirklich gut ist.

Antworten