|
From: <Joe...@t-...> - 2016-05-06 09:59:51
|
Hi, Pascal J. Bourguignon wrote: > [...] for a later project, we could imagine an emacs mode where > each function (or toplevel form) is presented in its own buffer, > with navigation buttons to the callers and callees and other > references to the function. This remembers me of the Visual Basic Editor in MS-Word. It always felt like an aberration to me (and I've heard others express similar feelings), because of total lack of orientation, never knowing whether there's perhaps another method, callback or event handler that's needed to understand the code, hidden somewhere else, only MS gurus know where! Compare with a bottom up file: you have all in code in front of you. Print it on paper for even better reading (I haven't done so for long, dreaming of a paperless office, but you'll hear some well-known SW-gurus really recommend this). Perhaps I'm old-fashioned. The TV & monitors I've bought have grown bigger each and every time. Other people seem to favour the opposite: they work with Eclipse or a similar IDE, and with every release, it feels like the code window gets smaller and smaller, because the information windows to the left, to the right, to the top and to the bottom grow, yielding a very narrow (let's say "focused" to express it in a positive way) view on what's actually important. As a result, those days, programmers view code in a tinier window than when I started computing on a 9" screen over 30 years ago. That's no progress to me! > Something like the Smalltalk > code browser: there's no notion of file then. It works nicely for Smalltalk, because unlike C or Common Lisp, the semantics of a method body does not depend on a myriad of definitions that appears in lexical order before it in the source file. - No macros nor any variations to the syntax; - Nothing like operator precedence (except unary operators); - class and instance variables are one window away. Hence IMHO, any parallel is not applicable. In summary, the 'function at a time' might work with programs with strong locality, e.g. tree structured. But not when you need to implement a collection of event handlers. Those hide the flow and ordering of messages and calls -- in Smalltalk too. Regards, Jörg Höhle |