Leser: 25
2009-08-10T14:08:56 LanX-Mein letzter Stand war das ponie eingestellt wurde, aber es sollte doch echtes kein Problem sein P5-Opcodes auf parrot zu emulieren, oder?
2009-08-10T14:15:14 renee2009-08-10T14:08:56 LanX-Mein letzter Stand war das ponie eingestellt wurde, aber es sollte doch echtes kein Problem sein P5-Opcodes auf parrot zu emulieren, oder?
Das Problem dürften weniger die Opcodes an sich sein, als das Erzeugen eines Parsers. Es existiert keine BNF-Grammatik für Perl 5. Viele Dinge werden erst während der Kompilier-Zeit vom Parser festgelegt. Das macht es nahezu unmöglich, einen neuen Perl 5 Parser zu schreiben.
2009-08-10T14:15:14 reneeIch bin aber nicht tief genug in Parrot drin, um jetzt eine 100% abgesicherte Aussage zu treffen. Ich werde mal schauen, ob ich mehr Infos darüber finde.
QuoteWas für P5er auch interessant sein sollte ist inwieweit JIT einen Performanceboost für P5-code bringen kann/wird.
2009-08-10T15:06:33 sid burnSoweit ich es zuletzt mitbekommen habe war die Idee den der derzeitige Perl interpreter/compiler in Rakudo z.B. einzubinden.
QuoteQuoteWas für P5er auch interessant sein sollte ist inwieweit JIT einen Performanceboost für P5-code bringen kann/wird.
Wenn die geschwindigkeit von Rakudo so bleibt wie sie jetzt ist, dann wahrscheinlich 100 mal langsamer.
2009-08-10T15:26:07 moritzDas ist korrekt, das ist quasi die einzige Moeglichkeit, XS-Module zum funktionieren zu bringen.
Quote500x sagen aktuelle Benchmarks :(
QuoteParrot hat (im Gegensatz zu Perl 5) allerdings noch deutlich groesseres Optimierungspotential, und wird meistens nicht mal mit optimierenden Compiler-Optionen gebaut.
QuoteAllerdings ist zur Zeit das Problem, dass zu haeufig zwischen C- und PIR-Code hin- und hergeschaltet wird, was ziemlich aufwaendig ist.
QuoteAllison arbeitet zur Zeit an einer saubereren und hoffentlich schnelleren Loesung fuer das hin- und herschalten, und andere (chromatic, whitenight) arbeiten an einem Konzept, mit dem viele opcodes in einer fuer parrot verstaendlicheren Programmiersprache implementiert werden koennen und damit und damit viele calls nach C vermieden werden koennen.
QuoteAlso ich sehen durchaus Potential, ob es jemals signifikant schneller als Perl 5 wird steht aber in den Sternen. Fuer Parrot 2.0 ist es Geschwindigkeit ein grosses Ziel, also warten wir mal noch ein halbes Jahr...
2009-08-11T15:29:50 sid burn2009-08-10T15:26:07 moritzDas ist korrekt, das ist quasi die einzige Moeglichkeit, XS-Module zum funktionieren zu bringen.
Und die einzige Möglichkeit bad perl5 code nach Perl 6 zu Porten. Und inkompatibel zu evtl. anderen Perl 6 implementation werden.
QuoteQuoteParrot hat (im Gegensatz zu Perl 5) allerdings noch deutlich groesseres Optimierungspotential, und wird meistens nicht mal mit optimierenden Compiler-Optionen gebaut.
Wie kann man das angeben? Ich nutze Rakudo und nutze dort "perl Configure.pl --gen-parrot" kann ich dort einfach -O2 oder sowas anhängen, in einer datei eintragen?
perl Configure.pl --gen-parrot --gen-parrot-option=--optimize
QuoteDaher bin ich auch gegen jegliche art von Hype bei Perl 6. Wenn Perl 6 zu anfang gehypt wird, werden wir ähnlich java für immer damit rechnen müssen das jeder sagt Perl 6 ist grottenlangsam, verbraucht zu viel speicher.
QuoteQuoteAllerdings ist zur Zeit das Problem, dass zu haeufig zwischen C- und PIR-Code hin- und hergeschaltet wird, was ziemlich aufwaendig ist.
Die gründe warum es langsam wird interessiert nur nutzer wenig.
2009-08-11T18:07:39 moritzUnd die einzige Möglichkeit bad perl5 code nach Perl 6 zu Porten. Und inkompatibel zu evtl. anderen Perl 6 implementation werden.
QuoteCode: (dl )perl Configure.pl --gen-parrot --gen-parrot-option=--optimize
QuoteWenn wir damit auch genauso viele Perl 6-User wie Java-User bekommen kann ich damit leben ;-)
QuoteOh, Entschuldige bitte dass ich dir Interesse unterstellt habe. Werde ich in Zukunft vermeiden.
2009-08-11T19:15:13 sid burn2009-08-11T18:07:39 moritzUnd die einzige Möglichkeit bad perl5 code nach Perl 6 zu Porten. Und inkompatibel zu evtl. anderen Perl 6 implementation werden.
Kann sein das ich mich in einiges täusche, aber die eigenschaft das Perl 5 Code inklusive XS Module ausgeführt werden müssen ist doch keine Sprachdefinition von Perl 6, oder?
QuoteAnsonsten was ich sehe kann man in Rakudo ja auch PIR einbetten. Das ist toll, setzt aber Parrot vorraus. SMOP das auf C++ aufsetzt oder Pugs werden wohl kein Parrot einbetten. Wenn man also kluge Perl 6 Hacker hat die gebrauch von PIR machen, z.b. um die Performance zu erhöhen in Rakudo, schaffen sie damit gleich ein unportables Perl Programm.