|
1959 | 1959 | ..no_provenance
|
1960 | 1960 | (code#text value))))
|
1961 | 1961 |
|
1962 |
| -(the' .public UnQuote |
| 1962 | +(the' .private UnQuote |
1963 | 1963 | Type
|
1964 | 1964 | {#Named [..prelude "UnQuote"]
|
1965 | 1965 | {#Nominal ".Macro/UnQuote" (.list#)}})
|
1966 | 1966 |
|
1967 |
| -(the' .public (unquote it) |
| 1967 | +(the' .private (unquote it) |
1968 | 1968 | (-> Macro
|
1969 | 1969 | UnQuote)
|
1970 | 1970 | (.as# (-> Macro UnQuote) it))
|
1971 | 1971 |
|
1972 |
| -(the' .public (unquote_macro it) |
| 1972 | +(the' .private (unquote_macro it) |
1973 | 1973 | (-> UnQuote
|
1974 | 1974 | Macro')
|
1975 | 1975 | (.as# (-> UnQuote Macro') it))
|
1976 | 1976 |
|
1977 |
| -(the' .public Spliced_UnQuote |
| 1977 | +(the' .private Spliced_UnQuote |
1978 | 1978 | Type
|
1979 | 1979 | {#Named [..prelude "Spliced_UnQuote"]
|
1980 | 1980 | {#Nominal ".Macro/Spliced_UnQuote" (.list#)}})
|
1981 | 1981 |
|
1982 |
| -(the' .public (spliced_unquote it) |
| 1982 | +(the' .private (spliced_unquote it) |
1983 | 1983 | (-> Macro
|
1984 | 1984 | Spliced_UnQuote)
|
1985 | 1985 | (.as# (-> Macro Spliced_UnQuote) it))
|
1986 | 1986 |
|
1987 |
| -(the' .public (spliced_unquote_macro it) |
| 1987 | +(the' .private (spliced_unquote_macro it) |
1988 | 1988 | (-> Spliced_UnQuote
|
1989 | 1989 | Macro')
|
1990 | 1990 | (.as# (-> Spliced_UnQuote Macro') it))
|
|
2998 | 2998 |
|
2999 | 2999 | [[?#variant #Variant]
|
3000 | 3000 | [?#tuple #Tuple]
|
3001 |
| - [?#form #Form]] |
3002 |
| - ) |
| 3001 | + [?#form #Form]]) |
3003 | 3002 |
|
3004 | 3003 | (the' .private (?#binding tape)
|
3005 | 3004 | ($ Projection (And Text Code))
|
|
3065 | 3064 | [[?#bit Bit #Bit]
|
3066 | 3065 | [?#natural Natural #Natural]
|
3067 | 3066 | [?#text Text #Text]
|
3068 |
| - [?#name Name #Name]] |
3069 |
| - ) |
| 3067 | + [?#name Name #Name]]) |
3070 | 3068 |
|
3071 | 3069 | (the' .private (?#this_name reference tape)
|
3072 | 3070 | (-> Name
|
|
3365 | 3363 | (monad#each meta#monad normal_type parameters))])
|
3366 | 3364 | (meta#return lux (type_reification abstraction parameters))))
|
3367 | 3365 |
|
3368 |
| -(the' .public type_must_have_singular_expansion |
3369 |
| - Error |
3370 |
| - "The expansion of the type-syntax has to yield a single element.") |
3371 |
| - |
3372 | 3366 | (the' .private (expanded_type_reification normal_type @ binding parameters)
|
3373 | 3367 | (-> (-> Code ($ Meta Code)) Provenance Name ($ List Code)
|
3374 | 3368 | ($ Meta Code))
|
|
3383 | 3377 | (meta#return lux (` (..type (, singular))))
|
3384 | 3378 |
|
3385 | 3379 | else
|
3386 |
| - (meta#failure ..type_must_have_singular_expansion))) |
| 3380 | + (meta#failure "The expansion of the type-syntax has to yield a single element."))) |
3387 | 3381 |
|
3388 | 3382 | {#None}
|
3389 | 3383 | ((normal_type_reification normal_type {#Name @ binding} parameters) lux))))
|
|
3597 | 3591 | <side>))]
|
3598 | 3592 |
|
3599 | 3593 | [[product#left left]
|
3600 |
| - [product#right right]] |
3601 |
| - ) |
| 3594 | + [product#right right]]) |
3602 | 3595 |
|
3603 | 3596 | (the' .private (generated_name prefix state)
|
3604 | 3597 | (-> Text
|
|
4067 | 4060 | (` <nullary>))))))]
|
4068 | 4061 |
|
4069 | 4062 | [[0b (if (, pre) 1b (, post)) or]
|
4070 |
| - [1b (if (, pre) (, post) 0b) and]] |
4071 |
| - ) |
| 4063 | + [1b (if (, pre) (, post) 0b) and]]) |
4072 | 4064 |
|
4073 | 4065 | ... https://en.wikipedia.org/wiki/Halting_problem
|
4074 | 4066 | (the .public (halt! message)
|
|
4317 | 4309 | {#None}
|
4318 | 4310 | {#Left "Not expecting any type."}))))
|
4319 | 4311 |
|
4320 |
| -(the \n |
4321 |
| - Text |
4322 |
| - (.int_char# +10)) |
4323 |
| - |
4324 |
| -(the (provenance#as it) |
4325 |
| - (-> Provenance |
4326 |
| - Text) |
4327 |
| - (let [... https://en.wikipedia.org/wiki/Delimiter |
4328 |
| - delimiter "," |
4329 |
| - [file line column] it] |
4330 |
| - (text "@" |
4331 |
| - (text#as file) delimiter |
4332 |
| - (natural#as line) delimiter |
4333 |
| - (natural#as column)))) |
4334 |
| - |
4335 |
| -(the (provenance#with provenance error) |
4336 |
| - (-> Provenance |
4337 |
| - (Change Text)) |
4338 |
| - (text (provenance#as provenance) \n |
4339 |
| - error)) |
4340 |
| - |
4341 |
| -(the provenance#here |
4342 |
| - (macro (_ tokens compiler) |
4343 |
| - (when tokens |
4344 |
| - (list) |
4345 |
| - (let [[..#info _ |
4346 |
| - ..#source _ |
4347 |
| - ..#current_module _ |
4348 |
| - ..#modules _ |
4349 |
| - ..#scopes _ |
4350 |
| - ..#type_context _ |
4351 |
| - ..#seed _ |
4352 |
| - ..#expected _ |
4353 |
| - ..#provenance provenance |
4354 |
| - ..#eval _] compiler |
4355 |
| - [.#module module .#line line .#column column] provenance] |
4356 |
| - {#Right [compiler |
4357 |
| - (list (` (.is .Provenance |
4358 |
| - [.#module (, {..#Text ..provenance#dummy module}) |
4359 |
| - .#line (, {..#Natural ..provenance#dummy line}) |
4360 |
| - .#column (, {..#Natural ..provenance#dummy column})])))]}) |
4361 |
| - |
4362 |
| - _ |
4363 |
| - {#Left ..wrong_syntax}))) |
4364 |
| - |
4365 |
| -(the .public invalid_implementation_member |
4366 |
| - Error |
4367 |
| - (provenance#with (provenance#here) |
4368 |
| - "Invalid implementation member.")) |
4369 |
| - |
4370 | 4312 | (the .public implementation
|
4371 | 4313 | (macro (_ tokens)
|
4372 | 4314 | (with_monad meta#monad
|
|
4399 | 4341 | (pure (list tag value))
|
4400 | 4342 |
|
4401 | 4343 | _
|
4402 |
| - (failure (text "Unknown implementation member: " slot_name))) |
| 4344 | + (failure (text "Unknown member of implementation: " slot_name))) |
4403 | 4345 |
|
4404 | 4346 | _
|
4405 |
| - (failure ..invalid_implementation_member)))) |
| 4347 | + (failure "Invalid member of implementation.")))) |
4406 | 4348 | (list#conjoint tokens'))]
|
4407 | 4349 | (pure (list (code#tuple (list#conjoint members)))))))
|
4408 | 4350 |
|
|
4459 | 4401 | (?#and ?#simple_global_declaration
|
4460 | 4402 | ?#any))
|
4461 | 4403 |
|
4462 |
| -(the .public improper_type_definition |
4463 |
| - Error |
4464 |
| - (provenance#with (provenance#here) |
4465 |
| - "Improper type definition syntax.")) |
4466 |
| - |
4467 | 4404 | (the (declaration_of_type it)
|
4468 | 4405 | (-> Code
|
4469 | 4406 | (Meta [Code (Maybe (Either (List Text) (List Text)))]))
|
|
4479 | 4416 | (meta#pure [type {#Some {#Left tags}}])
|
4480 | 4417 |
|
4481 | 4418 | {#None}
|
4482 |
| - (failure ..improper_type_definition)) |
| 4419 | + (failure ..wrong_syntax)) |
4483 | 4420 |
|
4484 | 4421 | (list type {#Tuple _ slots})
|
4485 | 4422 | (when (?#value slots (?#some ?#text))
|
4486 | 4423 | {#Some slots}
|
4487 | 4424 | (meta#pure [type {#Some {#Right slots}}])
|
4488 | 4425 |
|
4489 | 4426 | {#None}
|
4490 |
| - (failure ..improper_type_definition)) |
| 4427 | + (failure ..wrong_syntax)) |
4491 | 4428 |
|
4492 | 4429 | (list type)
|
4493 | 4430 | (meta#pure [it {#None}])
|
4494 | 4431 |
|
4495 | 4432 | _
|
4496 |
| - (failure ..improper_type_definition))) |
| 4433 | + (failure ..wrong_syntax))) |
4497 | 4434 |
|
4498 | 4435 | else
|
4499 | 4436 | (meta#pure [it {#None}])))
|
|
4771 | 4708 | (.text_size# input))]
|
4772 | 4709 | (.text_clip# after_offset after_length input))))))
|
4773 | 4710 |
|
| 4711 | +(the \n |
| 4712 | + Text |
| 4713 | + (.int_char# +10)) |
| 4714 | + |
4774 | 4715 | (the (absolute_module_name nested? relative_root module)
|
4775 | 4716 | (-> Bit Text Text
|
4776 | 4717 | (Meta Text))
|
|
5390 | 5331 | {#None}
|
5391 | 5332 | (failure ..wrong_syntax))))
|
5392 | 5333 |
|
5393 |
| -(the (imported_by? import_name module_name) |
5394 |
| - (-> Text Text |
5395 |
| - (Meta Bit)) |
5396 |
| - (with_monad meta#monad |
5397 |
| - [module (module module_name) |
5398 |
| - .let [[..#module_hash _ ..#module_aliases _ ..#definitions _ ..#imports imports ..#module_state _] module]] |
5399 |
| - (pure (list#member? imports import_name)))) |
5400 |
| - |
5401 |
| -(the .public refer |
| 5334 | +(the refer |
5402 | 5335 | (macro (_ tokens)
|
5403 | 5336 | (when (?#value tokens
|
5404 | 5337 | (all ?#and
|
|
5662 | 5595 | (|>> (<extension> 1)))]
|
5663 | 5596 |
|
5664 | 5597 | [[++ .i64_+#]
|
5665 |
| - [-- .i64_-#]] |
5666 |
| - ) |
| 5598 | + [-- .i64_-#]]) |
5667 | 5599 |
|
5668 | 5600 | (the (interleaved left right)
|
5669 | 5601 | (for_any (_ it)
|
|
5829 | 5761 | _
|
5830 | 5762 | (failure ..wrong_syntax))))
|
5831 | 5763 |
|
| 5764 | +(the (provenance#as it) |
| 5765 | + (-> Provenance |
| 5766 | + Text) |
| 5767 | + (let [... https://en.wikipedia.org/wiki/Delimiter |
| 5768 | + delimiter "," |
| 5769 | + [file line column] it] |
| 5770 | + (text "@" |
| 5771 | + (text#as file) delimiter |
| 5772 | + (natural#as line) delimiter |
| 5773 | + (natural#as column)))) |
| 5774 | + |
5832 | 5775 | (the .public undefined
|
5833 | 5776 | (let [provenance (is (Meta Provenance)
|
5834 | 5777 | (function (_ compiler)
|
|
5945 | 5888 | [[i64 ..I64]
|
5946 | 5889 | [natural ..Natural]
|
5947 | 5890 | [integer ..Integer]
|
5948 |
| - [revolution ..Revolution]] |
5949 |
| - ) |
| 5891 | + [revolution ..Revolution]]) |
5950 | 5892 |
|
5951 | 5893 | (the .public character
|
5952 | 5894 | (macro (_ tokens compiler)
|
|
5993 | 5935 | [c++ "C++"]
|
5994 | 5936 | [common_lisp "Common Lisp"]
|
5995 | 5937 | [php "PHP"]
|
5996 |
| - [r "R"]] |
5997 |
| - ) |
| 5938 | + [r "R"]]) |
5998 | 5939 |
|
5999 | 5940 | (the .public for
|
6000 | 5941 | (let [target (is (Meta Target)
|
|
6219 | 6160 | [[Analysis]
|
6220 | 6161 | [Synthesis]
|
6221 | 6162 | [Translation]
|
6222 |
| - [Declaration]] |
6223 |
| - ) |
| 6163 | + [Declaration]]) |
6224 | 6164 |
|
6225 | 6165 | (the .public alias
|
6226 | 6166 | (macro (_ tokens)
|
|
0 commit comments