Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]2105[/thread]

Programmiersprachen: Womit ist Perl geschrieben? (Seite 2)



<< |< 1 2 >| >> 20 Einträge, 2 Seiten
GwenDragon
 2007-06-12 19:29
#23865 #23865
User since
2005-01-17
14840 Artikel
Admin1
[Homepage]
user image
Die ersten Compiler wurden ja in Assembler oder anderen Sprachen geschrieben.

Wenn du persönlich meinst, ja du brauchst einen C-Compiler, um Perl zu fabrizieren; es sei denn du verwendest eben vorgefertigte Versionen für die verschiedenen Betriebssysteme.
esskar
 2007-06-12 19:50
#23866 #23866
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
[quote=#Kein Kommentar,12.06.2007, 17:16]ich meine wenn man noch gar kein C hat, dann kann man es doch auch nicht damit kompilieren, oder?[/quote]
die erste version vom C kompiler kann natürlich nicht in C geschrieben worden sein, aber die zweite version ja schon. ;) macht doch sinn, oder. eigentlich schon!
#Kein Kommentar
 2007-06-12 20:06
#23867 #23867
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
Okay, jetzt hab ich's kapiert :)

nur noch eine klitzekleine frage. vor den Assembler-Sprachen musste doch dann das 1- und 0-Prinzip
angewandt worden sein, oder?
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
Ronnie
 2007-06-12 20:17
#23868 #23868
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
Zu 8-Bit Zeiten gab es noch Leute die einfach Programme mit einem Hex-Editor geschrieben haben. Damals waren die Befehlssätze aber auch noch recht überschaubar und die Hex-Dumps somit eindeutig. Einen Assembler einzusetzen habe ich seit Ewigkeiten nicht mehr als nötig empfunden ( auch wenn Assembler für virtuelle Maschinen ja in Mode sind ). Für die Programmierung von Microcontrollern, war es lange Zeit die einzige Möglichkeit - weil entweder kein C-Compiler verfügbar war, oder nicht bezahlbar. Glaube wir hatten damals Intel 8051 zur Verfügung. Schon beim Motorola 68HC11 gab es eine IDE mit einem Pascal-Dialekt der die Sache einfacher gemacht hat. Für die Homecomputer gab es damals bereits externe Module (Freezer) die es erlaubten die Rechner zu jedem Zeitpunkt anzuhalten und den Arbeitsspeicher an jeder Stelle zu disassemblieren. So wurden Spiele "trainiert", weil man die Sprungbedingung durch eine Anzahl NOPs ersetzt hat.

Bei heutigen Rechnern steht die Zeit die ein Programm benötigt oft in keinem Verhältnis zur Programmierzeit. Je "höher" die Sprache, desto "ineffizienter" ist sie - was zwar nicht immer stimmen muss, aber es sei mal so dahingestellt. Tatsächlich ist das in vielen Bereichen einfach völlig unerheblich.
GwenDragon
 2007-06-12 20:46
#23869 #23869
User since
2005-01-17
14840 Artikel
Admin1
[Homepage]
user image
[quote=#Kein Kommentar,12.06.2007, 18:06]vor den Assembler-Sprachen musste doch dann das 1- und 0-Prinzip angewandt worden sein, oder?[/quote]
Richtig. Das waren einzelne Schalter. Richtig binär - an / aus.
Dann kamen Tastaturen für Mehrbit-Code, also Sedezimal (0-9A-F).
Dann Fernschreibertastaturen mit denen dann Assembler auf Lochstreifen oder -karten codiert wurde.
Später wurde dann in Cobol, PL/M, PL/1, FORTRAN programmiert.
Und dann kamen die Bildschirmterminals.\n\n

<!--EDIT|GwenDragon|1181667163-->
#Kein Kommentar
 2007-06-12 21:04
#23870 #23870
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
@alle

danke für diesen kleinen exkurs in programmiersprachen
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
Ronnie
 2007-06-12 22:06
#23871 #23871
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
[quote=Ronnie,12.06.2007, 18:17]Schon beim Motorola 68HC11 gab es eine IDE mit einem Pascal-Dialekt der die Sache einfacher gemacht hat.[/quote]
Er ist noch immer zu haben *sniff*: http://elmicro.com/de/mops11.html
ptk
 2007-06-12 22:29
#23872 #23872
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Wegen des Henne-und-Ei-Problems werfe ich unkommentiert den Begriff "Crosscompiler" in die Diskussion.
moritz
 2007-06-13 15:42
#23873 #23873
User since
2007-05-11
923 Artikel
HausmeisterIn
[Homepage]
user image
Das ist mal wieder eine Möglichkeit, mit Lieblingsthema "Perl 6" ins Spiel zu bringen...

Zur Zeit gibt es da neben den "großen" Projekten Parrot (und 6 in parrot) und Pugs noch MiniPerl6 und KindaPerl6.

MiniPerl6 ist in einer Untermenge von Perl 6 geschrieben (mp6 genannt), und kann sich selbst nach Perl 5 übersetzen. Und es existierte eine (soweit ich weiß handgeschriebene) Perl 5-Version davon. Wenn man jetzt den Compiler verändert, kann man ihn mit der älteren Version übersetzen, und dann noch mal mit der aktuellen - bootstrapping also.

Und dann gibt es KindaPerl6 (kp6), einen flexibleren Compiler, der ebenfalls in mp6 geschrieben ist - und damit von MiniPerl6 nach p5 übersetzt werden kann. Und kp6 versteht schon mehr Perl 6.

Vom "endgültigen" Perl 6-Compiler wird es sicher eine in Perl 6 geschriebene Version geben, die dann entweder mit kp6 oder mit pugs gebootstrapped werden wird.

Dann ist der Compiler gleich sein eigener Testcase: Wenn er sich selbst übersetzen kann, müssen schon mal 90% der Features korrekt implementiert sein - insbesondere Regexes und Rules.

Wobei es natürlich trotzdem noch eine offizielle Testsuite gibt.

Ein in Perl 6 geschriebener Compiler erleichtert es, Teile der Grammatik zu überschreiben, Makros zu implementieren und einen ganzen anderen Wust an Flexibilität zu erreichen, den man sonst nur mit ganz üblen Hacks bekommen könnte ;-)

Falls das jemand alles verwirrend findet: ist es auch. Zumindest anfangs ;-)
shigetsu
 2007-06-19 01:10
#23874 #23874
User since
2007-04-22
16 Artikel
BenutzerIn
[Homepage] [default_avatar]
Interne Strukturen von Perl:

PerlGuts Illustrated
<< |< 1 2 >| >> 20 Einträge, 2 Seiten



View all threads created 2007-06-12 18:17.