compile time class introspection?

Hasan Aljudy hasan.aljudy at gmail.com
Fri Jun 15 19:32:33 PDT 2007



Bent Rasmussen wrote:
> It's impossible to generalize that all powerful techniques should be 
> language features. I think you have to be more pragmatic than that. How 
> foundational is a technique. What is gained by making it a language 
> feature. Those kinds of questions need to be asked first, in my humble 
> oppinion.

Well yeah, naturally, but I think reflection is one of those techniques 
that should be a language feature, IMHO.

> 
> 
> "Hasan Aljudy" <hasan.aljudy at gmail.com> wrote in message 
> news:f4tf70$2afa$1 at digitalmars.com...
>>
>>
>> janderson wrote:
>>> Serg Kovrov wrote:
>>>> Beginning of the thread is in digitalmars.D.learn
>>>>
>>>> Chris Nicholson-Sauls wrote:
>>>>> This is an important thing about D that probably deserves a long 
>>>>> and extensive tutorial somewhere...  Many of its cooler features 
>>>>> aren't really features at all, but side-effects of other more 
>>>>> general features.  So, to reuse this same example, no D doesn't 
>>>>> have a way to ask if a class or structure has a particular method.  
>>>>> D /does/ have a way to check for valid types... which, 
>>>>> incidentally, non-existant members are invalid types.  So, voila, a 
>>>>> side-effect of checking its type is that you confirm it exists.
>>>>>
>>>>> There are others... a plethora, even.  Walter is fond of lots of 
>>>>> small things that can be put together to achieve amazing things -- 
>>>>> and I don't strictly disagree -- but it isn't usually obvious what 
>>>>> you can do with those nifty little gadgets.
>>>>>
>>>>> -- Chris Nicholson-Sauls
>>>>
>>>> This is really sad that it turned this way. As I understand Walter 
>>>> himself criticizes such approach:
>>>>
>>>> "Many useful aspects of C++ templates have been discovered rather 
>>>> than designed."
>>>>
>>>
>>> I think its great in C++ that you can do more with it then indented. 
>>> Why limit the programmers imagination?  Sure some hacks should be 
>>> program features, like the static_assert.  However, I think its great 
>>> that you could have static assets in C/++ at all.  In fact many of 
>>> the "improvements" D has are from some great ideas programmers 
>>> "hacked" into C++.
>>>
>>
>> IMHO:
>>
>> That's not too bad when your experimenting.
>>
>> But it's really really bad for a programming language that is being 
>> used for commercial applications. 
> 



More information about the Digitalmars-d mailing list