- [x] Generate object code for each module in a .diamond-cache folder - [x] Each function should be prefixed with its module id unless it is builtin - [x] Add pass to check interface functions implementations - [x] Check functions and with what types generic functions are used - [x] Generate builtin functions - [ ] Generate functions - [ ] Generate generic functions