DMD 1.038 and 2.022 releases

Michel Fortin michel.fortin at michelf.com
Mon Dec 15 17:28:50 PST 2008


On 2008-12-14 18:55:58 -0500, "Bill Baxter" <wbaxter at gmail.com> said:

> On Mon, Dec 15, 2008 at 7:43 AM, Andrei Alexandrescu
> <SeeWebsiteForEmail at erdani.org> wrote:
>> Bill Baxter wrote:
>>> 
>>> On Mon, Dec 15, 2008 at 6:20 AM, Andrei Alexandrescu
>>> <SeeWebsiteForEmail at erdani.org> wrote:
>>>> 
>>>> Bill Baxter wrote:
>>>>> 
>>>>> On Sun, Dec 14, 2008 at 8:40 PM, Daniel de Kok <daniel at nowhere.nospam>
>>>>> wrote:
>>>>>> 
>>>>>> On Sun, 14 Dec 2008 20:10:26 +0900, Bill Baxter wrote:
>>>>>> 
>>>>>>>> Version D 1.038   Dec 11, 2008
>>>>>>>> New/Changed Features
>>>>>>>> * Added Partial IFTI Bugzilla 493
>>>>>>> 
>>>>>>> Hooray!  Now I can finish porting std.algorithm and friends to D1!
>>>>>> 
>>>>>> So, we'll see a new std2? :^) (I for one would be very happy)
>>>>> 
>>>>> Not a new std2, just updates to the old one.  But yeh.
>>>> 
>>>> Apologies for the delay in updating std2. I've had a good reason (in
>>>> addition to having a dissertation to complete), see www.erdani.org. :o)
>>> 
>>> I'm referring to this std2: http://www.dsource.org/projects/std2
>>> I think you're referring to std in v2 Phobos, but if you really are
>>> referring to std2 then I look forward to the updates.  ;-)
>>> 
>>> --bb
>> 
>> Sorry, I was indeed referring to std v2 in Phobos. I warn you guys, there's
>> going to be plenty of changes to std.algorithm.
> 
> With ranges and reference returns, I suspect so.  D2's added special
> support for foreach over ranges, right?  Is there anything else that
> had to change D2 in for ranges?
> 
> Anyway, my personal goal with D2 is not so much to facilitate
> compiling D2 code in D1, but more to just bring similar functionality
> to D1.  So if std2.algorithm gets stuck at today's rev because of
> porting issues, I can live with that.  But currently there is no
> functioning version std.algorithm at all in D1 because of the heavy
> use of partial IFTI with those string alias parameters.

Couldn't you use a double template?

	template doSomething(string predicate)
	{
		void doSomething(A)(a) { ... }
	}

Then call it like this:

	doSomething!("hello!")(5);

I'm using this trick at some places the D/Objective-C bridge.

Anyway, it's probably not worth the trouble anymore given that the 
latest DMD fixes the problem.

-- 
Michel Fortin
michel.fortin at michelf.com
http://michelf.com/



More information about the Digitalmars-d-announce mailing list