Err, I meant "this program SHOULD have a response time of less than 0.5 seconds". :)
On Thu, Mar 11, 2010 at 5:16 PM, Chris Gahan <[email protected]> wrote: > Well, the code isn't really the goal -- it a concrete implementation of a > goal. A goal is more abstract, and usually allows many ways to implement it. > For example, if your goal is to sort a list of elements, there are lots of > ways to do it. Or your goal could be "this program shouldn't have a response > time of less than 0.5 seconds". A goal like that would be spread all over > your program, and would take the form of caches and lookup tables and > predictive pre-loading and the like. It would be very hard to extract that > goal by just looking at the source code. :) > > Using domain-specific languages in something like Lisp, as that Graham > article points out, can make it clearer, but there are still cross-cutting > goals that can't be explicitly expressed in a single implementation. (That > was the goal of Aspect Oriented programming, although I'm not sure it really > ends up meeting it. :) ) > > Charles Simonyi's "Intentional Programming"[1] project is all about trying > to separate the programmer's intention from the implementation of that goal, > so that code is readable and understandable by new users, AND that you can > modify the goals without having to rewrite tons of code. There's some good > essays on the subject on his company blog: > > "Is programming a form of encryption?" > > http://blog.intentsoft.com/intentional_software/2005/04/dummy_post_1.html > > 1. http://en.wikipedia.org/wiki/Intentional_programming > > > > On Thu, Mar 11, 2010 at 5:00 PM, Andrey Fedorov <[email protected]>wrote: > >> On Thu, Mar 11, 2010 at 4:41 PM, Chris Gahan <[email protected]> wrote: >> >>> We have the goals of the code in our head, we write the code, then we >>> don't bother to write down the goals. Which means that the next person to >>> come along has to read our code and try to intuit what our goals were when >>> writing it. >> >> >> The code *is* the goals. If the code is too far away to immediately intuit >> the goals, maybe you're using a language which forces you to be a human >> compiler [1]? >> >> 1. http://www.paulgraham.com/avg.html >> >> _______________________________________________ >> fonc mailing list >> [email protected] >> http://vpri.org/mailman/listinfo/fonc >> >> >
_______________________________________________ fonc mailing list [email protected] http://vpri.org/mailman/listinfo/fonc
