9 comments

[ 3.0 ms ] story [ 37.1 ms ] thread
Very interesting historical document, though I don't have that much confidence in the precision of the explanation of the terms.

Related to this: does anyone know if there's any document that delves into how Church landed on Church numerals in particular? I get how they work, etc, but at least the papers I saw from him seem to just drop the definition out of thin air.

Were church numerals capturing some canonical representation of naturals in logic that was just known in the domain at the time? Are there any notes or the like that provide more insight?

Before Church there was Peano, and before Peano there was Grassmann

> It is rather well-known, through Peano's own acknowledgement, that Peano […] made extensive use of Grassmann's work in his development of the axioms. It is not so well-known that Grassmann had essentially the characterization of the set of all integers, now customary in texts of modern algebra, that it forms an ordered integral domain in which each set of positive elements has a least member. […] [Grassmann's book] was probably the first serious and rather successful attempt to put numbers on a more or less axiomatic basis.

The Shen project is quite fascinating - and tedious to work with, as evidenced by this book of images across different pages etc.
Oh god. Where is the pdf. This format is horrible to read from
I'm generally a "drag over text" reader.

Images of text, even if it were a text size I'd be comfortable with, is something that just breaks how I read online.

It’s been said that structured programming is programming without GOTO, and functional programming is programming without assignment statements. Is declarative programming then programming without the concept of linear time?
I would argue that imperative programming is the only one with a concept of linear time.

Here's a functional example:

    map (*3) [0,1,2,3,4,5,6,7,8,9]
Are those multiplications run in sequence or parallel?

Here's a fancier functional one:

    getUser = User <$> getName <*> getEmail <*> getStartDate
What order are the fields fetched?

If you answered "unspecified" then you're right! A compiler could parallelize either of these expressions!

I'm pleased people have gt something out of the opening cahoter of TBoS. But the book was never designed to be read online, except as a preview and a quick lookup/reminder of features. For intensive prolonged reading, the route to purchasing the hardcopy is linked to the front page.

Anybody discouraged from buying by the very limited hurdle getting the book will completely fail at the more substantial hurdle of understanding it.

Expecting everything for free, and creators giving in to that demand shapes character. Systems which reward minimal effort, maximal demand, and zero reciprocity end up selecting for the worst traits in both readers and communities.

(comment deleted)