Core
package
This package provides common algorithms and data structures.
Install
{
"dependencies": {
"Core": "pen:///core"
}
}
Core'Bit
module
This module provides bitwise operations.
Most functions defined in this module take arguments of 64-bit integers.
They can be converted from and into integers represented in IEEE-754 of a
number
type.
Types
No types are defined.
Functions
And
Calculate bitwise "and" given two 64-bit integers.
\(x number, y number) number
Or
Calculate bitwise "or" given two 64-bit integers.
\(x number, y number) number
Xor
Calculate bitwise exclusive-"or" given two 64-bit integers.
\(x number, y number) number
Not
Calculate bitwise "not" given two 64-bit integers.
\(x number) number
LeftShift
Calculate unsigned left shift given a 64-bit integer.
\(x number, n number) number
RightShift
Calculate unsigned right shift given a 64-bit integer.
\(x number, n number) number
ToInteger64
Convert an integer in IEEE-754 to a 64-bit integer.
\(x number) number
FromInteger64
Convert a 64-bit integer to an integer in IEEE-754.
\(x number) number
Core'Boolean
module
This module provides common boolean operations.
Types
No types are defined.
Functions
Any
Return true if any of given booleans are true or false otherwise.
\(bs [boolean]) boolean
All
Return true if all of given booleans are true or false otherwise.
\(bs [boolean]) boolean
Core'List
module
This module provides common list operations.
Types
No types are defined.
Functions
Length
Calculate a length of a list.
\(xs [any]) number
First
Get the first element in a list. If a list is empty, it returns a fallback value.
\(xs [any], fallback any) any
Last
Get the last element in a list. If a list is empty, it returns a fallback value.
\(xs [any], fallback any) any
ToNumbers
Convert a list of an any
type to one of a number
type skipping non-number
types.
\(xs [any]) [number]
ToStrings
Convert a list of an any
type to one of a string
type skipping non-string
types.
\(xs [any]) [string]
ToBooleans
Convert a list of an any
type to one of a boolean
type skipping non-boolean
types.
\(xs [any]) [boolean]
Core'Number
module
This module provides common number operations.
Types
No types are defined.
Functions
String
Convert a number into its string representation.
\(x number) string
Sum
Sum up numbers.
\(xs [number]) number
Remainder
Calculate a remainder.
\(dividend number, divisor number) number
Power
Calculate a power.
\(base number, exponent number) number
SquareRoot
Calculate a square root.
\(x number) number
Sequence
Create a list of numbers from 1 to a maximum value.
\(maximum number) [number]
Range
Create a list of numbers from a minimum to a maximum.
\(minimum number, maximum number) [number]
IsNan
Check if a number is NaN.
\(x number) boolean
Ceil
Calculate a ceil value.
\(x number) number
Floor
Calculate a floor value.
\(x number) number
Nan
NaN
\() number
Infinity
Infinity
\() number
Minimum
Calculate a minimum.
\(x number, y number) number
Maximum
Calculate a maximum.
\(x number, y number) number
Core'String
module
This module provides common string operations.
Types
No types are defined.
Functions
Concatenate
Concatenate strings.
\(strings [string]) string
Join
Join strings with a separator.
\(strings [string], separator string) string
HasPrefix
Check if a string has a prefix.
\(s string, prefix string) boolean
Core'String'Byte
module
This module provides operations for strings as byte arrays.
Types
No types are defined.
Functions
Length
Return a length of a string.
\(s string) number
Slice
Slice a string.
\(s string, start number, end number) string
Core'String'Byte'View
module
This module provides views of strings as byte arrays. By using those views, you can apply operations to strings without copying them.
Types
View
A view of a string
type View {
# ...
}
Functions
New
Create a view of a string.
\(s string) View
Viewee
Get an original string.
\(v View) string
Start
Get a start index of a view.
\(v View) number
End
Get an end index of a view.
\(v View) number
HasPrefix
Check if a string has a prefix.
\(v View, s string) boolean
Length
Get a length of a view.
\(v View) number
Seek
Move a start index forward.
\(v View, n number) View
Slice
Slice a view.
\(v View, start number, end number) View
ToString
Convert a view into a string.
\(v View) string
Core'String'Utf8
module
This module provides operations for strings encoded in UTF-8.
Types
No types are defined.
Functions
Length
Return a length of a string.
\(s string) number
Slice
Slice a string.
\(s string, start number, end number) string