Implementacja języków programowania: wprowadzenie do kompilatorów i interpreterów

Ocena:   (4,4 na 5)

Implementacja języków programowania: wprowadzenie do kompilatorów i interpreterów (Aarne Ranta)

Opinie czytelników

Podsumowanie:

Książka służy jako przydatne wprowadzenie do gramatyki, parsowania i kompilacji, zawierające praktyczne przykłady kodu. Istnieją jednak obawy co do fizycznej jakości książki.

Zalety:

Książka skutecznie wprowadza główne koncepcje, zawiera rzeczywiste implementacje kodu (w Haskell) i jest uważana za świetną dla początkujących. Oferuje dobry stosunek jakości do ceny, zwłaszcza gdy jest kupowana jako używana.

Wady:

Niektóre egzemplarze mogą mieć słabą jakość fizyczną, z wypadającymi stronami.

(na podstawie 6 opinii czytelników)

Oryginalny tytuł:

Implementing Programming Languages. an Introduction to Compilers and Interpreters

Zawartość książki:

Wdrożenie języka programowania oznacza wypełnienie luki między wysokopoziomowym myśleniem programisty a zerami i jedynkami maszyny. Jeśli odbywa się to w wydajny i niezawodny sposób, programiści mogą skoncentrować się na rzeczywistych problemach, które muszą rozwiązać, a nie na szczegółach maszyn.

Jednak zrozumienie całego łańcucha od języków do maszyn jest nadal istotną częścią szkolenia każdego poważnego programisty. Zaowocuje to bardziej kompetentnym programistą, który będzie w stanie rozwijać nowe języki. Nowy język jest często najlepszym sposobem na rozwiązanie problemu i mniej trudnym niż może się wydawać.

Książka ta opiera się na praktycznym podejściu opartym na teorii, w którym modele teoretyczne służą jako wzór dla rzeczywistego kodowania. Czytelnik jest prowadzony do budowania kompilatorów i interpreterów w dobrze zrozumiały i skalowalny sposób. Rozwiązania są ponadto przenośne na różne języki implementacji.

Znaczna część rzeczywistego kodu jest generowana automatycznie z gramatyki języka za pomocą narzędzia BNF Converter. Pozostała część może być napisana w języku Haskell lub Java, dla których książka zawiera szczegółowe wskazówki, ale z pewną adaptacją również w językach C, C++, C# lub OCaml, które są obsługiwane przez konwerter BNF. Książka skupia się głównie na standardowych językach imperatywnych i funkcyjnych: podzbiór C++ i podzbiór Haskella są językami źródłowymi, a Java Virtual Machine jest głównym celem.

Prosta kompilacja natywnego kodu Intel x86 uzupełnia łańcuch od języka do maszyny. Ostatni rozdział porzuca standardowe ścieżki i eksploruje przestrzeń projektowania języków, od minimalnych języków kompletnych Turinga po interakcję człowiek-komputer w języku naturalnym.

Dodatkowe informacje o książce:

ISBN:9781848900646
Autor:
Wydawca:
Oprawa:Miękka oprawa

Zakup:

Obecnie dostępne, na stanie.

Inne książki autora:

Implementacja języków programowania: wprowadzenie do kompilatorów i interpreterów - Implementing...
Wdrożenie języka programowania oznacza wypełnienie...
Implementacja języków programowania: wprowadzenie do kompilatorów i interpreterów - Implementing Programming Languages. an Introduction to Compilers and Interpreters

Prace autora wydały następujące wydawnictwa: