blob: fc93ec1bb9bc33696aaf023d8996d1368187bc22 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
(.require
[library
[lux (.except)
[abstract
[monad (.only do)]]
[data
["[0]" text (.use "[1]#[0]" hash)
["%" \\format (.only format)]]]
["[0]" meta (.only)
["[0]" code]
[macro
[syntax (.only syntax)]]
[type
["[0]" nominal (.except def)]]]]])
(nominal.def .public ID
Text
(def .public id
(-> ID Text)
(|>> representation))
(def .public custom
(-> Text ID)
(|>> abstraction))
(def .public generic
(syntax (_ [])
(do meta.monad
[module meta.current_module_name
id meta.seed]
(in (list (` (..custom (, (code.text (format "i" (%.nat_16 id)
"_" (%.nat_16 (text#hash module))))))))))))
)
|