Gibt es einige winzige Perl, die ich im Embedded-System verwenden kann, wo die Größe wichtig wäre?Gibt es ein kleines Perl, das ich im Embedded-System verwenden kann, wo die Größe wichtig wäre?
Antwort
Siehe Simon Cozens Artikel auf Microperl.
microperl
ist ein echter, ehrlicher Perl-Interpreter; Es wurden keine Kernelemente der Perl-Sprache entfernt. Die Engine für reguläre Ausdrücke ist genau gleich, die Sprache ist genau dieselbe, sie hat die gleiche Unicode-Unterstützung und so weiter. Die einzigen Dinge, die davon entfernt wurden, sind Funktionen, die vollständig systemspezifisch sind, wiecrypt
undreaddir
.
Siehe auch README.micro:
microperl
soll ein wirklich minimal Perl sein, noch mehr minimal alsminiperl
. No Configure wird benötigt, ummicroperl
, zu bauen, das bedeutet aber, dass die Schnittstellen zwischen Perl und Ihrem Betriebssystem sehr minimal sind.All das ist experimentell. Wenn Sie nicht wissen, was mit
microperl
zu tun ist, sollten Sie wahrscheinlich nicht. Melden Sie keine Fehler inmicroperl
; behebe die Fehler.
Je nach Größenbeschränkungen, können Sie nicht so weit gehen müssen, nur miniperl
— verwendet, die in dem Prozess der Zusammenstellung gebaut perl
— könnte genug sein.
hasse es zu sagen, und ich werde wahrscheinlich viel nach unten Stimmen erhalten, aber ...
Wenn Größe ein Problem gehen mit C ist, wenn es eine bestimmte Funktionalität, die Sie von Perl wollen Sie eine C-Bibliothek finden mit ein wenig Suche, die Ihnen ähnliche Funktionalität geben wird.
Wenn einfache Script-Fähigkeit und schnelle Wende erforderlich ist, sollten Sie eine größere CPU in der Lage sein, Perl oder versuchen Sie eine Sprache mit einer kleineren Stellfläche wie Lua.
Moderne Perl ist eine fantastische Sprache, um schnell Lösungen für Probleme zu erstellen. Allerdings ist es nicht gerade winzig.
Die früheren Versionen von Perl waren ein bisschen kleiner ... googeln für "16 bit perl" zeigt, dass einige verrückte Leute die Versionen 3 und 4 von Perl zum kompilieren für 16-Bit-DOS bekommen haben.
Die Quelle für Perl 4 schwebt immer noch im Web, und wenn Sie wirklich wirklich brauchten, könnten Sie wahrscheinlich die Arbeit dieser Leute neu erstellen und Perl auf einem neuen 16-Bit Embedded System laufen lassen.
Allerdings gibt es genug Unterschiede zwischen dieser alten Sprache und modernen Perl, um es nicht die Mühe wert zu sein. Der sichtbarste Unterschied ist, dass der Paketseparator '
statt ::
ist, und es gibt noch viele weitere Unterschiede.
Anstatt mit etwas so alt und geheimnisvoll wie perl4 herumzualbern, würde ich vorschlagen, nur Ihr Programm in modernen Perl (Version 5) zu schreiben.22 ist das neueste), und schreiben Sie es dann in portierbares C oder C++ um und kompilieren Sie es zu Ihrem eingebetteten System.
Ich weiß, dass die ursprüngliche Frage ein bisschen alt ist, aber ich dachte, ich würde eine erweiterte Antwort für andere bieten Perl Perl auf eingebetteten Systemen in Betracht ziehen.
- 1. Ist DLL-Größe wichtig?
- 2. Ist es wichtig, wo ich den Ticker erstelle?
- 3. Gibt es ein OO Perl, das einer Schnittstelle entspricht?
- 4. Gibt es ein kleines Werkzeug für OpenGL Shading Language?
- 5. Wie kann ich das erreichen? Wäre ein Cursor geeignet?
- 6. Gibt es ein Javafx-Panel, das der Benutzer ändern kann?
- 7. Wie lade ich ein kleines Systemicon?
- 8. Ist die Größe der Datenbankfelder wichtig?
- 9. Kann ich inline überschreiben, wichtig?
- 10. Gibt es ein Perl-Plugin für IntelliJ?
- 11. Gibt es eine schnelle In-Memory-Warteschlange, die ich verwenden kann, die Elemente wechselt, wie es eine bestimmte Größe erreicht?
- 12. Was wäre ein guter Variablenname für ein Rechteck, beschreibt die Position und Größe eines Objekts?
- 13. Anonyme Generika - Wo würde ich das verwenden?
- 14. Gibt es eine ideale Größe für Hintergrundbilder?
- 15. Wie kann ich ein neues Perl-Modul ohne Installationsberechtigungen verwenden?
- 16. Gibt es einen tragbaren Perl?
- 17. Wie kann ich ein Modul in Perl bedingt verwenden?
- 18. Ist es möglich, MARY TTS-Engine auf Android-Anwendung zu verwenden? Hat jemand das versucht? Wo wäre ein guter Anfang?
- 19. Gibt es eine Möglichkeit, bestimmte Module automatisch zu "verwenden", wenn ich ein Skript schreibe?
- 20. Wie kann ich ein Div-Act haben, als wäre es auf einem anderen Gerät mit Bootstrap?
- 21. ich Linq Datenquelle verwenden, wie kann ich ein, wo Ausdruck
- 22. Wie kann ich das Dezimalfeld im Geodjango verwenden?
- 23. Bild mit Imagick-Treiber Größe in kleines Bild Größe gibt große Dateigröße
- 24. Gibt es eine Perl-Implementierung von SHA256withRSA
- 25. Gibt es ein Steuerelement Eigenschaftsdialog, das ich in meiner WPF-App verwenden kann?
- 26. Gibt es eine Möglichkeit, die Größe/Größe Ihrer Datenbanktabellen herauszufinden?
- 27. Gibt es ein WPF-Steuerelement, das ich zum Erweitern/Minimieren von Panels (animiert) verwenden kann
- 28. Gibt es eine Möglichkeit, die Spalte IDENTIY in SQL Server zurückzusetzen? und wäre das ein Grund, keine Identitätssäule zu benutzen?
- 29. Wäre es möglich, Python oder Perl mit Ruby zu integrieren?
- 30. Gibt es ein nicht-relationales Äquivalent von DBI in Perl?
Auch das kann nicht so viel gebraucht werden, wie viele denken. Ich benutze Perl auf einem ARM9-System mit 64 MB RAM. Es verarbeitet 3 Perl-Daemons ohne Probleme. Neuere Chips werden immer größer. OTOH, Perl passt niemals auf ein 8 Bit oder kleines 16 Bit Mikro. – daotoad