Re: Software epigrams

2013-05-16 Thread rusi
On May 16, 7:37 pm, Chris Angelico ros...@gmail.com wrote:
 On Fri, May 17, 2013 at 12:23 AM, Neil Cerutti ne...@norwich.edu wrote:
  On 2013-05-16, F?bio Santos fabiosantos...@gmail.com wrote:
  And in Java we have factories, builders and builderfactories.
  What's so relevant about them? Java is high level, no?

  When I tried to pin down what an irrelevant detail in a computer
  program could be, I couldn't do it. I guess comment decorations,
  maybe? But those would have no bearing on the level of problem
  for which a programming language is most appropriate.

 Let me give you a real example.

 One of the programs I wrote at work is a simple daemon that runs on
 every node in a network. It periodically sends out a heartbeat signal
 that the other nodes hear, and if any node hasn't been heard from in X
 seconds, it is deemed down. (It might technically not be down, if
 there's a network problem, but the point is that we don't care about
 the difference. It's down.) There's also some incidental statussy data
 included, for convenience. This is implemented using UDP.

 Do I care about how a UDP packet is structured? No.

 Do I care about the mechanics of IP routing? No.

 Do I care about MAC addresses? No. They might feature in our IPv6
 addresses, but I still don't care - the IP addresses (v4 or v6) of the
 nodes are treated as opaque tokens.

 All I care about is that I call a function with a string of data and a
 corresponding function gets called in the other program with that same
 string. All the details of how that happens in between aren't
 important to my program. They're somewhat of note in the design phase,
 but not to the program itself. They are, in fact, irrelevant.

 ChrisA

You are just saying (in specific detail) what I said, viz that the
programmer is one who 'relevates' ie sifts the relevant from the
irrelevant and a good programming language is one that gives good
relevating tools:
http://blog.languager.org/2013/02/c-in-education-and-software-engineering.html
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Software epigrams

2013-05-16 Thread Chris Angelico
On Fri, May 17, 2013 at 1:06 AM, rusi rustompm...@gmail.com wrote:
 On May 16, 7:37 pm, Chris Angelico ros...@gmail.com wrote:
 On Fri, May 17, 2013 at 12:23 AM, Neil Cerutti ne...@norwich.edu wrote:
  When I tried to pin down what an irrelevant detail in a computer
  program could be, I couldn't do it. I guess comment decorations,
  maybe? But those would have no bearing on the level of problem
  for which a programming language is most appropriate.

 Let me give you a real example.
 [snip]

 You are just saying (in specific detail) what I said, viz that the
 programmer is one who 'relevates' ie sifts the relevant from the
 irrelevant and a good programming language is one that gives good
 relevating tools:
 http://blog.languager.org/2013/02/c-in-education-and-software-engineering.html

Right. All I'm adding is a concrete example - which, I think, will be
helpful to Neil, and perhaps to others too.

ChrisA
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Software epigrams

2013-05-15 Thread rusi
On May 14, 8:08 am, Dan Sommers d...@tombstonezero.net wrote:
 On Tue, 14 May 2013 04:12:53 +1000, Chris Angelico wrote:
  On Tue, May 14, 2013 at 4:02 AM, Skip Montanaro s...@pobox.com wrote:
  8. A programming language is low level when its programs require
  attention to the irrelevant.
  I think irrelevant in this context means stuff like memory
  management.
  Sure. That one's pretty clear (if you care about memory management,
  you want a low level language) ...

 http://www.memorymanagement.org/articles/lang.htmlsays:

     C programmers think memory management is too important to be
     left to the computer. Lisp programmers think memory management
     is too important to be left to the user.

     (from Ellis and Stroustrup's The Annotated C++ Reference Manual)

Notable physicist David Bohm wrote that the difficulty in
understanding quantum physics is largely a result of the limitation of
the subject-predicate format of Indo-European languages.

He suggested some experiments in languaging called rheomode that makes
English more process-oriented and less (abstract)noun oriented.

One part of this project is to learn to use the word 'relevate' --
which is 'relevant' verbified with an element of 'elevate' as in 'lift
into relief'

I guess the Ellis and Stroupstrup quote above just shows that C++
programmers relevate in one direction whereas Lisp programmers
relevate in another.

More http://www.mindstructures.com/2010/04/meaning-and-context/

Twenty two years ago I wrote about this 
http://www.the-magus.in/Publications/chor.pdf

Suddenly I am finding glowing references to this
http://dieswaytoofast.blogspot.in/2013/01/why-i-grown-to-loathe-c.html

And I am uneasy because these questions are far less rhetorical/
tautological than I imagines in 1990!

So here's a (rather incomplete/preliminary) rebuttal to myself
http://blog.languager.org/2013/02/c-in-education-and-software-engineering.html
-- 
http://mail.python.org/mailman/listinfo/python-list