Am Sun, 08 Dec 2013 09:59:55 +0100 schrieb "seany" <se...@uni-bonn.de>:
> O_O > > with that knowledge, would also be possible to define new types > (not aliases, but new encapsulated types) representing things > such as Graph, Ring, Topology, surreal number, etc? All these Result types are simply structs. Structs with template parameters. Your question is a bit vague. You will not be able to use D algorithms on anything but "consecutive items of the same type" as I worte in my other post, if that is the question. Other than that the Result types are just: struct Result(T) { ... } You can call them "templated struct" or "generic type". Many languages offer this in some way including C++, Java, Delphi and C#. If you have used any of those programming languages before you are probably already familiar with the concept. In the most simple form you can use them to create type specialized containers, graphs or this: struct Matrix(T, size_t width, size_t height) if (isNumeric!T) { ... } (A matrix with a fixed width and height that can be used if T is a built-in integer or floating point type.) -- Marco