so funktioniert es
    
    
    func `*`[ArrSize: static[Natural], T](elems: array[ArrSize, T], times: 
static[Natural]): array[times *
    ArrSize, T] =
      for idx in 0 ..< times:
        for arrIdx, item in pairs(elems):
          result[idx * ArrSize + arrIdx] = item
    
    const test = [" 12 "] * 12
    
    echo test
    
    Run

>   * `typedesc` ist ein datentyp für typen als werte. Jeder Typ `T` hat einen 
> Typdescriptor vom Typ `typedesc[T]`.
>   * `typedesc` ohne parameter zu verwenden fügt implizit einen verborgenen 
> generischen parameter hinzu
>   * `static[T]` ist ein Typ für werte die zur compilezeit bekannt sind.
>   * static[T] zu verwenden füght auch einen verborgenen generischen parameter 
> hinzu, ein Typ, der genau diesen wert repräsentiert.
> 


Persönlich halte ich diese verborgenen generischen parameter für sehr 
irreführend. Ich könnte mich aber nicht dazu durchsetzten diesen Teil der 
Sprache expliziter zu gestalten.

Reply via email to