import { constructSymbol, eqSymbol, getName } from "../primitives/symbol.js"; import { Bool, SymbolT, Type } from "../primitives/types.js"; import { String } from "../structures/list.js"; import { typedFnType } from "../structures/types.js"; export const ModuleSymbol = {l:[ {i: SymbolT, t: Type}, ...typedFnType(constructSymbol, fnType => fnType (String) (SymbolT) ), ...typedFnType(getName, fnType => fnType (SymbolT) (String) ), ...typedFnType(eqSymbol, fnType => fnType(SymbolT, fnType(SymbolT, Bool))), ]};