Programowanie i składnia komputera
Zdjęcia
Euphoria, przetłumaczona przez Michaela Frieda i opisana przez Billa Tildena, jest drugą książką w Projekcie Theodoric. W tej książce mamy pomysł, jak Euphoria może być wykorzystana jako system do wyrażania różnych pojęć w języku (języku programowania). Sam język jest językiem abstrakcyjnym, opartym na składni, gramatyce i stylu. Gramatyka zawiera kilka interesujących funkcji, takich jak zasady nominalne i interpunkcyjne, a gramatyka kładzie duży nacisk na użycie zaimków i przymiotników, a także na strukturę i połączenia zdań. Tilden ma również dobrą znajomość języków naturalnych i pokazuje, jak te reguły gramatyczne mogą być używane do wyrażania języków naturalnych w języku programowania.Podczas studiów widziałem artykuł o Euphorii napisany przez Glaubermana i Katza, którzy twierdzili, że składnia Euphoria jest blisko spokrewniona ze składnią Coq. Glauberman i Katz twierdzą, że ich składnia jest nadzbiorem semantyki Coq i że ich model składni, tj. model szybkiego rozwoju, jest bardziej spójny z językiem naturalnym niż inne modele. Twierdzą ponadto, że na ich składnię duży wpływ ma model szybkiego rozwoju Johna McCarthy'ego, choć przyznają, że ich składnia nie jest ściśle naturalna. Po przeczytaniu artykułu Frieda o składni w celu rozwinięcia gramatyki języków naturalnych, nie zgodziłem się z nimi; Czułem, że Richard Barrow i John McCarthy poczynili prawdziwy postęp w lingwistyce składni. Kiedy odmówili opublikowania przesłanego przeze mnie artykułu, uważam, że Glauberman i Katz mieli rację, twierdząc, że wpłynęli na sam rozwój składni, którą twierdzili.
Wszystkie trzy książki Tildena opisują różne modele składni języków wykorzystujących euforię i wszystkie wygodnie mieszczą się w szerszych ramach idei zwanych teorią programów. Teoria ta dotyczy tego, jak sformułować strukturę gramatyczną języka i jak ją analizować gramatycznie za pomocą struktur składniowych zaprojektowanych tak, aby były wystarczająco elastyczne, aby dostosować się do zmian w modelach składni używanych przez użytkowników języka. Myślę, że istnieje ciekawy związek między twierdzeniami autorów dotyczącymi składni a wykorzystaniem składni w programowaniu komputerowym. Wygląda na to, że programiści używający składni mogą być podatni na euforię składni programu, co może również prowadzić do błędów w używaniu składni, ponieważ przyzwyczajają się do uzyskiwania pożądanych wyników w swoich programach.