ludic/examples/rejected
Orkuncakilkaya b1ccaf08bd feat(lang): ports - port Clock { ... } in a module, bind Clock { ... } in the app
A port is a record of function values a module calls through
(Clock.now()) without naming the module that answers. A port used and
never bound, a bind missing a required member or naming one the port
lacks, and a second bind are refused; the binder must see the port, and
what it binds is checked from its own file. Reseed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-25 04:20:12 +03:00
..
data feat(lang): L9 resource files - registry ... from 2026-09-24 14:00:20 +03:00
port_clock feat(lang): ports - port Clock { ... } in a module, bind Clock { ... } in the app 2026-09-25 04:20:12 +03:00
private_bank feat(lang): L3 module scope - module, export, friend module 2026-09-24 00:52:12 +03:00
private_kit feat(lang): L5 generic records and functions 2026-09-24 02:21:15 +03:00
uses_cycle feat(lang): module NAME uses A, B - a module reaches only the modules it names 2026-09-25 04:06:45 +03:00
uses_valley feat(lang): module NAME uses A, B - a module reaches only the modules it names 2026-09-25 04:06:45 +03:00
alias_arity.ludic feat(lang): L6 namespaces declared in Ludic - alias 2026-09-24 02:40:57 +03:00
alias_twice.ludic feat(lang): L6 namespaces declared in Ludic - alias 2026-09-24 02:40:57 +03:00
builtin_name.ludic fix(lang): a function named like a compiler built-in is refused; reseed 2026-09-24 22:09:29 +03:00
component_no_template.ludic feat(lang): UI components as files - component Name { ... } beside Name.xml and Name.lss 2026-09-24 16:50:12 +03:00
default_missing.ludic feat(lang): L11 views and templates - the UI is markup, not code 2026-09-24 15:58:47 +03:00
default_unknown.ludic feat(lang): L11 views and templates - the UI is markup, not code 2026-09-24 15:58:47 +03:00
duplicate_const.ludic feat(lang): a name is defined once, a local once per block, and a result is always returned 2026-09-23 23:55:20 +03:00
duplicate_property.ludic feat(lang): a name is defined once, a local once per block, and a result is always returned 2026-09-23 23:55:20 +03:00
every_error.ludic feat(lang): L4 type checker between parse and emit 2026-09-24 01:34:49 +03:00
float_into_int.ludic feat(lang): L4 type checker between parse and emit 2026-09-24 01:34:49 +03:00
fn_type_mismatch.ludic feat(lang): functions are values (L2), and render3d takes its scene as callbacks 2026-09-24 00:27:26 +03:00
friend_scope.ludic feat(lang): friend module lab of fishing, data - a friend of the modules it names 2026-09-25 04:12:47 +03:00
generic_arity.ludic feat(lang): L5 generic records and functions 2026-09-24 02:21:15 +03:00
generic_mismatch.ludic feat(lang): L5 generic records and functions 2026-09-24 02:21:15 +03:00
generic_unbound.ludic feat(lang): L5 generic records and functions 2026-09-24 02:21:15 +03:00
missing_return.ludic feat(lang): a name is defined once, a local once per block, and a result is always returned 2026-09-23 23:55:20 +03:00
port_missing.ludic feat(lang): ports - port Clock { ... } in a module, bind Clock { ... } in the app 2026-09-25 04:20:12 +03:00
port_private.ludic feat(lang): ports - port Clock { ... } in a module, bind Clock { ... } in the app 2026-09-25 04:20:12 +03:00
port_twice.ludic feat(lang): ports - port Clock { ... } in a module, bind Clock { ... } in the app 2026-09-25 04:20:12 +03:00
port_unbound.ludic feat(lang): ports - port Clock { ... } in a module, bind Clock { ... } in the app 2026-09-25 04:20:12 +03:00
positional_after_named.ludic feat(lang): L11 views and templates - the UI is markup, not code 2026-09-24 15:58:47 +03:00
private_generic.ludic feat(lang): L5 generic records and functions 2026-09-24 02:21:15 +03:00
private_module.ludic feat(lang): L3 module scope - module, export, friend module 2026-09-24 00:52:12 +03:00
record_as_text.ludic feat(lang): L4 type checker between parse and emit 2026-09-24 01:34:49 +03:00
record_mixup.ludic feat(lang): L4 type checker between parse and emit 2026-09-24 01:34:49 +03:00
redeclared_local.ludic feat(lang): a name is defined once, a local once per block, and a result is always returned 2026-09-23 23:55:20 +03:00
registry_field.ludic feat(lang): L8 registries by declaration - registry and def 2026-09-24 13:34:51 +03:00
registry_twice.ludic feat(lang): L8 registries by declaration - registry and def 2026-09-24 13:34:51 +03:00
registry_unknown.ludic feat(lang): L8 registries by declaration - registry and def 2026-09-24 13:34:51 +03:00
resource_field.ludic feat(lang): L9 resource files - registry ... from 2026-09-24 14:00:20 +03:00
resource_missing.ludic feat(lang): L9 resource files - registry ... from 2026-09-24 14:00:20 +03:00
text_plus_number.ludic feat(lang): L4 type checker between parse and emit 2026-09-24 01:34:49 +03:00
uses_cycle.ludic feat(lang): module NAME uses A, B - a module reaches only the modules it names 2026-09-25 04:06:45 +03:00
uses_missing.ludic feat(lang): module NAME uses A, B - a module reaches only the modules it names 2026-09-25 04:06:45 +03:00
view_untyped.ludic feat(lang): L11 views and templates - the UI is markup, not code 2026-09-24 15:58:47 +03:00
view_without_ui.ludic feat(lang): L11 views and templates - the UI is markup, not code 2026-09-24 15:58:47 +03:00
wrong_arity.ludic feat(lang): L4 type checker between parse and emit 2026-09-24 01:34:49 +03:00