Ich sehe Code oft wie die folgende Zeile in ATS:Was bedeutet g0ofg1?
val xs = g0ofg1(xs)
Die Funktion g0ofg1 sieht aus wie eine Art Casting. Was macht es eigentlich?
Ich sehe Code oft wie die folgende Zeile in ATS:Was bedeutet g0ofg1?
val xs = g0ofg1(xs)
Die Funktion g0ofg1 sieht aus wie eine Art Casting. Was macht es eigentlich?
Dies ist ein überladenes Symbol.
In ATS gibt es viele Typen, für die eine indizierte und eine nicht indexierte Variante existiert.
int(i)
(für einige i
von Art int
) und int
. Beide Typen sind für Ganzzahlen, aber erstere wird durch int
sort indiziert.string
(nur ein String) und string(n)
(Länge indizierten String)g0ofg1
ist für eine indizierte Typs in eine nicht-indizierte einer Umwandlung. Da es sich um eine Castfn handelt, sind mit dieser Operation keine Laufzeitkosten verbunden.
g1ofg0
ist für in die andere Richtung gehen: von nicht indiziert zu indiziertem Typ.