Compilerbau Bücher?
-
Ich wuerde die Aufgabe ja mit Regex loesen.
-
Kellerautomat schrieb:
Ich wuerde die Aufgabe ja mit Regex loesen.
Ja, den Lexer.
-
Wer braucht schon Lexer oder Parser. Stringersetzung mit Regex reicht.
-
Also was ist jetzt die Aufgabe?
Einen JS++ zu JS Compiler schreiben, wobei JS++ ein paar Erweiterungen wie Mehfrachvererbung in JS einbringt?
Und C++ ist "nur" die Sprache in der Du den Compiler entwickeln sollst?Kellerautomat schrieb:
Ich wuerde die Aufgabe ja mit Regex loesen.
Not sure if trolling or just stupid
-
µ schrieb:
Also was ist jetzt die Aufgabe?
Einen JS++ zu JS Compiler schreiben, wobei JS++ ein paar Erweiterungen wie Mehfrachvererbung in JS einbringt?
Und C++ ist "nur" die Sprache in der Du den Compiler entwickeln sollst?Ja, denke so ist es gemeint. Auch wenn ich mir nicht sicher bin ob das jetzt JS++ ist. Aber klingt ja danach. Ich kenne mich da leider nicht ganz so gut aus. Aber Mehrfachvererbung ist dort ja drin.
Ach so, ja soll in C++ geschrieben sein.
-
µ schrieb:
Not sure if trolling or just stupid
Mal ehrlich. Schon darueber nachgedacht? Auch wenn es erstmal nicht ernst gemaint war, finde ich die Idee nach genauerem Nachdenken gar nicht mal so doof. Das koennte tatsaechlich funktionieren.
-
Kellerautomat schrieb:
µ schrieb:
Not sure if trolling or just stupid
Mal ehrlich. Schon darueber nachgedacht? Auch wenn es erstmal nicht ernst gemaint war, finde ich die Idee nach genauerem Nachdenken gar nicht mal so doof. Das koennte tatsaechlich funktionieren.
Damit wäre meine Frage geklärt :p
-
Enno schrieb:
µ schrieb:
Also was ist jetzt die Aufgabe?
Einen JS++ zu JS Compiler schreiben, wobei JS++ ein paar Erweiterungen wie Mehfrachvererbung in JS einbringt?
Und C++ ist "nur" die Sprache in der Du den Compiler entwickeln sollst?Ja, denke so ist es gemeint. Auch wenn ich mir nicht sicher bin ob das jetzt JS++ ist. Aber klingt ja danach. Ich kenne mich da leider nicht ganz so gut aus. Aber Mehrfachvererbung ist dort ja drin.
Ach so, ja soll in C++ geschrieben sein.JS++ habe ich mir gerade aus den Fingern gezogen und beziehe mich nicht auf irgendeine existierende Sprache.
Dein Projektleiter geizt aber auch ein wenig mit Informationen, oder?
-
Enno schrieb:
µ schrieb:
Also was ist jetzt die Aufgabe?
Einen JS++ zu JS Compiler schreiben, wobei JS++ ein paar Erweiterungen wie Mehfrachvererbung in JS einbringt?
Und C++ ist "nur" die Sprache in der Du den Compiler entwickeln sollst?Ja, denke so ist es gemeint. Auch wenn ich mir nicht sicher bin ob das jetzt JS++ ist. Aber klingt ja danach. Ich kenne mich da leider nicht ganz so gut aus. Aber Mehrfachvererbung ist dort ja drin.
Ach so, ja soll in C++ geschrieben sein.Ich glaube, Du solltest Dich mal mit Deinem Ausbilder hinsetzen und dann nehmt ihr euch eine Stunde Zeit und klärt mal ganz konkret und detailliert, was Dein Ausbilder da so gemeint hat...
Ansonsten wird das hier eine reine Ratestunde.
-
Ok. Also ich soll dieses "erfundene" OJS oder auch OOPJS (wie auch immer das jetzt genannt wird) in JS übersetzten, d.h. eine Compiler dafür schreiben. (siehe Code Beispiel was ich gepostet hab) Mein Porjekt Ordner den ich von ihm bekommen habe heißt zum Beispiel OOPJS und die Beispiel Textdatei .ojs.
Jetzt sollte meine Aufgabe eigentlich klar sein oder?Danke btw alleine schon für das helfen das ich es noch einmal vernünftig mir hab definieren lassen. Also durch die vielen Aufklärungen hier habe ich das besser verstehen können.
-
Enno schrieb:
Jetzt sollte meine Aufgabe eigentlich klar sein oder?
Danke btw alleine schon für das helfen das ich es noch einmal vernünftig mir hab definieren lassen. Also durch die vielen Aufklärungen hier habe ich das besser verstehen können.
Tja ja naja. Da fehlt noch ein bisschen mehr Information, was die Sprache können soll. Ist die einzige Erweiterung Mehrfachvererbung oder soll OOJS noch mehr können?
-
µ schrieb:
Enno schrieb:
Jetzt sollte meine Aufgabe eigentlich klar sein oder?
Danke btw alleine schon für das helfen das ich es noch einmal vernünftig mir hab definieren lassen. Also durch die vielen Aufklärungen hier habe ich das besser verstehen können.
Tja ja naja. Da fehlt noch ein bisschen mehr Information, was die Sprache können soll. Ist die einzige Erweiterung Mehrfachvererbung oder soll OOJS noch mehr können?
Also so wie ich das jetzt verstanden hab ist das so, dass wenn ich diesen Code habe:
class a { public: function hello(){ console.log("hello"); }
Der Compiler das zu JavaScript umbauen soll. Ich mein in JS gibt es ja kein class.
also class a -> function a
oder
function hello(){ -> this.hello() (oder irgendwie so dann)versteht ihr was ich meine? Oder versteh ich was falsch? Wenn ja, dann frag ich nochmal.
-
Enno schrieb:
Ok. Also ich soll dieses "erfundene" OJS oder auch OOPJS (wie auch immer das jetzt genannt wird)
Jetzt sollte meine Aufgabe eigentlich klar sein oder?Danke btw alleine schon für das helfen das ich es noch einmal vernünftig mir hab definieren lassen. Also durch die vielen Aufklärungen hier habe ich das besser verstehen können.
Enno schrieb:
Also so wie ich das jetzt verstanden hab ist das so, dass wenn ich diesen Code habe:
also class a -> function a
oder
function hello(){ -> this.hello() (oder irgendwie so dann)versteht ihr was ich meine? Oder versteh ich was falsch? Wenn ja, dann frag ich nochmal.
Was ist dieses "erfundene" OJS oder OOPJS. Von wem erfunden? Intern? Gibt's da Doku zu? Verstehst Du die Doku? Ist Dein Ausbilder sich bewusst, welche Aufgabe er Dir gibt? Bist Du in der Lage, OOPJS zu verstehen, die Konzepte dahinter, bist Du in der Lage das in JS zu schreiben und bist Du in der Lage C++ zu programmieren?
Das sind viele Anforderungen an einen Einstieger. Und eine dafür verhältnismäßig kurze Deadline... inzwischen sind wir nämlich bei drei Programmiersprachen, die Du halbwegs gut können solltest und auch die Konzepte dahinter verstanden haben müsstest, damit Du die Konzepte wie Mehrfachvererbung in JS von Hand nachbilden kannst.
Frag lieber nochmal... :->
-
Was ist dieses "erfundene" OJS oder OOPJS. Von wem erfunden? Intern?
Gibt's da Doku zu?
Verstehst Du die Doku?
Ist Dein Ausbilder sich bewusst, welche Aufgabe er Dir gibt?
Ja.Bist Du in der Lage, OOPJS zu verstehen, die Konzepte dahinter,
Ja.bist Du in der Lage das in JS zu schreiben
Ja.und bist Du in der Lage C++ zu programmieren?
Ja.P.S.: Wegn OJS/OOPJS editiere ich gleich er ist grade beschäftigt. Also sobald er zeit hatte.
-
Und frage direkt noch welche Tools Du einsetzen sollst oder darfst. Also an Lexer- und Parsergeneratoren.
Anzhand einer (kurzen) Beispieldatei ist eine Sprache eigentlich nicht hinreichend klar spezifiziert. Hast Du freie Hand? Gibt er Dir die Grammatik?
Was ist mit vergleichbaren Projekten. Schon recherchiert?
µ schrieb:
Aber gut, ich sollte mal ein wenig arbeiten und nicht nur im Forum rumhängen
Dürfte mein unproduktivster Tag des Jahres sein. Na prima.
-
µ schrieb:
Und frage direkt noch welche Tools Du einsetzen sollst oder darfst. Also an Lexer- und Parsergeneratoren.
Anzhand einer (kurzen) Beispieldatei ist eine Sprache eigentlich nicht hinreichend klar spezifiziert. Hast Du freie Hand? Gibt er Dir die Grammatik?
Was ist mit vergleichbaren Projekten. Schon recherchiert?
Lexer- und Parsergeneratoren muss ich selber machen. Also er meinte ich soll alles selber schreiben.
Zu der 2 Frage frag ich ihn auch gleich wenn er zeit hat und editiere dann.
Ehrlich gesagt: Ne noch nicht werde ich gleich mal tun.µ schrieb:
µ schrieb:
Aber gut, ich sollte mal ein wenig arbeiten und nicht nur im Forum rumhängen
Dürfte mein unproduktivster Tag des Jahres sein. Na prima.
Ich hoffe ich bin nicht schuld.
-
Enno schrieb:
Lexer- und Parsergeneratoren muss ich selber machen. Also er meinte ich soll alles selber schreiben.
Autsch. Das Zeug ist alles gut verstanden, immerhin schonmal ein Vorteil.
Trotzdem kommt da einiges an Arbeit auf Dich zu.Hier schonmal ein sehr gutes Skript über die Konstruktion von Bottom-Up Parsern:
http://amor.cms.hu-berlin.de/~kunert/papers/lr-analyse/
(LR0, LR1, SLR und LALR Parsergeneratoren habe ich vor kurzem implementiert, aber in C#. Das Skript war jedenfalls eine große Hilfe)Enno schrieb:
Ich hoffe ich bin nicht schuld.
Ach was. Der Montag ist Schuld
-
µ schrieb:
Hier schonmal ein sehr gutes Skript über die Konstruktion von Bottom-Up Parsern:
http://amor.cms.hu-berlin.de/~kunert/papers/lr-analyse/Oh coole Sache. Sieht gut aus.
Ich schau da mal genau rein.
-
µ schrieb:
Hier schonmal ein sehr gutes Skript über die Konstruktion von Bottom-Up Parsern:
http://amor.cms.hu-berlin.de/~kunert/papers/lr-analyse/
(LR0, LR1, SLR und LALR Parsergeneratoren habe ich vor kurzem implementiert, aber in C#. Das Skript war jedenfalls eine große Hilfe)Hmm... ^^ ich sehe griechische Buchstaben, Buchstaben mit Indizes und verklausulierte Sätze.
µ schrieb:
Enno schrieb:
Ich hoffe ich bin nicht schuld.
Ach was. Der Montag ist Schuld
Joah, noch vier Montage und dann ist endlich Wochenende.
-
So meine Damen und Herren.
Meine Aufgabe ist nun klar def..
Ich soll nur diesen geposteten Teil Code Compilieren können. Es geht nur um das nicht mehr. Hat er selbst erfunden. Hat er vorher aber auch nicht gesagt der Schlaumeier. Also soll ich einen Compiler für diesen Code abschnitt schreiben. Wichtig oder der schwierige Teil laut ihm ist das OOP JS beizubringen. D.h. heißt auch ich kann mir den Grammatik kram wohl sparen oder?Xin schrieb:
µ schrieb:
Enno schrieb:
Ich hoffe ich bin nicht schuld.
Ach was. Der Montag ist Schuld
Joah, noch vier Montage und dann ist endlich Wochenende.
YAAAYY