Pytania otagowane jako pl.programming-languages

Języki programowania, w szczególności koncentrując się na ich semantyce.

3
Curry-Howard i programy z niekonstruktywnych dowodów
To jest kolejne pytanie do Jaka jest różnica między dowodami a programami (lub między propozycjami i typami)? Jaki program odpowiadałby niekonstruktywnemu (klasycznemu) dowodowi formy ? (Załóżmy, że jest interesującą zależnością rozstrzygalną, np. ta TM nie zatrzymuje się w krokach ).∀k T(e,k)∨¬∀k T(e,k)∀k T.(mi,k)∨¬∀k T.(mi,k)\forall k \ T(e,k) \lor \lnot \forall …



4
Jaki jest najpotężniejszy parser?
Jako poboczny projekt piszę język przy użyciu Pythona. Zacząłem od użycia klonu Flex / Bison o nazwie Ply, ale zbliżam się do krawędzi tego, co mogę wyrazić za pomocą tego stylu gramatyki, i nie jestem zainteresowany zhakowaniem mojego języka z powodu niedopasowania impedancji z narzędzie. Dlatego nie jestem przeciwny pisaniu …

6
Maksymalna moc obliczeniowa implementacji C.
Jeśli przejdziemy do tej książki (lub innej wersji specyfikacji języka, jeśli wolisz), ile mocy obliczeniowej może mieć implementacja języka C? Należy zauważyć, że „implementacja C” ma znaczenie techniczne: jest to szczególna instancja specyfikacji języka programowania C, w której udokumentowano zachowanie zdefiniowane w implementacji. Implementacja AC nie musi być w stanie …



5
Jaka jest różnica między dowodami a programami (lub między propozycjami i typami)?
To pytanie zostało przeniesione z przepełnienia stosu, ponieważ można na nie odpowiedzieć na teoretycznej wymianie stosu komputerów. Migrował 8 lat temu . Biorąc pod uwagę, że Korespondencja Curry-Howarda jest tak szeroko rozpowszechniona / rozszerzona, czy istnieje jakaś różnica między dowodami a programami (lub między propozycjami i typami)? Czy naprawdę możemy …

5
Czy istnieją adnotowane formalne systemy weryfikacji dla czysto funkcjonalnych języków programowania?
ACSL (Ansi C Specification Language), to specyfikacja kodu C, opatrzona specjalnymi komentarzami, która pozwala na formalną weryfikację kodu C. Nie przyjrzałem się temu, ale wyobrażam sobie, że metody formalne stosowane w weryfikatorach ACSL byłyby podobne do Hoare Logic. Jednak w przypadku czysto funkcjonalnych języków, takich jak Haskell, nie mogę sobie …

3
Jaka jest różnica między przepisywaniem terminów a dopasowywaniem wzorców?
Ponieważ w Lambda Ultimate nie było odpowiedzi , próbuję tutaj jeszcze raz: systemy przepisywania terminów są używane na przykład w automatycznym twierdzeniu potwierdzającym obliczenia symboliczne i oczywiście do zdefiniowania gramatyki formalnej. Istnieje kilka języków programowania opartych na przepisywaniu terminów, ale o ile rozumiem, pojęcie to jest bardziej znane jako dopasowanie …

2
Gramatyka i typy wrażliwe na kontekst
1) Jaki, jeśli w ogóle, jest związek między pisaniem statycznym a gramatyką formalną? 2) Czy w szczególności byłoby możliwe, aby automat z ograniczeniem liniowym sprawdził, czy, powiedzmy, program C ++ lub SML był dobrze napisany? Automat zagnieżdżonego stosu? 3) Czy istnieje naturalny sposób na wyrażenie zasad pisania statycznego w formalnych …


2
Czy typy zależne dają ci wszystko, co robi podtyp?
Typy i języki programowania skupiają się dość mocno na subtypowaniu, ale o ile wiem, subtyping nie wydaje się szczególnie fundamentalny. Czy podtypowanie daje coś więcej niż typy zależne? Praca z typami zależnymi z pewnością będzie wymagała więcej pracy, więc rozumiem, dlaczego podtypy mogą być przydatne w praktyce. Jednak bardziej interesuje …

4
Kiedy (lub powinna) Teoretyczna CS dba o intuicyjne dowody?
Z tego, co rozumiem (co jest bardzo mało, więc proszę popraw mnie tam, gdzie się mylę!), Teoria języków programowania często dotyczy dowodów „intuicyjnych”. W mojej własnej interpretacji podejście to wymaga od nas poważnego potraktowania konsekwencji obliczeń dla logiki i sprawdzalności. Dowód nie może istnieć, chyba że istnieje algorytm konstruujący konsekwencje …

2
Czy istnieje hierarchia ekspresyjności dla systemów typów?
Zainspirowany rozległymi hierarchiami obecnymi w teorii złożoności, zastanawiałem się, czy takie hierarchie występują również w przypadku systemów typów. Jednak dwa przykłady, które do tej pory znalazłem, bardziej przypominają listy kontrolne (z funkcjami ortogonalnymi) niż hierarchie (z coraz bardziej ekspresyjnymi systemami typów). Te dwa przykłady znalazłem to kostka Lambda i pojęcie …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.