2023-09-01 15:52:44 +00:00
|
|
|
import { typed } from '../generic/infer'
|
|
|
|
|
2023-09-01 16:21:45 +00:00
|
|
|
export const square = typed('square', '__infer__', <T>(dep: {
|
2023-09-01 15:52:44 +00:00
|
|
|
multiply: (a: T, b: T) => T,
|
|
|
|
unaryMinus: (x: T) => T, // just for the experiment
|
|
|
|
}): (a: T) => T =>
|
|
|
|
z => dep.multiply(z, z)
|
|
|
|
)
|