[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: JCSP, CSP Networking, and other some other points




On 14 May 2009, at 04:09, P.H.Welch wrote:

2.  Personnally, I'd like to see a development systems akin to the old
TDS - I am so old I actually do not like the modern programme writing
pardigm with thousnads of interlinked filelets requiring a compendium of
flow charts and dependency diagrams and spreadsheets to track effects.
I don't like it either, and never did!

The (true) folding editor* is, I think, hugely underestimated in its importance, and largely removes the temptation to try "managing complexity" by spawning additional files.  I have 3,000 lines in my current project happily in a single file, and have in the past gone to 13,000.  I switched to a single-file style after TDS introduced me to folding c. 1988.

But I believe another factor gives rise to the many 'filelet' problem – the unnecessary factoring of code into a large number of very small routines, each called just once.  This seems to be endemic in programming texts, regardless of language.  Aside from sharing code, either within or between programs, I never spawn a subroutine.  Sadly, I was alone in this position in my faculty.  All the kids were led down the other path.  Readability (performance, and code-size) went down the plug-hole.

Java (and its ilk) encourage this IMHO, and extends it to classes.  Hoare argued that classes be used judiciously only as the top level of abstraction.  I found myself marking projects with code cast entirely as a large number of very small classes comprising routines perhaps five lines long – introducing massive interconnection and thus almost totally unreadable.  Any algorithm was rendered all but indecipherable.

Perhaps I'm preaching to the converted …

Ian
* by true folding, I mean that a fold is treated as a textual composition, governing its contents – i.e. indenting or (commenting out) the fold indents (or comments out) each line of content.  Few so-called folding editors do this.  (I use Michael Haardt's fe though it fails this test, for want of one that both passes and follows an emacs, rather than vi, tradition.)


Dr. Ian East
Open Channel Publishing Ltd.
(Reg. in England, Company Number 6818450)