miguelimo38 at yandex.ru
Sat Oct 22 19:45:03 CEST 2011
Yeah, I was going to mention Smalltalk too, as one of the languages NOT using plain text to store programs — which led to a very strong boundary between ST and other world, not doing any favors to the first.
The idea of using some non-plaintext-based format to store programs appeared lots of times, without any significant achivements. And I think one of the main reasons for that is that it makes interacting with other tools extremely difficult. Not just with pre-existing tools. Even if grep didn't exist, it would be very easy to hack something like it if you need to search your codebase for a specific word; you don't need any complex APIs to read plain text files, there are just two functions — one to read a line of code, and another one to check for eof. Similarly, it's easy to generate your Java files with a Perl script — with Perl itself not knowing anything about Java. Text has the advantage of being SIMPLE — and the vague idea of "embedding a spreadsheet in your code" (what the hell for?) doesn't come close to beating it.
And you know what? You don't really need to give up text-based storage to have graphic capabilities. Windows resources files (.rc) are text-based, and there are plenty of visual editors for them, including one in Visual Studio; and, thankfully, it still produces the same old text-based file — and sometimes it's very desirable to look into one, for example, if you want to know which control is tagged with this ID.
Отправлено с iPad
22.10.2011, в 21:06, "Claus Reinke" <claus.reinke at talk21.com> написал(а):
>> The world needs programmers to accept and take seriously Greg Wilson's extensible programming, and stop laughing it off as "lolwut wysiwyg msword for programming", and start implementing it.
> Who is "the world"? For starters, I don't think it is Greg Wilson's
> idea, and if you look for alternate sources, often under other titles, you'll find parts of it implemented, with varying degrees of success
> and often little acceptance. The idea is much older than one might think - conferences on extensible languages were held around 1970.
> Early implementation approximations didn't have the disposable computing power of today's PCs, nor did early implementers find
> an audience ready for their ideas (to feed their students or themselves, some of those who were such ahead of the curve had to switch to working on more conventional, funded, topics).
> Useful search keys:
> - extensible languages (as in AI, the meaning of "extensible" tends
> to be redefined whenever a problem gets solved, so many features
> that used to mark an extensible language in the past have now
> become standard)
> - structure editors (in that they were forerunners of projectional
> IDEs, and exhibited some of their advantages and disadvantages;
> there have been many efforts to generate structure editors from language descriptions)
> - projectional language workbenches (instead of parsing source
> to AST, the IDE/workbench operates on an AST-like abstract
> model, and source code views are just projections of that; makes it easier to embed sublanguages);
> Smalltalkers will probably claim their image-based IDEs have
> been doing that all along.
> - hyper-programming (where persistent runtime data can be embedded in code via linking, similar to hypertext, with
> generic editors instead of generic Read/Show)
> - Banana Algebra: Syntactic Language Extension via an Algebra of Languages and Transformations (one example of research
> on language composition)
> IDE generators, IDE tooling for domain-specific languages, language-oriented programming, language workbenches, ... they all contribute to the now broader interest in the topic.
> In the context of Haskell, there once was Keith Hanna's
> document-centered programming:
> Perhaps Keith's projects can serve as an inspiration to just start hacking?-) The subject is an instance of these quotes:
> "The future is already here - it's just not very evenly distributed."
> William Gibson
> "The best way to predict the future is to invent it."
> Alan Kay
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
More information about the Haskell-Cafe