On Sun, Jan 18, 2009 at 7:53 AM, Claudio Bantaloukas
<[email protected]> wrote:
> On Tue, Jan 13, 2009 at 6:56 PM, Albert Santoni <[email protected]> wrote:
>> Hi Claudio,
>>> * 1) There's no need to install python. Seriously, python is the best
>>> thing since sliced bread and I've used it many times in the last x
>>> years, but from a windows developer's perspective, it's just one more
>>> dependency to add to the list...
>>
>> It also has nice syntax, which a lot of people know anyways.
>> Why did the cmake developers feel the need to write their own macro
>> language? When I see projects making decisions that I have to question, it
>> makes me skeptical of their direction.
> A language is a tool. From my point of view using python for cmake's
> purposes is like using a do-it-all-swiss-knife in order to perform
> heart surgery. I'm sure it can be done, but I'm also sure that that
> scissor would best be out of the way. Python is a great
> general-purpose language, just too powerful for what a build system
> needs.
>
> Sometimes less is more. especially when it's more clarity. (But that's
> subjective).

A language is more than a tool! It influences the way you come at
problems. I find cmake really difficult and kludgy to read. And
there's no reason that being more general purpose necessarily has to
be worse. Sure, being general purpose means being unfocused, but
that's why we don't write build scripts in raw python, because the
core python dev team has no interest in making build scripts. But
SCons is a separate project and it specifically describes itself as a
Domain-Specific Language for builds.

The current SConscript is pretty bad, but SCons has a lot of. I've
already written in just a few hours (would have been shorter if I
wasn't learning SCons at the time) a little SCons widget to make Apple
disk images. I use it something like this:
Dmg('Mixxx-1.6.5-macintel.dmg', [Dir('Mixxx.app'), 'LICENSE',
'README', 'Mixxx-manual.pdf'], ICON='Mixxx.icns')
and out pops a redistributable. Does cmake have that sort of flexibility?

In most apps that use a full language for extensibility that's a
feature, not a bug, because it means you are not limited to what the
app makes available to the scripts.

Sorry for bitching, but the "a language is just a tool" attitude just
/bothers/ me. It's such an engineering approach, it completely ignores
the chance elegance that different "tools" give you.

-Nick

------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
Mixxx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mixxx-devel

Reply via email to