April 11, 2007
Bill Baxter wrote:
> Walter Bright wrote:
>> Bug fixes, some enhancements.
>>
>> http://www.digitalmars.com/d/changelog.html
>>
>> http://ftp.digitalmars.com/dmd.1.011.zip
> 
> Great.
> 
> I updated the D mode for Emacs [1] with the new keywords.

I've done the same for the UltraEdit syntax file here:

http://www.prowiki.org/wiki4d/wiki.cgi?EditorSupport/UltraEdit


Sean
April 11, 2007
On Wed, 11 Apr 2007 01:40:39 -0700, Walter Bright <newshound1@digitalmars.com> wrote:

>Bug fixes, some enhancements.
>
>http://www.digitalmars.com/d/changelog.html
>
>http://ftp.digitalmars.com/dmd.1.011.zip

Great!

What are the chances that recursive instantiations of template mixins would be allowed?
April 11, 2007
Lionello Lunesu wrote:
> Walter Bright wrote:
>> All final is is that if you declare a variable as final, you can only initialize it. It cannot be reassigned.
> 
> Is that like what "const" does, at the moment?


Yes, except it only affects the symbol.
April 11, 2007
Jarrett Billingsley wrote:
> "Manfred Nowak" <svv1999@hotmail.com> wrote in message news:eviatg$7r5$1@digitalmars.com...
>> Walter Bright wrote
>>
>>> some enhancements.
>> I believe that "macro" is the wrong wording for the intended semantics
>> of manipulating ASTs.
>>
>> D supporters might get into serious argumentative troubles when
>> negating the usefullness of C macros on one side and OTOH have to hail
>> AST manipulators which irritatingly have the same name: "macro".
> 
> ..but then you have Lisp programmers who will feel right at home calling it 'macro,' which is, I guess, the motivation for calling them as such.

Yes, that is the motivation, and my impression from talking with people about it is it won't be a problem. I intend to refer to them as "AST macros", rather than C's "text macros".
April 11, 2007
Hasan Aljudy wrote:
> What is the macro keyword for?

For the future (unimplemented) AST macro feature.
April 11, 2007
Sean Kelly wrote:
> Bill Baxter wrote:
>> Walter Bright wrote:
>>> Bug fixes, some enhancements.
>>>
>>> http://www.digitalmars.com/d/changelog.html
>>>
>>> http://ftp.digitalmars.com/dmd.1.011.zip
>>
>> Great.
>>
>> I updated the D mode for Emacs [1] with the new keywords.
> 
> I've done the same for the UltraEdit syntax file here:
> 
> http://www.prowiki.org/wiki4d/wiki.cgi?EditorSupport/UltraEdit

Also Kate/KDevelop users will get an update in the next few days with the automatic update tool in Kate. Those who are in hurry can fetch it manually from http://bugs.kde.org/show_bug.cgi?id=144087.
April 11, 2007
Walter Bright wrote:
> Hasan Aljudy wrote:
>> What is the macro keyword for?
> 
> For the future (unimplemented) AST macro feature.

Aha! Sounds interesting ..
I haven't been following the discussions lately, was this discussed somewhere? I'd like to see .. like; what kind of ideas are laid out on the table? Do you have something specific in mind?
April 11, 2007
Walter Bright wrote:
> Bug fixes, some enhancements.
> 
> http://www.digitalmars.com/d/changelog.html
> 
> http://ftp.digitalmars.com/dmd.1.011.zip


----
struct HttpStatus
{
        int     code;
        char[]  name;
}

struct HttpResponses
{
        final HttpStatus Continue = {100, "Continue"};
}

void foo (inout HttpStatus status)
{
}

void main ()
{
        foo (HttpResponses.Continue);
}
---

"Error: cannot modify final variable 'Continue'"

The above used to compile. How is one supposed to declare and populate a struct that cannot subsequently be changed, and can also be passed by reference?

(if you change 'final' to 'const' within the HttpResponses struct, the same error is generated, and saying "final" rather than "const")

April 11, 2007
Walter Bright wrote:
> Bug fixes, some enhancements.
> 
> http://www.digitalmars.com/d/changelog.html
> 
> http://ftp.digitalmars.com/dmd.1.011.zip

what was wrong with "inout" ?
April 11, 2007
freeagle wrote:
> what was wrong with "inout" ?

Nothing. I hope 'inout' will stay "read-write reference" (&), and 'ref' will become "read-only reference" (const &). Although 'in' seems better name for it... But well, we'll see.

-- 
serg.