]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.scl.runtime/scl/Prelude.md
Merge "Added effectful Kleisli composition to Prelude."
[simantics/platform.git] / bundles / org.simantics.scl.runtime / scl / Prelude.md
1 # Basic functions and operators
2
3 ## Booleans
4
5 ::data[Builtin/Boolean]
6 ::value[&&, ||, not, and, or, all, any, otherwise]
7
8 ## Comparison
9
10 ::class[Ord]
11 ::value[!=]
12 ::value[minimum, maximum, minimumBy, maximumBy, &<&]
13 ::value[isDigit, isFinite, isInfinite, isNaN]
14
15 ## Numeric functions
16
17 ::data[Builtin/Short, Builtin/Integer, Builtin/Long, Builtin/Float, Builtin/Double]
18 ::class[Additive, Ring, OrderedRing, Real, Integral]
19
20 # Data structures
21
22 ## Tuples
23
24 ::value[fst, snd, curry, uncurry, curry3, uncurry3, swap]
25
26 ## Maybe
27
28 ::data[Builtin/Maybe]
29 ::value[fromJust, fromMaybe, execJust, filterJust, orElse, elemMaybe]
30
31 ## Either
32
33 ::data[Either]
34 ::value[mapEither]
35
36 ## Lists
37
38 ::class[Sequence]
39 ::value[!, getList]
40 ::value[elem, elemIndex]
41 ::value[filter, concatMap]
42 ::value[foldl, foldl1, foldr]
43 ::value[unfoldl, unfoldr]
44 ::value[zip, zipWith, unzip]
45 ::value[sort, sortBy, sortWith]
46 ::value[index, indexBy, indexWith]
47 ::value[unique, uniqueBy]
48 ::value[tail, reverse, range, \\, deleteAllBy, for, forI, lookup, addList]
49 ::value[groupBy, intersect, findFirst]
50 ::value[singletonList]
51 ::value[group, groupWith]
52 ::value[mapFirst, mapMaybe, mapI]
53 ::value[build]
54 ::value[partition]
55 ::value[uniqueWith]
56 ::value[transpose]
57 ::value[takeWhile]
58
59 ## Strings
60
61 ::value[trim, splitString, indexOf, lastIndexOf, startsWith, endsWith, regionMatches, replaceString]
62 ::value[contains]
63 ::value[charAt]
64 ::value[isLetter, addChar, subChar]
65 ::value[intercalate]
66 ::value[string]
67 ::value[joinWithSeparator]
68 ::value[printWithSeparator]
69 ::value[split]
70
71 # Higher order programming
72
73 ## Functions
74
75 ::value[const, $, ., id, flip, ignore]
76
77 ## Functors
78
79 ::class[Functor, FunctorE]
80
81 ## Monads
82
83 ::class[Monad]
84 ::value[>>, >=>]
85 ::class[FunctorM]
86 ::value[repeatForever]
87 ::class[MonadZero]
88 ::value[guard]
89 ::class[MonadPlus, MonadOr]
90 ::value[ignoreM]
91 ::class[MonadE]
92 ::value[compE]
93 ::class[MonadZeroE]
94
95 # Side-effects 
96
97 ## Mutable references
98
99 ::data[Ref]
100 ::value[ref, getRef, :=]
101
102 ## Failure
103
104 ::value[Builtin/fail]
105
106 ## Control structures
107
108 ::value[while,forN]
109
110 ## Console
111
112 ::value[print, printString, printError, printErrorsAsNormalPrints, printingToFile]
113
114 ## Progress
115
116 ::value[didWork, checkInterrupted, isInterrupted]
117
118 ## UIDs
119
120 ::value[generateUID]
121
122 # Data
123
124 ## String conversion
125
126 ::class[Show]
127 ::value[<<]
128 ::data[Par]
129 ::class[Read]
130 ::value[toLowerCase, toUpperCase]
131
132 ## Other conversions
133
134 ::value[toDoubleArray, fromDoubleArray, arrayToList, listToArray]
135
136 ## Serialization
137
138 ::data[Builtin/Binding]
139 ::class[Builtin/Serializable]
140 ::value[Builtin/binding]
141
142 ## Typeable
143
144 ::data[Builtin/Type]
145 ::class[Builtin/Typeable]
146 ::value[Builtin/typeOf]
147
148 ## Dynamic
149
150 ::data[Dynamic]
151 ::value[toDynamic, fromDynamic]
152
153 # Exception handling
154
155 ::value[catch]
156
157 # Undocumented entities
158
159 ::undocumented[]