Reading the documentation

Rustom Mody rustompmody at gmail.com
Thu Aug 24 23:23:09 EDT 2017


On Friday, August 25, 2017 at 8:39:25 AM UTC+5:30, Rustom Mody wrote:
> On Friday, August 25, 2017 at 8:28:55 AM UTC+5:30, Ian wrote:
> > On Aug 24, 2017 8:51 PM, "Larry Martell"  wrote:
> > 
> > On Thu, Aug 24, 2017 at 9:21 PM Rustom Mody wrote:
> > 
> > > Statement 1: Aeroplanes fly
> > > Statement 2: Submarines swim
> > >
> > >
> > > Are these two statements equally acceptable?
> > >
> > > [Inspired by a talk by Noam Chomsky]
> > 
> > There should be a corollary of Godwin's law for that idiot.
> > 
> > 
> > Chomsky borrowed it from Dijkstra, I think.
> > 
> > http://www.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD898.html
> 
> I was about to start with the Dijkstra connection but then cut it because irrelevant
> However I find the two very different
> I think Dijkstra's "Can a submarine swim?" is almost entirely a mockery of the idea
> However Chomsky's laconic juxtaposition points to the deep non-rational 
> programming in our subconscious mind of what we accept and what we dont
> 
> [Larry seems to be angry about/at somethin'… No idea who/what…]

One more juxtaposition(s) to consider:

In Fortran, Pascal the numerics were real and int(eger)
In PL-1 it was Float and Fixed
So a clear choice of underlying model on the one side and machine representation
on the other

It was only C onwards that we started seeing the strange juxtaposition
- for int(eger) emphasize the (math) model
- for real emphasize the float(ing) representation

I vaguely remember someone (Niklaus Wirth??) criticizing this mis-juxtaposition

In retrospect though I find it fine: 

- fixpoint numbers are ok representations of integers most of the time 
- floats as representations of reals are so leaky that remembering the difference
sounds like a good idea

Early in my python classes I show this:

$ python
Python 2.7.13 (default, Jan 19 2017, 14:48:08) 
[GCC 6.3.0 20170118] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> .1 + .1 == .2
True
>>> .1 + .1 + .1 == .3
False
>>> 



More information about the Python-list mailing list