Papuga - przegląd
Kiedy wprowadzamy nasz program do konwencjonalnego Perla, jest on najpierw kompilowany do wewnętrznej reprezentacji lub kodu bajtowego; ten kod bajtowy jest następnie wprowadzany do prawie oddzielnego podsystemu wewnątrz Perla w celu zinterpretowania. Istnieją więc dwie odrębne fazy działania Perla:
Kompilacja do kodu bajtowego i
Interpretacja kodu bajtowego.
Nie jest to unikalne dla Perla. Inne języki zgodne z tym projektem to Python, Ruby, Tcl, a nawet Java.
Wiemy również, że istnieje Java Virtual Machine (JVM), która jest niezależnym od platformy środowiskiem wykonawczym, które konwertuje kod bajtowy Java na język maszynowy i wykonuje go. Jeśli zrozumiesz tę koncepcję, zrozumiesz papugę.
Parrotto maszyna wirtualna zaprojektowana do wydajnego kompilowania i wykonywania kodu bajtowego dla języków interpretowanych. Parrot jest celem ostatecznego kompilatora Perl 6 i jest używany jako zaplecze dla Pugs, a także wielu innych języków, takich jak Tcl, Ruby, Python itp.
Papuga została napisana przy użyciu najpopularniejszego języka „C”.