l i n u x - u s e r s - g r o u p - o f - d a v i s
L U G O D
 
Next Meeting:
January 6: Social gathering
Next Installfest:
TBD
Latest News:
Nov. 18: Club officer elections
Page last updated:
2010 Sep 28 11:00

The following is an archive of a post made to our 'vox mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
[vox] Dijkstra was ahead of his time!
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vox] Dijkstra was ahead of his time!



> -------- Original Message --------
> Subject: [vox] Dijkstra was ahead of his time!
> From: Brian Lavender <brian@brie.com>
> Date: Tue, September 28, 2010 9:32 am
> To: vox@lists.lugod.org
> 
> 
> I just listened to this speech by Disjkstra in 1972

My Data Structures professor, Dr. Weiss, corresponded with Dijkstra
when Dr. Weiss was researching data structures. So by taking Dr. Weiss,
I was introduced early on to Dijkstra's inspirations.

>, an amazing speech. He
> discusses abstraction,

Abstraction is an abstract idea in itself. In English, abstraction
means generalizing. So in computer programming, it means to
generalize code.

> something today we only seem to be grasping well
> in the field of computer science. I am sure as we move along, Z, VDM
> and SPARK/ADA,  Domain Specific languages and formal methods will play
> an increasing role.

All modern, general purpose programming languages support generalized
code.
You create generalized code by creating classes. Classes are the
combination
of objects and the operations written for each object.
Hence the term Object Oriented Programming (OOP). For older languages
that don't support classes specifically, those languages that support
the more primitive abstract datatypes (ADT) can support generalized
code.
(I build ADTs for everything I write in native C.)

By thinking in terms of OOP, you're forced to look at the solution to a
problem from the inside out, not just from the outside looking in. If
your code is perfectly abstracted, and if you adhere to the
additional level of quality defined by "cohesion and coupling", then
debugging goes away. If it compiles, it runs correctly.

> I like Dijkstra's critique of the one liner, very
> funny.

I liked the introduction of Dijkstra. The presenter hit on all of
Dijkstra's
premises:
Programming is an art.
Programs should be structured.
Programming has a style.
Code is composed, not written.

P.S. Here are Dr. Weiss's books:
http://www.amazon.com/Mark-Allen-Weiss/e/B001IOF58Y/ref=ntt_athr_dp_pel_1

<snip>

_______________________________________________
vox mailing list
vox@lists.lugod.org
http://lists.lugod.org/mailman/listinfo/vox



LinkedIn
LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
facebook
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
Appahost Applications
For a significant contribution towards our projector, and a generous donation to allow us to continue meeting at the Davis Library.