The Clay language

I saw this first in a Hacker News post and haven't seen it mentioned here yet, so I hope this is of interest:

The Clay programming language describes itself as a language designed for generic programming. It also aims to be a systems programming language, which I suppose puts it into competition with BitC, Rust and some of the other languages which have been discussed here lately.

There isn't any documentation on the site beyond a few examples, but there's a very informative thread on reddit where the language author responds to lots of questions.

Some points of interest are that it includes a goto statement and explicitly doesn't do garbage collection. The generic programming aspect is interesting too I think, but I'm too much of a layman to evaluate it: the author claims it does a different kind of type inference to Hindley-Milner and the compiler generates type-specialised code. Besides that, I think it looks like a nicely pragmatic combination of well-known ideas, but what do you all think?

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Systems Programming

It seems unclear how much control a Clay developer has over representation of variants, which seems important for systems programming at the hardware interfaces (where constant factors tend to matter).

I'd also like to see better support for parallelism from our 'systems programming languages'. And maybe some better built-in support for integration with GPU pipelines and FPGAs. Support for concurrency would also be useful, though perhaps less critical than parallelism.