From 411b30a906f5ac5051d6a872b02de3fac0aa3bdc Mon Sep 17 00:00:00 2001 From: Jim Pryor Date: Mon, 23 Aug 2010 22:02:51 -0400 Subject: [PATCH] added offsite_reading list Signed-off-by: Jim Pryor --- index.mdwn | 7 ++++ offsite_reading.mdwn | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 offsite_reading.mdwn diff --git a/index.mdwn b/index.mdwn index 4ad7f4bd..73d2020b 100644 --- a/index.mdwn +++ b/index.mdwn @@ -171,6 +171,13 @@ superficial syntactic differences between these languages. ##[[Schedule of Topics]]## +##[[Lecture Notes]]## + +##[[Offsite Reading]]## + +There's lots of links here already to tutorials and encyclopedia entries about many of the notions we'll be dealing with. + + ---- All wikis are supposed to have a [[SandBox]], so this one does too. diff --git a/offsite_reading.mdwn b/offsite_reading.mdwn new file mode 100644 index 00000000..4994bca1 --- /dev/null +++ b/offsite_reading.mdwn @@ -0,0 +1,95 @@ +Many off these links are to Wikipedia. You can learn a lot from such articles, +so long as you remember they may sometimes mislead or make mistakes. However, I +hope at this point in your education you'll have learned to be a guarded reader +even of authoritative treatises by eminent authors. So you shouldn't need any +Wikipedia-specific warnings. + +## General issues about variables and binding in programming languages ## + +[[!wikipedia Variable (programming)]] +[[!wikipedia Variable shadowing]] +[[!wikipedia Scope (programming)]] +[[!wikipedia Free variables and bound variables]] +[[!wikipedia Name binding]] +[[!wikipedia Name resolution]] +[[!wikipedia Parameter (computer science)]] + +## Functions as values, etc ## + +[[!wikipedia Higher-order function]] +[[!wikipedia First-class function]] +[[!wikipedia Closure (computer science)]] +[[!wikipedia Currying]] +[[!wikipedia Recursion (computer science)]] + +## Functional vs imperative programming ## + +[[!wikipedia Declarative programming]] +[[!wikipedia Functional programming]] +[[!wikipedia Purely functional]] +[[!wikipedia Referential transparency (computer science)]] +[[!wikipedia Imperative programming]] + +## Scheme and OCaml ## + +[[!wikipedia Scheme (programming language)]] +[[!wikipedia Objective Caml]] + +## Untyped lambda calculus and combinatory logic ## + +[[!wikipedia Lambda calculus]] + +[[!wikipedia Haskell Curry]] +[[!wikipedia Moses Schönfinkel]] +[[!wikipedia Alonzo Church]] + +[[!wikipedia Combinatory logic]] +[[!wikipedia B,C,K,W system]] +[[!wikipedia SKI combinatory calculus]] + +[[!wikipedia Church-Rosser theorem]] +[[!wikipedia Normalization property]] +[[!wikipedia Turing completeness]] + +[[!wikipedia Church encoding]] +[[!wikipedia Y combinator]] + +[[!wikipedia Curry-Howard isomorphism]] + +[[!wikipedia Evaluation strategy]] +[[!wikipedia Eager evaluation]] +[[!wikipedia Lazy evaluation]] +[[!wikipedia Strict programming language]] + +## Types ## + +[[!wikipedia Tagged union]] +[[!wikipedia Algebraic data type]] +[[!wikipedia Pattern matching]] +[[!wikipedia Unit type]] +[[!wikipedia Bottom type]] +[[!wikipedia Typed lambda calculus]] +[[!wikipedia Simply typed lambda calculus]] +[[!wikipedia Type polymorphism]] +[[!wikipedia System F]] + +[[!wikipedia Side effect (computer science)]] +[[!wikipedia Reference (computer science)]] +[[!wikipedia Pointer (computing)]] + +## Continuations ## + +[[!wikipedia Continuation]] +[[!wikipedia Continuation-passing style]] +[[!wikipedia Call-with-current-continuation]] +[[!wikipedia Delimited continuation]] + +## Monads ## + +[[!wikipedia Monad (functional programming)]] + +## Linear Logic ## + +[[!wikipedia Linear logic]] + + -- 2.11.0