Free Pascal für die Schule

Paul55

Mitglied
Thread Starter
Dabei seit
04.02.2018
Beiträge
1
Reaktionspunkte
0
Hi,
ich brauche für die Schule FPC auf meinem Computer (MacBook, MacOS Sierra 10.12.6). Habe schon Xcode und Developer Tools installiert, klappt aber alles nicht.
Habe auch schon versucht, in der Schule geschriebene kleine Programme im Terminal zu starten - auch nichts.
Was fehlt oder könnte ich übersehen haben?
Ich komm nicht weiter.
Freue mich über eine schnelle Antwort

P55
 
In homebrew gibt's fpc.

1.) homebrew installieren (auf deren Website steht wie)
2.) "brew install fpc" im Terminal eingeben
 
Oder die Mac Version hier herunterladen?
Ob die überhaupt noch funktioniert, weiß ich allerdings nicht.
https://www.freepascal.org/download.var

Aber welche Schule lehrt denn heute noch PASCAL bzw. warum?
Oder wird das heute wirklich noch aktiv in der Softwareentwicklung eingesetzt?
 
Ich bekomm schon ganz feuchte Füße, hab als Kind in den 80ern mit Pascal angefangen. Ich halte das für ne sehr edle Programmiersprache. Warum dann nicht zu Lehrzwecken einsetzen ?
 
Äh... wat?! Also im Gegensatz zu Rotwein reift eine Programmiersprache nicht, wenn man sie ein paar Jahre lang liegen lässt. Pascal ist tot. Sowohl in der Industrie als auch in der Lehre. Klar kann man mit der Sprache immer noch (prozedural) programmieren lernen, aber warum sollte man? Pascal hat keine Objektorientierung, keine funktionalen Features, so gut wie keine Libraries und die heute üblichen Helferlein im Code-Editor (linter/hinter, auto completion) wird man auch vergeblich suchen. Es ist echt schwer, Pascal überhaupt noch etwas positives abzugewinnen.
 
Hab mich - bis auf AppleScript, wo ich viele Parallelen zu Pascal sehe von der Struktur - seit Think Pascal auf dem Würfelmac nicht mehr mit Programmierung beschäftigt. Kleine und mitlere Dinge strick ich mir in Applescript. Höchst unperformant aber der Zweck heiligt die Mittel.

Ausserdem ist man emotional verblendet, was man in den 80ern als Bub mal erlernt hat ist einfach gut, wobei mir die Auferzwingung der Struktur und Ordnung in Pascal sehr gefallen hat.

Aber damals gabs halt für den Freak nur die Auswahl zwischen Chaos (Basic) und Struktur (Pascal).

Klar gab es mehr (Cobol, Fortran, etc) aber das hat man mal kurz in CP/M ausprobiert und das war dann irgendwie doof :-D
 
Äh... wat?! Also im Gegensatz zu Rotwein reift eine Programmiersprache nicht, wenn man sie ein paar Jahre lang liegen lässt. Pascal ist tot. Sowohl in der Industrie als auch in der Lehre. Klar kann man mit der Sprache immer noch (prozedural) programmieren lernen, aber warum sollte man? Pascal hat keine Objektorientierung, keine funktionalen Features, so gut wie keine Libraries und die heute üblichen Helferlein im Code-Editor (linter/hinter, auto completion) wird man auch vergeblich suchen. Es ist echt schwer, Pascal überhaupt noch etwas positives abzugewinnen.

Scheint als hättest du dir Pascal schon länger nicht mehr angesehen. FPC enthält auch objektorientierte Versionen von Pascal (Object Pascal, Delphi). Lazarus war vor ca. 8 Jahren durchaus eine annehmbare IDE mit allem Firlefanz den andere IDEs auch haben. Für was braucht man Bibliotheken um eine Programmiersprache zu lernen? Die Standardbibliothek reicht da vollkommen aus, es sei denn ich möchte mir so tolle Entwickler ran ziehen, die nur in der Lage sind Bibliotheken miteinander zu verbinden.

Aber welche Schule lehrt denn heute noch PASCAL bzw. warum?
Oder wird das heute wirklich noch aktiv in der Softwareentwicklung eingesetzt?

Das könnte daran liegen, dass der Lehrer einfach nichts anderes kann. Und ja, hin und wieder sieht man Projekt-/Jobangebote für Delphi.
 
Ich muss pierredrks zustimmen. Das objektorientierte Pascal (FP oder auch Delphi) hatte zuletzt alle Erweiterungen, die auch Multi-Vererbungen usw. erlaubten. Dass man es heute kaum noch nutzt und statt dessen Pseudoprogrammiersprachen wie Python oder Skriptsprachen wie JavaScript nutzt, hat weniger mit dessen Fähigkeiten als vielmehr der heute gefragten Multi-Plattformunterstützung zu tun - und natürlich damit, dass es kein Pascal für Mobilgeräte gibt. Ich kenne allerdings nach wie vor Firmen, die Delphi als IDE für Oberflächenentwicklung für Windows-Programme einsetzen.
 
Haha, YMMD.

Zu gut, dass es das immer noch in irgendeiner Schule gibt.
 
Für was braucht man Bibliotheken um eine Programmiersprache zu lernen? Die Standardbibliothek reicht da vollkommen aus, es sei denn ich möchte mir so tolle Entwickler ran ziehen, die nur in der Lage sind Bibliotheken miteinander zu verbinden.

Für was brauche ich einen gut bestückten Werkzeugkoffer, wenn ich doch auch mit einem Hammer und einem Schraubenzieher alles reparieren kann was ich will?
Natürlich brauche ich zum Erlernen einer Programmiersprache keine umfangreichen (zusätzlichen) Bibliotheken, wenn ich später allerdings mal ein größeres, komplexeres Programm schreiben will, sind einige gute Bibliotheken, die mir viel Arbeit abnehmen, nicht verkehrt. Weil ich so vielleicht nicht jedes Mal das Rad komplett neu erfinden muss, sondern bereits auf ein gutes Grundgerüst aufbauen kann (das spart viel Zeit).
Außerdem gibt es einige Komponenten, die besser nur von Spezialisten entwickelt werden sollten und die ein Laie besser nicht implementieren und dann in einem fertigen Programm nutzen sollte. Das prominenteste Beispiel dürften kryptografische Algorithmen sein, denn da kann jemand, der keine oder nur wenig Ahnung von Kryptografie und der dahinterstehenden Mathematik hat, schnell Fehler (manchmal reichen da schon ein paar unglücklich gewählte Primzahlen) einbauen, die die Stärke der Verschlüsselung schwächt.
 
Jetzt stellt euch mal nicht päpstlicher an als der Papst.
Ihr tut ja so, als wäre das die erste und letzte Sprache die der TE kennen lernt und dann muss er den Rest seines Lebens mit dieser Sprache zurechtkommen. Ihr dürftet alle sehr wohl wissen, dass kein Programmierer mit einer Sprache zurecht kommt und es nicht die eine Sprache für zig Projekte gibt, sondern man in jedem Projekt mit neuen/anderen Sprachen in Berührung kommen kann. Für viele Projekte werden sogar ganz eigene Sprachen erstellt. Ein Programmierer, der später nicht locker flockig mit wenig Aufwand die Sprache wechseln kann, ist sein Geld nicht wert.
Aber wie gesagt, das ist den meisten hier sehr wohl bekannt, umso weniger verstehe ich woher die Empörung kommt.

Selbst bin ich auch überhaupt kein Freund (mehr) von "einfachen" Sprachen wie Java/Python für den Einstieg. Das wird hier an der Uni seit einigen Jahren genutzt und die Resultate sind katastrophal. Die lernen objektiorientiertes Java im ersten Semester und wenn es dann im 3. an andere programmiersprachliche Konzepte geht, bringt selbst eine rudimentäre Speicherverwaltung bisher ordentliche Studenten ins Wankeln.
Früher wurde Ada gelehrt und das war dafür einfach wunderbar. Nahezu alle relevanten Konzepte in einer Packung in der Standardbibliothek: Pointer, Objektorientierung, Threading, Exceptions, Generics, Strong Typing und ein strikter Compiler der dir eine gewisse Grundhaltung einprügelt. So kann man sich bei Ada praktisch auch explizit entscheiden, welche "Features" der Objektorientierung man nun verwenden möchte oder ob man es nicht will (dynamic dispatch ja/nein etc). Ideal für die Lehre.
Der Einstieg war etwas schwerer, aber es ist trivial sich danach Java anzusehen. Die Praxis zeigt, dass dem andersherum absolut nicht so ist, obwohl man sie sehr wohl dabei unterstützt (nicht mit Vorlesungen/Übungen, aber mit Materialien).
Insgesamt lernen die hier mehrere Sprachen, oder sagen wir besser kommen mit mehreren in Kontakt: Java (allgemein und Erstellung verteilter Systeme/Netze), Python (numerische Anwendungen), VHDL (FPGAs), C|C++, JS (nur knapp für Mockups/Prototyping), Haskell|Lisp (im Rahmen programmiersprachlicher Konzepte).
Diese müssen sie auch aktiv anwenden, bekommen aber keine Einführung in diese Sprache, sondern müssen sich selbst darum kümmern. Der Grundgedanke ist, dass sie die theoretischen Konzepte von Programmiersprachen jetzt ja kennen und praktische Erfahrung aus der Einführung im ersten Semester haben, der Rest ist dann Transferleistung und eigenständige Vorbereit. Dieses Set müssen alle absolvieren und je nachdem wie man sich mit Wahlfächern orientiert werden dann verschiedene davon weiter vertieft: HPC -> C/Fortran, Computergraphik -> C++, etc.pp.
Eine weitere Sprache zu Beginn für die Lehre mehr oder weniger macht da jetzt echt den Kohl nicht fett, wenn man bedankt, dass der Einstieg in was neues dadurch später leichter fällt.

Selbst hatte ich in der Schule übrigens Delphi. Hatte damals gar nicht erst versucht das auf meinem G4 zuhause zu verwenden.
 
Python wurde gerade für Lehrzwecke erfunden und mit Java Kenntnissen hat man quasi unbegrenzte Jobchancen.
Warum sollte man also nicht eine Sprache von denen nehmen? Genau, weil der Informatiklehrer in der Schule "schon immer Pascal" genommen hat und auch nur Pascal kann.
DAS ist der Grund und kein anderer und DAS ist der Grund, warum uns in Informatik andere Länder weglaufen
 
Niemand läuft uns in Informatik "weg", oder was glaubst du wieso unsere Informatikfakultäten zu einem großen Teil von Indern und Chinesen bevölkert sind.
Die verlangen nacher nur deutlich, deutlich weniger Geld für den gleichen (äh, ähnlichen) Job. Das ist der Unterschied...
 
Niemand läuft uns in Informatik "weg", oder was glaubst du wieso unsere Informatikfakultäten zu einem großen Teil von Indern und Chinesen bevölkert sind.
Genau aus dem Grund weil unsere Kinder in der Schule kein anständiges Informatik beigebracht bekommen.
Und in Deutschland gibt es keine einzige ernstzunehmende Informatik-Universität - in Europa kannst du wenn überhaupt in den Niederlanden oder Schweden noch halbwegs fündig werden - in Deutschland sind wir aus historischen Gründen auf Maschinenbau spezialisiert, das können wir auch gut.
 
Ich habe immer noch eine Schwäche für "Pascal" welches im Rahmen meiner Informatik-AG (Abi 1995) meine erste richtige Programmiersprache jenseits des C64 BASIC mit Zeilennummern war.

Write once, compile everywhere.
 
Letztlich ist die verwendete Programmiersprache bei der Informatik ziemlich nebensächlich, denn dort geht es in erster Linie um Problemanalyse und strukturierte Lösungssuche: „Ich habe ein Problem x und suche einen möglichst guten Algorithmus, der dieses Problem löst.“ Das geschieht erstmal ganz ohne Computer und Programmcode und die gefunde Lösung lässt sich fast immer mit verschiedensten Programmiersprachen umsetzen, wenn man denn will. Natürlich möchte man gerade Anfängern (Schülern in einer Schule) auch Erfolgserlebnisse liefern um sie motiviert zu halten, aber dafür muss man sicherlich niemanden mit Speicherverwaltung quälen. Im Informatikstudium ist das natürlich anders, aber Schüler sollten sich auf das wesentliche konzentrieren können.
 
Letztlich ist die verwendete Programmiersprache bei der Informatik ziemlich nebensächlich, denn dort geht es in erster Linie um Problemanalyse und strukturierte Lösungssuche: „Ich habe ein Problem x und suche einen möglichst guten Algorithmus, der dieses Problem löst.“ Das geschieht erstmal ganz ohne Computer und Programmcode und die gefunde Lösung lässt sich fast immer mit verschiedensten Programmiersprachen umsetzen, wenn man denn will. Natürlich möchte man gerade Anfängern (Schülern in einer Schule) auch Erfolgserlebnisse liefern um sie motiviert zu halten, aber dafür muss man sicherlich niemanden mit Speicherverwaltung quälen. Im Informatikstudium ist das natürlich anders, aber Schüler sollten sich auf das wesentliche konzentrieren können.

Da stimmt sicherlich jeder hier der selbst programmiert zu. Das man mit allen Sprachen "alles kann", und es eher um die best geeignete Sprache für das gegebene Problem unter der und der Voraussetzung geht. Aber dann kann man auch, wenn man dein Argument weiter strickt "Natürlich möchte man gerade Anfängern (Schülern in einer Schule) auch Erfolgserlebnisse liefern um sie motiviert zu halten, [..]" auch direkt eine Sprache nehmen die weit verbreitet ist mit einem großen, aktuellen Framework, großer Communitiy und vielen Tips/Beispielen z.B. bei stackoverflow wie Python oder Java. Die haben auch alle GC, GUI, und deine ganzen aufgelisteten Vorteile von Delphi.

Und man muss nicht nach einem Freien Pascal suchen das nur unter Windows 9x funktioniert.

Wie gesagt, ich stimm dir ja zu, aber so ganz schlüssig ist ein Argument bezogen auf Schüler und leicht machen, mMn nicht.
 
Es ist ganz genau so, wie es @Haskelltier schreibt! Sprachen sind Werkzeuge die ich erst anwenden kann, wenn ich das Problem analysiert, verstanden und eine mögliche Lösung entworfen habe! Das (system-) analytische Denken dafür ist sprachunabhängig und eine Fußballfan-Diskussion wer die "längste" Sprache hat ist sinnlos.

Ich habe in den 1980ern als Schüler mit Informatik begonnen und verdiene noch heute meine Brötchen mit IT! Eines habe ich gelernt: die einzige Konstante ist der stete Wandel! Von imperativer Programmierung ist man damals über funktionale schnell zum OO-Ansatz gegangen und OO, so habe ich es gelernt, lebt von der Vererbung. Das wird man heute für Unfug erklären und jeder der Design-Patterns kennt, kennt "composition over inheritance" und wird Vererbung nur sehr vorsichtig einsetzen. Das Sprachen/VM-Konstrukt Java ist dabei auch schon an Grenzen gestoßen. und so gibt es Entwicklungen wie Scala, die den funktionalen Ansatz wieder mehr betonen. Klar ist der Java-Markt noch immer groß, aber Hey vor 20 Jahren war Altavista eine große Suchmaschine die sich mit Yahoo um Märkte stritt. Wen interessiert das heute noch? Zumal heute die Sprachen doch hinter Konzepten wie MVC mit DRY und KISS fast schon zurücktreten.

Java ist noch immer eine gute Plattform, auch wenn sie ihren Gipfel schon überschritten hat - sie ist aber nur eine Plattform, es gibt genügend andere Ansätze (Google Go, Rust,....) und es wird Morgen wieder andere geben. Mit welcher Sprache der TE einsteigt ist komplett egal. Entscheidend ist, er findet Spaß daran und lernt lernen von Neuem zu lieben. Das kann man aber durch Beiträge wie "Pascal, wie kann man nur..." ganz schnell kaputt machen.

Ich hab übrigens an der Uni noch Modula-2 gehabt....und Pascal haben wir in den 1980ern an der Schule in Informatik-Kursen unseren Mathelehrern beigebracht als Schüler, um die Lehrer zu qualifizieren Informatik-Unterricht anzubieten! Das war noch ganz wilder Westen und wer es eilig hatte auch Rechnern mit einstelliger MHz CPU-Geschwindigkeit der nahm eh Assembler! Das aber nur als Anedkdote! an den

Threadersteller:
Viel Spaß beim Programmieren lernen. Pascal ist eine alte Sprache, die aber auf eine erfolgreiche Zeit zurückblicken kann. Sie hilft Einsteigern durch strikte Regeln sehr Fehler zu vermeiden und hat auch die heute üblichen Objektansätze integrieren gelernt. Ein guter Startpunkt. Aber sei Dir bewußt: Es gibt zig andere Sprachen und Du wirst das mit Pascal erlernte auf zig andere Sprachen, mit anderen Werkzeugen darin, abbilden und umlernen müssen! Wenn man der richtige Typ dafür ist, macht so etwas sogar ungeheuer Spaß!
 
Die haben auch alle GC, GUI, und deine ganzen aufgelisteten Vorteile von Delphi.
Es mag eine verklärte Erinnerung sein, aber ich bilde mir ein das wir es einfacher hatten weil es diese ganzen "Nebenbedingungen wie Parallelität und GUI" nicht gab. Wir saßen vor einer schnöden Shell (wechselnder Betriebssysteme) und hatten anfangs SingleUser/SingleTask und konnten mit der Technik wachsen. Das ist einfacher, als für den Anfang gleich einen Wald an Bibliotheken und Frameworks zu haben.

Du hast aber natürlich völlig recht, wenn ich in der Sprache bleiben kann und von der Konsolenanwendung ins Web oder die GUI wechseln kann, dann ist das für Anfänger besser! Das hat uns aber umgekehrt eine ganze Generation beschert bei denen die Sprache selbstverständlich immer gleichzusetzen ist mit Java und ein OS ist immer Windows 7. Gerade diese Leute tun sich, nach meinem Empfinden, schwer mit Werkzeugwechseln.
 
Zurück
Oben Unten