I've recently been reading version 2 of the most excellent book "Code Complete", which turns out to be a very highly respected repository of good code construction guidelines. One side effect of reviewing all the benefits of abstraction, encapsulation, information hiding, etc is the recognition that M as a language supports very few of the concepts and constructs that make the modern object-oriented languages so powerful and so maintainable. As such, I'm becoming more and more interested in pursuing alternatives to M code for interacting with a GTM database and producing UI elements.

As I believe a previous poster noted, Perl (like M) doesn't enforce good coding technique -- that is left up to the individual, which means that "good technique" doesn't always happen, or at least happens inconsistently. The Perl-M interface (which we are using more and more at UCDavis) is a great start in the direction of being able to adopt the OO ideals; but other languages, like java, python, and possibly PHP do much more in terms of enforcing good technique. I'll be very interested to see how these technologies can be used in conjunction with GTM.

--Dennis

Suchi Pande wrote:

Jim Self wrote:

One of the FORTRAN projects I was given to maintain made even Fileman's generated code look good, let alone Fileman itself. It was full of computed GOTO's and no documentation
anywhere and was decidely unmaintainable.


Impressive. Computed gotos were certainly one of the more horrible aspects of fortran. They were dropped in fortran 95 in recognition of Dijkstra's impassioned plea in his 1968 paper (Go To Statement Considered Harmful) where he wrung his hands and bemoaned "the quality of programmers is a decreasing function of the density of Go To statements in the programs they produce."

> I can't imagine that anything a conscientious

programmer might create in Perl could be so bad.


Well...the obfuscated perl contest has several beautiful examples each year. ;-)

I think maintainable code depends mostly on the maturity of the programmer in the end. A mature programmer makes allowances and adjusts the language to suit maintainability more.

I think mature programmers recognize that quick and dirty hacks tend to become permanent hacks. Perl, being capable of doing almost anything, and doing it in many ways, does tend to encourage quick and dirty hacks, which in turn tend to become unmaintainable permanent hacks.

[Come to think of it, this morning I used perl 4 for dos (a 230kB download) on a script to do some spreadsheet arranging in a tiny amount of memory in a disgustingly quick and dirty manner. I was liberal with the comments though, so I expect it will be maintainable.]

PJ


-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Hardhats-members mailing list
Hardhats-members@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hardhats-members


--
Dennis Ballance, DVM
[EMAIL PROTECTED]

Assistant VMTH Director, Hospital Computing
UC Davis Vet Med Teaching Hospital
(530) 754-7482



-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Hardhats-members mailing list
Hardhats-members@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hardhats-members

Reply via email to