If you're using a Mac without MacPorts (explained below), then Chicken and
OCaml will be installed under your user home; but Racket's and GHC's
Installers put them into system directories.
-
-
+
+
## Identifying your system ##
We'll assume you're using either Mac OS X, or Windows, or Linux.
location.
2. Open a terminal and type:
-
+
sh /path/to/opam_installer.sh ~/bin
Except replace `/path/to` with the real location, that you noted in step 1. When prompted "Do you want OPAM to modify ~/.bash_profile and ~/.ocamlinit?", say "y".
x?
xs
-We'll follow a *convention* of using variables with short names and a final `s` to represent collections like sequences (to be discussed below). But this is just a convention to help us remember what we're up to, not a strict rule of the language. We'll also follow a convention of only using variables ending in `?` to represent functions that return a boolean value. Thus, for example, `zero?` will be a function that expects a single number argument and returns a boolean corresponding to whether that number is `0`. `odd?` will be a function that expects a single number argument and returns a boolean corresponding to whether than number is odd. Above, I suggested we might use `lessthan?` to represent a function that expects *two* number arguments, and again returns a boolean result.
+We'll follow a *convention* of using variables with short names and a final `s` to represent collections like sequences (to be discussed below). But this is just a convention to help us remember what we're up to, not a strict rule of the language. We'll also follow a convention of only using variables ending in `?` to represent functions that return a boolean value. Thus, for example, `zero?` will be a function that expects a single number argument and returns a boolean corresponding to whether that number is `0`. `odd?` will be a function that expects a single number argument and returns a boolean corresponding to whether than number is odd. Above, I suggested we might use `lessthan?` to represent a function that expects *two* number arguments, and again returns a boolean result.
We also conventionally reserve variables ending in `!` for a different special class of functions, that we will explain later in the course.
A similar point is familiar from discussions in the lingusitics
literature concerning discourse anaphora.
- 1. a. A woman arrived.
+ 1. a. A woman arrived.
b. She spoke.
c. "a woman" == "she": OK
- 2. a. She spoke.
+ 2. a. She spoke.
b. A woman arrived.
c. "a woman" == "she": nearly impossible
describing a situation in which the same woman who entered spoke. In
contrast, in discourse (2), it is much more difficult---in fact,
barring time travel, nearly impossible---to interpret the situation as
-describing two events involving a single person.
+describing two events involving a single person.
The standard explanation is that the use of an indefinite such as "a
woman" creates a new discourse referent, which a pronoun such as "she"
natural language meanings are isomorphic to computer programs. A
closely related version of this claim is the Curry-Howard isomorphism,
which establishes a parallel correspondence between logical
-derivations and programs.
+derivations and programs.
One consequence of this correspondence is that it makes sense to think
of interpreting an expression in natural language in the same terms as
they are neither true nor false. Certainly (5) is not true, and
saying that it is false appears to commit you to believing that its
negation is true, which is not a commitment that everyone is willing
-to make.
+to make.
Given that a partial-function approach to presupposition failure is
coherent, let's consider one way to extend classical conjunction:
realizes that the first conjunct is false. In fact, she can simply
stop listening as soon as she hears "The sun is green and...". No
matter whether the second conjunct is well defined, the conjunction as
-a whole must be false.
+a whole must be false.
7. The King of France is bald and the sun is green.
embodies the following processing strategy: if the status of the first
conjunct reliably determines some aspect of the status of the
conjunction as a whole, let the value of the left conjunct control the
-outcome.
+outcome.
To be sure, it would also be coherent to choose a fully symmetric
truth table by replacing line (h) with one that maps `F&#` to `#`, or