moving plta to plfa

This commit is contained in:
wadler 2018-07-04 18:40:17 -03:00
parent 1fdadb8928
commit cf7a3e630c
24 changed files with 47 additions and 35 deletions

View file

@ -81,6 +81,11 @@ The following comments were collected on the Agda mailing list.
- https://github.com/effectfully/random-stuff/blob/master/Normalization/Liftable.agda - https://github.com/effectfully/random-stuff/blob/master/Normalization/Liftable.agda
+ also cites Abel's habilitation + also cites Abel's habilitation
- http://www.cse.chalmers.se/~abela/habil.pdf - http://www.cse.chalmers.se/~abela/habil.pdf
+ See his note to the Agda mailing list of 26 June,
"Typed Jigger in vanilla Agda"
It points to the following solution.
- https://github.com/effectfully/random-stuff/blob/master/TypedJigger.agda
* András Kovács <kovacsahun@hotmail.com> * András Kovács <kovacsahun@hotmail.com>
+ applies unary parametricity + applies unary parametricity

View file

@ -1,6 +1,5 @@
title: > title: >
Code the Infinite: Programming Language Foundations in Agda
Programming Languages in Agda
# the author field should not be used in the template # the author field should not be used in the template
author: Wen Kokke author: Wen Kokke
@ -18,7 +17,7 @@ contributors:
twitter_username: philipwadler twitter_username: philipwadler
description: > description: >
Programming Languages in Agda. Programming Language Foundations in Agda
# include disqus to allow comments e.d. # include disqus to allow comments e.d.
disqus: disqus:

View file

@ -5,7 +5,7 @@ permalink : /Connectives/
--- ---
\begin{code} \begin{code}
module plta.Connectives where module plfa.Connectives where
\end{code} \end{code}
This chapter introduces the basic logical connectives, by observing a This chapter introduces the basic logical connectives, by observing a

View file

@ -5,7 +5,7 @@ permalink : /DeBruijn/
--- ---
\begin{code} \begin{code}
module plta.DeBruijn where module plfa.DeBruijn where
\end{code} \end{code}
The previous two chapters introduced lambda calculus, with a The previous two chapters introduced lambda calculus, with a

View file

@ -5,7 +5,7 @@ permalink : /Decidable/
--- ---
\begin{code} \begin{code}
module plta.Decidable where module plfa.Decidable where
\end{code} \end{code}
We have a choice as to how to represent relations: We have a choice as to how to represent relations:

View file

@ -5,7 +5,7 @@ permalink : /Equality/
--- ---
\begin{code} \begin{code}
module plta.Equality where module plfa.Equality where
\end{code} \end{code}
Much of our reasoning has involved equality. Given two terms `M` Much of our reasoning has involved equality. Given two terms `M`

View file

@ -4,10 +4,6 @@ layout : page
permalink : /Fonts/ permalink : /Fonts/
--- ---
\begin{code}
module plta.Fonts where
\end{code}
Test page for fonts. All vertical bars should line up. Test page for fonts. All vertical bars should line up.
\begin{code} \begin{code}
@ -17,7 +13,8 @@ abcdefghijklmnopqrstuvwxyz|
ABCDEFGHIJKLMNOPQRSTUVWXYZ| ABCDEFGHIJKLMNOPQRSTUVWXYZ|
ᵃᵇᶜᵈᵉᶠᵍʰⁱʲᵏˡᵐⁿᵒᵖ ʳˢᵗᵘᵛʷˣʸᶻ| ᵃᵇᶜᵈᵉᶠᵍʰⁱʲᵏˡᵐⁿᵒᵖ ʳˢᵗᵘᵛʷˣʸᶻ|
ᴬᴮ ᴰᴱ ᴳᴴᴵᴶᴷᴸᴹᴺᴼᴾ ᴿ ᵀᵁⱽᵂ | ᴬᴮ ᴰᴱ ᴳᴴᴵᴶᴷᴸᴹᴺᴼᴾ ᴿ ᵀᵁⱽᵂ |
ₐ ₑ ᵢⱼ ₒ ᵣ ᵤ ₓ | ₐ ₑ ᵢⱼ ₒ ᵣₛₜᵤ ₓ |
𝔸𝔹𝔻𝔼𝔽𝔾𝕀𝕁𝕂𝕃𝕄𝕆𝕊𝕋𝕌𝕍𝕎𝕏𝕐|
--------------------------| --------------------------|
----------| ----------|
0123456789| 0123456789|
@ -29,23 +26,42 @@ ABCDEFGHIJKLMNOPQRSTUVWXYZ|
ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ| ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ|
------------------------| ------------------------|
----| ----|
|
∀∀∃∃| ∀∀∃∃|
ƛƛ··| ƛƛ··|
′′″″|
‴‴⁗⁗|
††‡‡|
''""|
``~~|
≡≡≢≢| ≡≡≢≢|
≃≃≲≲|
≟≟≐≐| ≟≟≐≐|
⟨⟨⟩⟩| ⟨⟨⟩⟩|
⌊⌊⌋⌋| ⌊⌊⌋⌋|
⌈⌈⌉⌉| ⌈⌈⌉⌉|
→→⇒⇒| →→⇒⇒|
←←⇐⇐| ←←⇐⇐|
↦↦↠↠| ——↠↠|
∈∈∋∋| ∈∈∋∋|
⊢⊢⊣⊣| ⊢⊢⊣⊣|
∷∷∷∷|
⦂⦂⦂⦂|
----| ----|
-} -}
\end{code} \end{code}
Here are some characters that are not required to be monospaced. Here are some characters that are exactly two spaces wide.
\begin{code}
{-
----|
😇😇|
😈😈|
----|
-}
\end{code}
Here are some characters that are not used because they are not monospaced.
\begin{code} \begin{code}
{- {-

View file

@ -5,7 +5,7 @@ permalink : /Induction/
--- ---
\begin{code} \begin{code}
module plta.Induction where module plfa.Induction where
\end{code} \end{code}
> Induction makes you feel guilty for getting something out of nothing > Induction makes you feel guilty for getting something out of nothing

View file

@ -5,7 +5,7 @@ permalink : /Inference/
--- ---
\begin{code} \begin{code}
module plta.Inference where module plfa.Inference where
\end{code} \end{code}

View file

@ -5,7 +5,7 @@ permalink : /Isomorphism/
--- ---
\begin{code} \begin{code}
module plta.Isomorphism where module plfa.Isomorphism where
\end{code} \end{code}
This section introduces isomorphism as a way of asserting that two This section introduces isomorphism as a way of asserting that two

View file

@ -7,7 +7,7 @@ permalink : /Lambda/
*Todo: Experiment with defining variable names* smart constructor `` ƛ`_⇒_ `` *Todo: Experiment with defining variable names* smart constructor `` ƛ`_⇒_ ``
\begin{code} \begin{code}
module plta.Lambda where module plfa.Lambda where
\end{code} \end{code}
<!-- <!--

View file

@ -5,7 +5,7 @@ permalink : /Lists/
--- ---
\begin{code} \begin{code}
module plta.Lists where module plfa.Lists where
\end{code} \end{code}
This chapter discusses the list data type. It gives further examples This chapter discusses the list data type. It gives further examples

View file

@ -8,7 +8,7 @@ permalink : /Modules/
from the standard library. ** from the standard library. **
\begin{code} \begin{code}
module plta.Modules where module plfa.Modules where
\end{code} \end{code}
This chapter introduces modules as a way of structuring proofs, This chapter introduces modules as a way of structuring proofs,

View file

@ -5,7 +5,7 @@ permalink : /More/
--- ---
\begin{code} \begin{code}
module plta.More where module plfa.More where
\end{code} \end{code}
So far, we have focussed on a relatively minimal language, So far, we have focussed on a relatively minimal language,

View file

@ -5,7 +5,7 @@ permalink : /Naturals/
--- ---
\begin{code} \begin{code}
module plta.Naturals where module plfa.Naturals where
\end{code} \end{code}
The night sky holds more stars than I can count, though fewer than five The night sky holds more stars than I can count, though fewer than five

View file

@ -5,7 +5,7 @@ permalink : /Negation/
--- ---
\begin{code} \begin{code}
module plta.Negation where module plfa.Negation where
\end{code} \end{code}
This chapter introduces negation, and discusses intuitionistic This chapter introduces negation, and discusses intuitionistic

View file

@ -4,10 +4,6 @@ layout : page
permalink : /Preface/ permalink : /Preface/
--- ---
\begin{code}
module plta.Preface where
\end{code}
The most profound connection between logic and computation is a pun. The most profound connection between logic and computation is a pun.
The doctrine of Propositions as Types asserts that a certain kind of formal The doctrine of Propositions as Types asserts that a certain kind of formal
structure may be read in two ways: either as a proposition in logic or structure may be read in two ways: either as a proposition in logic or

View file

@ -5,7 +5,7 @@ permalink : /Properties/
--- ---
\begin{code} \begin{code}
module plta.Properties where module plfa.Properties where
\end{code} \end{code}
[Parts of this chapter take their text from chapter _StlcProp_ [Parts of this chapter take their text from chapter _StlcProp_

View file

@ -5,7 +5,7 @@ permalink : /Quantifiers/
--- ---
\begin{code} \begin{code}
module plta.Quantifiers where module plfa.Quantifiers where
\end{code} \end{code}
This chapter introduces universal and existential quantification. This chapter introduces universal and existential quantification.

View file

@ -5,7 +5,7 @@ permalink : /Relations/
--- ---
\begin{code} \begin{code}
module plta.Relations where module plfa.Relations where
\end{code} \end{code}
After having defined operations such as addition and multiplication, After having defined operations such as addition and multiplication,

View file

@ -4,10 +4,6 @@ layout : page
permalink : /Statistics/ permalink : /Statistics/
--- ---
\begin{code}
module plta.Statistics where
\end{code}
Total number of lines and number of lines of Agda code in each chapter Total number of lines and number of lines of Agda code in each chapter
(as of 2 July 2018). (as of 2 July 2018).

View file

@ -5,7 +5,7 @@ permalink : /Untyped/
--- ---
\begin{code} \begin{code}
module plta.Untyped where module plfa.Untyped where
\end{code} \end{code}
This chapter considers a system that varies, in interesting ways, This chapter considers a system that varies, in interesting ways,