Czy są jakieś zastosowania Algebry Abstrakcyjnej w teorii języków programowania? Czy jest coś, co byłoby przydatne w projektowaniu języka i implementacji kompilatora?
pl.programming-languages
n00b101
źródło
źródło
Odpowiedzi:
Algebra w klasycznym tego słowa znaczeniu służy do modelowania efektów obliczeniowych jako operacji algebraicznych, patrz na przykład slajdy Gordona Plotkina lub można przeczytać prawdziwe artykuły i doktoraty. tezy , jeśli rzeczywiście chciałeś zadać pytanie.
Aby wysadzić własny róg, spójrz na Eff i poczytaj o nim , języku stworzonym wokół idei, że efekty obliczeniowe są operacjami algebraicznymi, a programy obsługi homomorfizmami algebr.
źródło
Zawahałem się odpowiedzieć, ponieważ każda odpowiedź wykraczająca poza zwykłe „tak” mogłaby wypełniać wolumeny. Semantyka języka programowania została głęboko ukształtowana, a to z kolei głęboko ukształtowało rozwój logiki kategorycznej, czyli zastosowania algebry do logiki.
Podejrzewam jednak, że najlepszym sposobem na udzielenie odpowiedzi na to pytanie jest nauczenie się Agdy - doświadczenie związane z uczeniem się programowania z typami zależnymi w dużej mierze mierzy się z wszechstronnością algebry w programowaniu komputerowym.
źródło
W rzeczywistości istnieje oprogramowanie do teoretycznej algebry abstrakcyjnej. Ten program pozwala obliczać niektóre rzeczy, takie jak grupy akcji, homomorfizm itp. To jest Magma: http://magma.maths.usyd.edu.au/magma/
Mam nadzieję, że ci to pomoże.
źródło