> That's just a "template" file, which I use search and replace in order to generate the three monomorphized go files.
They were using a separate codegen step (really just a sed run) to actually "do generics". In fact, that was the entire reason this thing was introduced[0], the structure originally used interface{} for its items.
The "generic" part was then moved to a `go_` file from which monomorphisations on bool, ArrayT and ScalarT got generated.
Also
> Go allows characters from the Canadian Aboriginal Syllabics for identifiers
I'd expect just about any language which supports unicode identifiers to allow this, as canadian aboriginal syllabics is a "normal" abugida, and its "textual" components are (properly) tagged as XID_Start and XID_Continue.
> That's just a "template" file, which I use search and replace in order to generate the three monomorphized go files.
They were using a separate codegen step (really just a sed run) to actually "do generics". In fact, that was the entire reason this thing was introduced[0], the structure originally used interface{} for its items.
The "generic" part was then moved to a `go_` file from which monomorphisations on bool, ArrayT and ScalarT got generated.
Also
> Go allows characters from the Canadian Aboriginal Syllabics for identifiers
I'd expect just about any language which supports unicode identifiers to allow this, as canadian aboriginal syllabics is a "normal" abugida, and its "textual" components are (properly) tagged as XID_Start and XID_Continue.
[0] https://github.com/google/enjarify/commit/55e8e65e681b15f026...