July 14, 2003 Re: D User Poll | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrew Edwards | "Andrew Edwards" <edwardsac@spamfreeusa.com> a écrit dans le message news: be3pk6$22d6$1@digitaldaemon.com... > 1) What's your name? Nicolas Repiquet > 2) What's your programming experience? five years > 3) What's your D knowledge? Beginner > 4) What programming language are you most familiar with? Java > 5) What's your main operating system? Win2000 > 6) Which type of application you want to develop in D? Not planned yet. Probably libraries first. > 7) Top Three Wishes for D? - An official library repository, like Perl's CPAN. - Tulpes, handy for multiple return values and so on. - Sucess of course. D rulez. -- Nicolas Repiquet |
July 15, 2003 Re: D User Poll | ||||
---|---|---|---|---|
| ||||
Posted in reply to Carlos Santander B. | "Carlos Santander B." <carlos8294@msn.com> wrote in message news:be4ceh$2kja$1@digitaldaemon.com... > | 7) Top Three Wishes for D? > More acceptance Everyone can help with this by simply talking about D here and in the regular internet newsgroups. Also, if you have some web space, put up a web page on D! |
July 15, 2003 Re: D User Poll | ||||
---|---|---|---|---|
| ||||
Posted in reply to Burton Radons | "Burton Radons" <loth@users.sourceforge.net> wrote in message news:be4ctn$2l48$1@digitaldaemon.com... > - A useable template syntax that is integrated into the language as full-blown genericism, rather than appearing, like C++, to be attached on top of it. In particular, it must be better suited for generic arguments to methods than either C++ or D are. I'm not sure what you mean here. |
July 19, 2003 Re: D User Poll | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter | "Walter" <walter@digitalmars.com> escribió en el mensaje news:bf1vgj$ql1$2@digitaldaemon.com... | | Everyone can help with this by simply talking about D here and in the | regular internet newsgroups. Also, if you have some web space, put up a web | page on D! | I tried to do that for a while, but it seems to me like people aren't interested in trying new things anymore. But I still do what I can: last week I had an assignment about garbage collection in Java. Well, it kind of went like this: "GC was first invented for Lisp... Other major languages that use GC are Java, D, Prolog, Eiffel...". Eventually this has to stop being a community, and start being something bigger, something really big, so I agree that we all should contribute with its growing. ————————————————————————— Carlos Santander "Walter" <walter@digitalmars.com> escribió en el mensaje news:bf1vgj$ql1$2@digitaldaemon.com... | | Everyone can help with this by simply talking about D here and in the | regular internet newsgroups. Also, if you have some web space, put up a web | page on D! | I tried to do that for a while, but it seems to me like people aren't interested in trying new things anymore. But I still do what I can: last week I had an assignment about garbage collection in Java. Well, it kind of went like this: "GC was first invented for Lisp... Other major languages that use GC are Java, D, Prolog, Eiffel...". Eventually this has to stop being a community, and start being something bigger, something really big, so I agree that we all should contribute with its growing. ————————————————————————— Carlos Santander |
August 01, 2003 Re: D User Poll | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter | Walter wrote:
> "Burton Radons" <loth@users.sourceforge.net> wrote in message
> news:be4ctn$2l48$1@digitaldaemon.com...
>
>>- A useable template syntax that is integrated into the language as
>>full-blown genericism, rather than appearing, like C++, to be attached
>>on top of it. In particular, it must be better suited for generic
>>arguments to methods than either C++ or D are.
>
>
> I'm not sure what you mean here.
You stated once that one of the tests of a templating syntax is how it
implements min and max. In D this would be:
template Min (T)
{
T min (T a, T b)
{
return a > b ? b : a;
}
}
int c = instance Min (int).min (a, b);
I'm going to overspecify for the next two languages for the purpose of
fair comparison. In C++ this would be:
template <class T>
T min (T a, T b)
{
return a > b ? b : a;
}
int c = min <int> (a, b);
In both cases, templating is a separate syntax attached on the language
with as minimal mixing as possible to get the job done. An integrated
syntax makes it part of the language; one is my own:
$T min (TypeInfo $T, $T a, $T b)
{
return a > b ? b : a;
}
int c = min (int, a, b);
D is definitely the loser here; I have only used the feature a few
times (not for lack of wanting), but every time there's been this
identifier repetition symbolic of an unnecessary abstraction. C++ can
do implicit instantiation (by arbitrarily altering the syntax based on usage), but still attaches templating on like the macro processing syntax it was. An integrated syntax allows me to program with one consistent methodology.
C++ template libraries are the most illegible things I've ever had the
misfortune of dealing with. D template libraries will be worse (at least, when they finally come around) because of even more syntactual baggage; so much so that it lessens the variety of applications they can be pragmatically used with. Just take C++ templates, make them take much more typing but be less capable in important ways, and you have D templates.
|
August 02, 2003 Re: D User Poll | ||||
---|---|---|---|---|
| ||||
Posted in reply to Burton Radons | "Burton Radons" <loth@users.sourceforge.net> wrote in message news:bgemr5$19q5$1@digitaldaemon.com... > Walter wrote: > > > "Burton Radons" <loth@users.sourceforge.net> wrote in message news:be4ctn$2l48$1@digitaldaemon.com... > > > >>- A useable template syntax that is integrated into the language as full-blown genericism, rather than appearing, like C++, to be attached on top of it. In particular, it must be better suited for generic arguments to methods than either C++ or D are. > > > > > > I'm not sure what you mean here. > > You stated once that one of the tests of a templating syntax is how it implements min and max. In D this would be: > > template Min (T) > { > T min (T a, T b) > { > return a > b ? b : a; > } > } > > int c = instance Min (int).min (a, b); > > I'm going to overspecify for the next two languages for the purpose of fair comparison. In C++ this would be: > > template <class T> > T min (T a, T b) > { > return a > b ? b : a; > } > > int c = min <int> (a, b); > > In both cases, templating is a separate syntax attached on the language with as minimal mixing as possible to get the job done. An integrated syntax makes it part of the language; one is my own: > > $T min (TypeInfo $T, $T a, $T b) > { > return a > b ? b : a; > } > > int c = min (int, a, b); > > D is definitely the loser here; I have only used the feature a few times (not for lack of wanting), but every time there's been this identifier repetition symbolic of an unnecessary abstraction. C++ can do implicit instantiation (by arbitrarily altering the syntax based on usage), but still attaches templating on like the macro processing syntax it was. An integrated syntax allows me to program with one consistent methodology. > > C++ template libraries are the most illegible things I've ever had the misfortune of dealing with. D template libraries will be worse (at least, when they finally come around) because of even more syntactual baggage; so much so that it lessens the variety of applications they can be pragmatically used with. Just take C++ templates, make them take much more typing but be less capable in important ways, and you have D templates. > > Just take C++ templates, make them take > much more typing but be less capable in important ways How would they be less capable, and what do we want to do about it ? A Petition maybe (only half joking :) ), walter what do you think ? Charles |
August 02, 2003 Re: D User Poll | ||||
---|---|---|---|---|
| ||||
Posted in reply to Charles Sanders | Charles Sanders wrote:
> "Burton Radons" <loth@users.sourceforge.net> wrote in message
> news:bgemr5$19q5$1@digitaldaemon.com...
>
>>Just take C++ templates, make them take
>>much more typing but be less capable in important ways
>
>
> How would they be less capable, and what do we want to do about it ? A
> Petition maybe (only half joking :) ), walter what do you think ?
This is an old argument - my counter-proposal actually predates the templates implementation (a year old next week) by a couple months. Search for the subjects "Templates and matrices", "Serious deficiencies in template mechanism", "C and/or C++ in D" (this one for my proposal), and "Generics in D".
I'd make some tweaks to my proposal now; "$T" instead of "TypeInfo $T" (Craig Black was right - "foo [int $T]" is redundant but better), and C++-style specialisations don't work because no argument can be said to be the owner so constraints should be separated.
Capability-wise there's no implicit instantiation in D templates, default arguments, template methods, or a huge set of hard-to-comprehend abilities. I don't want them; my proposal isn't as flexible in some ways. I just want generics, not a template system.
|
August 04, 2003 Re: D User Poll | ||||
---|---|---|---|---|
| ||||
Posted in reply to Burton Radons | On Fri, 01 Aug 2003 14:46:40 -0700, Burton Radons <loth@users.sourceforge.net> wrote: > Walter wrote: > In both cases, templating is a separate syntax attached on the language with as minimal mixing as possible to get the job done. An integrated syntax makes it part of the language; one is my own: > > $T min (TypeInfo $T, $T a, $T b) > { > return a > b ? b : a; > } > > int c = min (int, a, b); > It can't be a template -- its readable! The mere mention of templates was enough to convince me to not use D. Karl Bochert |
August 04, 2003 Re: D User Poll | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrew Edwards | "Andrew Edwards" <edwardsac@spamfreeusa.com> ha scritto nel messaggio news:be3pk6$22d6$1@digitaldaemon.com... > 1) What's your name? Riccardo De Agostini > 2) What's your programming experience? 12 years as a professional; 19 since I first put together some lines of Basic on a Commodore 64 (have rarely played games on it since :-) ). > 3) What's your D knowledge? Beginner > 4) What programming language are you most familiar with? Delphi, Borland Pascal, Visual Basic, C, C++ excluding templates/STL/RTTI, JavaScript, some assembler (mostly Motorola 68k, some Intel too). > 5) What's your main operating system? WinXP as development host; DOS, Win98, WinXP as targets. > 6) Which type of application you want to develop in D? Industrial and home automation with embedded systems. > 7) Top Three Wishes for D? 1) DOS extender support (so I can actually use it at work). 2) Last few language issues: properties, bitfields, better syntax for constructors /destructors / super. 3) A standard library, built "the D way" and meant to eliminate the need for the C RTL. Ric |
August 04, 2003 Re: D User Poll | ||||
---|---|---|---|---|
| ||||
Posted in reply to Karl Bochert | That's funny! Yes, generics don't have to be a hideous boil on the face of the language. ;) Sean "Karl Bochert" <kbochert@copper.net> wrote in message news:1103_1059967426@bose... > On Fri, 01 Aug 2003 14:46:40 -0700, Burton Radons <loth@users.sourceforge.net> wrote: > > Walter wrote: > > > In both cases, templating is a separate syntax attached on the language with as minimal mixing as possible to get the job done. An integrated syntax makes it part of the language; one is my own: > > > > $T min (TypeInfo $T, $T a, $T b) > > { > > return a > b ? b : a; > > } > > > > int c = min (int, a, b); > > > > It can't be a template -- its readable! > > The mere mention of templates was enough to convince me > to not use D. > > Karl Bochert |
Copyright © 1999-2021 by the D Language Foundation