On 10 Sep 1999 23:39:08 +0200, Denys Duchier wrote: >"Fredrik Lundh" <fredrik at pythonware.com> writes: >> "We will perhaps eventually be writing only small >> modules which are identified by name as they are >> used to build larger ones, so that devices like >> indentation, rather than delimiters, might become >> feasible for expressing local structure in the source >> language." >> -- Donald E. Knuth, "Structured Programming with goto >> Statements", Computing Surveys, Vol 6 No 4, Dec. 1974 >While that idea is quite convenient for authoring programs manually, >it is a nuisance for automated processing, e.g. for macros (i.e. the >combination of textual program fragments). I've heard that before -- but I can see absolutely no reason for that. In each block seperately, the block delimitations are clear; therefore, there's no reason why a macro expansion should ever mess them up. noWeb proves that theory completely without recourse to knowing the rules of Python -- noWeb simply maintains indentation. A smarter system -- such as a macro system for Python itself -- would insert the parsed text, including the INDENT and DEDENT tokens, thus removing the need to keep track of indentation outside of the current text itself. >In Haskell, you can use >indifferently a mix of indentation or braces and semicolons to convey >layout structure. This is, in my opinion, a more reasonable >compromise. That is indeed a compromise, and although I don't mind it at all it's not very much like Python -- many ways to DO something, but only one way to write it, and that very easy to see. >Dr. Denys Duchier Denys.Duchier at ps.uni-sb.de -- -William "Billy" Tanksley
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4