Hacker News new | ask | show | jobs
by masklinn 2214 days ago
You're forgetting the important bit:

> 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...