Spec#, nullables and more
Bruno Medeiros
brunodomedeiros+spam at com.gmail
Fri Nov 26 09:44:04 PST 2010
On 06/11/2010 20:02, Walter Bright wrote:
> Jérôme M. Berger wrote:
>> I thought D was supposed to be a pragmatic language? All this means
>> is that we need a compromise between what would be ideal (being able
>> to represent arbitrary conditions and have them statically enforced
>> at compile time) and what can be realistically achieved. Your
>> argument seems to be: "since there are cases which we won't be able
>> to handle, let's not do anything at all, not even the cases which we
>> could handle".
>
>
> The idea is to find a way to solve this in the general case, not the
> specific case of non-null pointers. Then we've got dynamite in our
> hands, rather than warmed over toast.
Indeed. I agree that the use-case for non-null has some value, and we
should try to look for a general solution, instead of adding specific
syntax for it.
Not only because D seems very close to be able to do this with library
code only, but also because solving this in the general way might allow
plenty of other interesting type specifications to be defined. For
example, with those changes to struct behavior, I wonder how close we
could be to directly specify a type such as Java's wildcards (the <?
extends Foo> thingy), that would work with arrays or other containers.
--
Bruno Medeiros - Software Engineer
More information about the Digitalmars-d
mailing list