LightClick is a linearly typed orchestration language for Systems-on-a-Chip Designs that supports lightweight dependent types in the form of domain-specific indexed-types.
Designs represent the specification of modules at the same level of design and we capture:
- various port attributes at the type level:
- port direction (input/output/inout)
- wire sensitivity (high/low, rising/falling, or insensitive)
- signal usage intent (clocking, reset, interrupt, control, information, general)