Reimplementing the bulk of std.meta iteratively

Timon Gehr timon.gehr at gmx.ch
Wed Sep 30 23:17:27 UTC 2020


On 29.09.20 01:37, Stefan Koch wrote:
> On Monday, 28 September 2020 at 21:27:56 UTC, Timon Gehr wrote:
>> On 28.09.20 23:08, claptrap wrote:
>>> Instead of first class types
>>
>> (Stefan's type functions do not give you first-class types. A 
>> first-class type you could put in a runtime variable.)
> 
> That's true. At least as it stands right now.
> I _could_ give  the alias a physical form at runtime.
> (By doing the same thing that the reify template does (or rather will 
> eventually do), that is exporting _all_ the properties of the type into 
> an object)
> 
> However I am not actually sure what the use of this would be.
> All usage that I have seen, is in generating code, which is kindof 
> useless if it does not happen at compile time.
> 
> Perhaps there are others?

It's not a first-class type if you can't declare a variable of that 
type. If this does not work, it's not first-class, it's syntax sugar for 
reification:

type t = int;
auto f = (t x)=>x;


More information about the Digitalmars-d mailing list