The Joys Of Data-Driven Programming

Rustom Mody rustompmody at gmail.com
Sun Aug 21 08:39:15 EDT 2016


On Sunday, August 21, 2016 at 5:51:36 PM UTC+5:30, Chris Angelico wrote:
> On Sun, Aug 21, 2016 at 9:53 PM, Rustom Mody  wrote:
> > Some other examples:
> > 1.
> > Aren’t makefiles data-driven? And if so should not much more declarative
> > attempts like jam have been correspondingly more successful?
> > https://www.perforce.com/resources/documentation/jam
> >
> > [Personally Ive always believed that jam is better than make and is less used
> > for entirely historical reasons; something like half the world eoling with crlf
> > and half with lf.  But maybe make is really a better design because more imperative?]
> 
> The issues with makefiles are mainly to do with metaprogramming (plus
> a few specific issues with the format itself, which don't apply to the
> more general concept). There's a ton of magic to cope with makefiles
> that try to rebuild themselves, plus all the extra tooling around the
> outside (configure scripts etc), to try to move to a meta-level above
> the makefile and thus enable metaprogramming of makefile contents.

Yeah… I guess thats the issue said differently:
viz. For a human to write/think in terms of rules is cleaner (more ‘hi-level’)
than writing out imperative actions.
However when it comes to generating — what you call metaprogramming — rule-based
systems suddenly stop being attractive, especially when they are the target
of the generator.
Standard example:
Programmers dont like to code in assembly
Compiler writers dont like to generate to anything else



More information about the Python-list mailing list