Skip to content

Instantly share code, notes, and snippets.

@AyaMorisawa
Created March 23, 2015 04:50
Show Gist options
  • Save AyaMorisawa/42d1aa0c30da176e9047 to your computer and use it in GitHub Desktop.
Save AyaMorisawa/42d1aa0c30da176e9047 to your computer and use it in GitHub Desktop.
LiveScript Operators Type Annotation

Number

Standard Math

(+) :: Number -> Number -> Number
(-) :: Number -> Number -> Number
(*) :: Number -> Number -> Number
(/) :: Number -> Number -> Number

Remainder

(%) :: Number -> Number -> Number
(%%) :: Number -> Number -> Number

Power

(**) :: Number -> Number -> Number
(^) :: Number -> Number -> Number

Decrements

(--) :: Number -> Number

Bitwise

(.&.) :: Number -> Number -> Number
(.|.) :: Number -> Number -> Number
(.^.) :: Number -> Number -> Number
(~) :: Number -> Number

Shift

(.<<.) :: Number -> Number -> Number
(.>>.) :: Number -> Number -> Number
(.>>>.) :: Number -> Number -> Number

Comparison

Strict

(==) :: a -> a -> Boolean
(!=) :: a -> a -> Boolean

Fuzzy

(~=) :: a -> a -> Boolean
(!~=) :: a -> a -> Boolean

Greater/Less Than

(<) :: Number -> Number -> Boolean
(>) :: Number -> Number -> Boolean
(<=) :: Number -> Number -> Boolean
(>=) :: Number -> Number -> Boolean

Minimum/Maximum

(>?) :: Number -> Number -> Number
(<?) :: Number -> Number -> Number

Logic

Basic

(&&) :: Boolean -> Boolean -> Boolean
(||) :: Boolean -> Boolean -> Boolean
(!) :: Boolean -> Boolean

Piping

(|>) :: a -> (a -> b) -> b
(<|) :: (a -> b) -> a -> b

Function

(<<) :: (b -> c) -> (a -> b) -> a -> c
(>>) :: (a -> b) -> (b -> c) -> a -> c

List

(++) :: [a] -> [a] -> [a]

Existence

(?) :: a -> Boolean

Object

Copy

(<<<) :: Object -> Object -> Object
(<<<<) :: Object -> Object -> Object

Property Access

(.) :: {a: b} -> a -> b

Assignment

(=) :: a -> b -> b
(:=) :: a -> b -> b

Operators

(*=) :: Number -> Number -> Number
(/=) :: Number -> Number -> Number
(%=) :: Number -> Number -> Number
(%%=) :: Number -> Number -> Number
(<?=) :: Number -> Number -> Number
(>?=) :: Number -> Number -> Number
(**=) :: Number -> Number -> Number
(++=) :: [a] -> [a] -> [a]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment