Skip to content

Latest commit

 

History

History
120 lines (64 loc) · 1.91 KB

tuple.adoc

File metadata and controls

120 lines (64 loc) · 1.91 KB

Datový typ tuple!

1. Úvodem

Datový typ tuple! (entice) se používá k prezentaci rgb a rgba hodnot pro barvy, ip adresy a čísla verzí.

Entice (tuple) musí mít alespoň dvě desetinné tečky a obsahovat pozitivní hodnoty v rozsahu 0 - 255.

2. Literálová skladba

Sekvence tří až dvanácti pozitivních celých čísel, oddělených desetinnými tečkami.

1.2.3

255.255.255.0

1.2.3.4.5.6.7.8.9.10.11.12

3. Vytvoření

Hodnoty typu tuple! lze vytvořit s použitím literálové skladby nebo za běhu programu konstruktorem make či konverzí to.

>> make tuple! [1 2 3]
== 1.2.3
>> to tuple! [42]
== 42.0.0
>> to-tuple "1.2.3.4"
== 1.2.3.4

4. Komparace

Pro hodnotu typu pair! lze být použít všechny komparátory: =, ==, <>, >, <, >=, <=, =?. Navíc jsou podporovány funkce min a max.

Pro funkce min a max musejí mít entice stejný počet členů.

>> min 1.2.3 4.5.6
== 1.2.3

>> max 1.2.3 4.5.6
== 4.5.6

5. Aritmetika

Entice lze použít v operátorech, funkcích a akcích +, add, -, subtract, *, multiply, /, divide, % a remainder. Pokud výsledek aritmetické operace padne mimo rozsah 0 - 255, je okleštěn na mezích 0 či 255.

>> gray
== 128.128.128

>> gray * 2
== 255.255.255

6. Testování hodnot

K ověření, zda hodnota je typu tuple! použijeme funkci tuple?.

>> tuple? 42
== false

>> tuple? 1.2.3
== true

Funkce type? vrací datový typ zadané hodnoty.

>> type? 1.2.3
== tuple!

7. Předdefinovaná slova

7.1. Akce

add, subtract, multiply, divide, remainder, and~, or~, xor~, length?, pick, reverse

7.2. Funkce

first, second, third, fourth, fifth, to-tuple, tuple?, mod, modulo

7.3. Nativní funkce (native!)

zero?

7.4. Operátory

+, -, *, /, %, and, or, xor