Re: Cross module version specs

2012-04-27 Thread Walter Bright
On 4/26/2012 3:09 AM, James Miller wrote: I'm trying to write a binding that has conditional sections where some features have to be enabled. I am using version statements for this. I have a list of version specs in a module by themselves. When I try to compile another module that imports this

Re: Cross module version specs

2012-04-27 Thread Paulo Pinto
On Friday, 27 April 2012 at 05:51:36 UTC, Walter Bright wrote: On 4/26/2012 3:09 AM, James Miller wrote: I'm trying to write a binding that has conditional sections where some features have to be enabled. I am using version statements for this. I have a list of version specs in a module by

Re: Cross module version specs

2012-04-27 Thread bcs
On 04/26/2012 03:20 AM, Jonathan M Davis wrote: On Thursday, April 26, 2012 12:09:19 James Miller wrote: All I can think is that version specifiers aren't carried across modules They can't be. The only time that versions apply to your entire program is if they're built-in or they're specified

Re: Cross module version specs

2012-04-27 Thread bcs
On 04/26/2012 05:37 AM, Steven Schveighoffer wrote: versions should be defined for the *entire program*, not just for certain files. And if they are defined just for certain files, define them in the file itself. Versions should be defined for the *entire program*, not just for whatever you

Re: Cross module version specs

2012-04-27 Thread Marco Leise
Am Thu, 26 Apr 2012 21:22:46 -0700 schrieb bcs b...@example.com: One monster of a string mixin? Take a look at the GtkD sources, more specifically the files in gtkc/ :-) -- Marco

Re: Cross module version specs

2012-04-27 Thread Marco Leise
Am Thu, 26 Apr 2012 21:24:46 -0700 schrieb bcs b...@example.com: On 04/26/2012 05:37 AM, Steven Schveighoffer wrote: versions should be defined for the *entire program*, not just for certain files. And if they are defined just for certain files, define them in the file itself.

Re: Cross module version specs

2012-04-27 Thread Matt Peterson
What about a templated module? module test(bool option1, T); Imported like this: import test!(true, Foo); It could act like the entire module was wrapped in a template, and the import would become: import test; mixin test.test_template!(true, Foo);

Re: Cross module version specs

2012-04-27 Thread Dmitry Olshansky
On 28.04.2012 0:22, Matt Peterson wrote: What about a templated module? module test(bool option1, T); Imported like this: import test!(true, Foo); It could act like the entire module was wrapped in a template, and the import would become: import test; mixin test.test_template!(true, Foo);

Re: Cross module version specs

2012-04-27 Thread Matt Peterson
On Friday, 27 April 2012 at 20:26:38 UTC, Dmitry Olshansky wrote: I would rather see this as import test with specified version identifiers. import test!(some_version); //imports module but treats it contents as if with version = some_version; added at the top of it This is inconsistent

Cross module version specs

2012-04-26 Thread James Miller
I'm trying to write a binding that has conditional sections where some features have to be enabled. I am using version statements for this. I have a list of version specs in a module by themselves. When I try to compile another module that imports this module, it acts as if the version was

Re: Cross module version specs

2012-04-26 Thread Jonathan M Davis
On Thursday, April 26, 2012 12:09:19 James Miller wrote: All I can think is that version specifiers aren't carried across modules They can't be. The only time that versions apply to your entire program is if they're built-in or they're specified on the command line. which pretty much makes

Re: Cross module version specs

2012-04-26 Thread James Miller
On Thursday, 26 April 2012 at 10:20:37 UTC, Jonathan M Davis wrote: On Thursday, April 26, 2012 12:09:19 James Miller wrote: which pretty much makes them completely useless unless you only use the built-in versions. That's not true at all. It just means that versions are either useful for

Re: Cross module version specs

2012-04-26 Thread Steven Schveighoffer
On Thu, 26 Apr 2012 06:32:58 -0400, James Miller ja...@aatch.net wrote: On Thursday, 26 April 2012 at 10:20:37 UTC, Jonathan M Davis wrote: On Thursday, April 26, 2012 12:09:19 James Miller wrote: which pretty much makes them completely useless unless you only use the built-in versions.

Re: Cross module version specs

2012-04-26 Thread James Miller
On Thursday, 26 April 2012 at 12:37:44 UTC, Steven Schveighoffer wrote: On Thu, 26 Apr 2012 06:32:58 -0400, James Miller ja...@aatch.net wrote: On Thursday, 26 April 2012 at 10:20:37 UTC, Jonathan M Davis wrote: On Thursday, April 26, 2012 12:09:19 James Miller wrote: which pretty much