Thread overview | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
October 05, 2007 DMD 1.022 and 2.005 releases | ||||
---|---|---|---|---|
| ||||
Bug fixes. New (and very modest) C++ interface. Library module overhauls by Andrei Alexandrescu. Brad Roberts is working behind the curtain to get phobos development much better organized. http://www.digitalmars.com/d/1.0/changelog.html http://ftp.digitalmars.com/dmd.1.022.zip http://www.digitalmars.com/d/changelog.html http://ftp.digitalmars.com/dmd.2.005.zip |
October 05, 2007 Re: DMD 1.022 and 2.005 releases | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Walter Bright a écrit :
> Bug fixes. New (and very modest) C++ interface. Library module overhauls by Andrei Alexandrescu. Brad Roberts is working behind the curtain to get phobos development much better organized.
>
> http://www.digitalmars.com/d/1.0/changelog.html
> http://ftp.digitalmars.com/dmd.1.022.zip
>
> http://www.digitalmars.com/d/changelog.html
> http://ftp.digitalmars.com/dmd.2.005.zip
Nice touch for adding write and writeln to std.stdio: naming consistency is important indeed.
Thanks,
renoX
|
October 05, 2007 Re: DMD 1.022 and 2.005 releases | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Walter Bright wrote:
> Bug fixes. New (and very modest) C++ interface. Library module overhauls by Andrei Alexandrescu. Brad Roberts is working behind the curtain to get phobos development much better organized.
And to think I just patched some code and makefiles last night to work around some of these bugs :-) Nice work!
On a semi-related note, a Tango release is planned for today. In fact, it's already packaged and ready to go. So I'll give DMD 1.022 support a look this evening and perhaps we'll re-release tomorrow if any changes are necessary. I have jury duty so I won't be able to get to it today.
Sean
|
October 05, 2007 Re: DMD 1.022 and 2.005 releases | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Walter Bright wrote:
> Bug fixes. New (and very modest) C++ interface. Library module overhauls by Andrei Alexandrescu. Brad Roberts is working behind the curtain to get phobos development much better organized.
>
> http://www.digitalmars.com/d/1.0/changelog.html
> http://ftp.digitalmars.com/dmd.1.022.zip
>
> http://www.digitalmars.com/d/changelog.html
> http://ftp.digitalmars.com/dmd.2.005.zip
neat!
maybe the docs for c++ interfacing should mention, that it requires a compatible c++ compiler to work (DMC or MSVC on windows and GCC 3.x on linux?).
|
October 05, 2007 Re: DMD 1.022 and 2.005 releases | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Walter Bright wrote: > Bug fixes. New (and very modest) C++ interface. Library module overhauls by Andrei Alexandrescu. Brad Roberts is working behind the curtain to get phobos development much better organized. > > http://www.digitalmars.com/d/1.0/changelog.html > http://ftp.digitalmars.com/dmd.1.022.zip > > http://www.digitalmars.com/d/changelog.html > http://ftp.digitalmars.com/dmd.2.005.zip C++, coool. --Typo from http://www.digitalmars.com/d/cpp_interface.html Use the limited ability described here to connect directly to C functions and classes. that should be c++ functions and classes. --To what extent does overloading work across C++/D? --Is dmc going to get an "extern(D)" extension? |
October 05, 2007 Re: DMD 1.022 and 2.005 releases | ||||
---|---|---|---|---|
| ||||
Posted in reply to BCS | BCS wrote: > --Typo from http://www.digitalmars.com/d/cpp_interface.html > > Use the limited ability described here to > connect directly to C functions and classes. > > that should be c++ functions and classes. Got it. > --To what extent does overloading work across C++/D? Don't know what you mean. > --Is dmc going to get an "extern(D)" extension? No. My experience with C++ extensions is that people won't use them, so they're a waste of time. There are other problems, too, like C++ has no notion of a module, so where's the D module name going to come from? |
October 05, 2007 Re: DMD 1.022 and 2.005 releases | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Walter Bright wrote: > BCS wrote: > >> --To what extent does overloading work across C++/D? > > > Don't know what you mean. > will this work? extern(c++) { int Foo(int i); int Foo(int* ip); } void bar() { int i; Foo(i); Foo(&i); } What about if there is a void Foo(int[] ia){...} // non extern(c++) Will that overload with the c++ functions? Can D define overloaded extern(c++) function for C++ to link with? >> --Is dmc going to get an "extern(D)" extension? > > > No. Shucks. |
October 05, 2007 Re: DMD 1.022 and 2.005 releases | ||||
---|---|---|---|---|
| ||||
Posted in reply to BCS | BCS wrote: > Walter Bright wrote: >> BCS wrote: >> >>> --To what extent does overloading work across C++/D? >> >> >> Don't know what you mean. >> > > will this work? > > extern(c++) Use a capital C. > { > int Foo(int i); > int Foo(int* ip); > } > > void bar() > { > int i; > Foo(i); > Foo(&i); > } Yes. > What about if there is a > > void Foo(int[] ia){...} // non extern(c++) > > Will that overload with the c++ functions? Yes. Just remember that the selection of function will follow D overloading rules, not C++ rules, even if the functions are labeled extern(C++). > Can D define overloaded extern(c++) function for C++ to link with? Yes. |
October 05, 2007 Re: DMD 1.022 and 2.005 releases | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | (moved from digitalmars.D.announce since I'm gonna guess that this will spawn a rather large thread)
On Fri, 5 Oct 2007, Walter Bright wrote:
> Bug fixes. New (and very modest) C++ interface. Library module overhauls by Andrei Alexandrescu. Brad Roberts is working behind the curtain to get phobos development much better organized.
In addition to better organized, over the next several releases of the 2.x compiler and it's associated runtime and phobos libraries, you can expect to see incremental work towards rationalizing a number of the differences between dmd's phobos, gdc's phobos, and tango's compiler runtime layers for dmd and gdc.
I'm not committing to a specific order or timeline at this point, just that the work has started. The unittest fixes in this release were a direct result of me getting my hands dirty.
More soon,
Brad
|
October 05, 2007 Re: DMD 1.022 and 2.005 releases | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | "Walter Bright" <newshound1@digitalmars.com> wrote in message news:fe5vv7$s07$1@digitalmars.com... > Bug fixes. New (and very modest) C++ interface. Library module overhauls by Andrei Alexandrescu. Brad Roberts is working behind the curtain to get phobos development much better organized. > > http://www.digitalmars.com/d/1.0/changelog.html > http://ftp.digitalmars.com/dmd.1.022.zip > > http://www.digitalmars.com/d/changelog.html > http://ftp.digitalmars.com/dmd.2.005.zip I've noticed a few things about cpp_interface.html: 1. `Strings are not 0 terminated in D. See "Data Type Compatibility" for more information about this. However, string literals in D are 0 terminated.` However, there's nothing specific about strings in the referenced section. 2. In Data Type Compatibility: no equivalent type & Is ref type not the D equivalent of this? 3. How about making it so that D dynamic array parameters become, on the C++ side, two parameters: length and pointer? Stewart. -- My e-mail address is valid but not my primary mailbox. Please keep replies on the 'group where everybody may benefit. |
Copyright © 1999-2021 by the D Language Foundation