All checks were successful
/ test (pull_request) Successful in 16s
* Adds associate, conj, multiply, negate, subtract, indistinguishable * As a result equal is now supported * Adds a check for recursive loops in resolve (a key/signature method depending on itself
8 lines
299 B
JavaScript
8 lines
299 B
JavaScript
import {Returns} from '#core/Type.js'
|
|
import {match, Any} from '#core/TypePatterns.js'
|
|
|
|
export const conj = match(Any, (_math, T) => Returns(T, a => a))
|
|
export const square = match(Any, (math, T) => {
|
|
const mult = math.multiply.resolve([T, T])
|
|
return Returns(mult.returns, a => mult(a, a))
|
|
})
|