-
Notifications
You must be signed in to change notification settings - Fork 40
Closed
Labels
Description
In folder ./libraries we have multiple standard libraries. One for each backend. These overlap partially. The goal is to share code between them.
We identify 5 categories of definitions:
- Backend-specific extern definitions (e.g. DOM manipulation)
- General extern definitions (e.g.
Int,infixAdd) - Definitions that are extern for performance reasons or for quicker implementation (e.g.
Regex) - Definitions using only general extern definitions (e.g.
repeat) - Definitions using no extern definitions (e.g.
List)
Category (1) can never be shared. Category (5) can always be shared. Category (4) can be shared as long as the used extern definitions have roughly the same semantics. Therefore we would like some kind of informal specification for those in category (2). Category (3) I would like to forbid.
We should come up with a concrete organizational scheme that separates these categories. We should also come up with concrete rules for extending the standard libraries and write these down.