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