Skip to content

Comment on RustgreSQLparent

Comments

By your own admission, what you are asking for would require dependent typing. I am hugely in favor of rust eventually acquiring such capability, but it would be a huge change, and there are reasons why dependent typing hasn't hit mainstream languages yet.

what you are asking for would require dependent typing.

I know nothing about Rust, but you might find Oleg Kiselyov's: "Eliminating Array Bound Checking through Non-Dependent Types" interesting.

http://okmij.org/ftp/Haskell/eliminating-array-bound-check.l...

You may also like:

http://okmij.org/ftp/Haskell/number-parameterized-types.pdf

http://okmij.org/ftp/Computation/resource-aware-prog/tfp.pdf

If that is what I think it is, see https://docs.rs/indexing for something similar, crafted from invariance over higher-ranked lifetimes, instead of types.

I don't think Rust can ever replicate the Haskell implementation identically (if we had HRTB over types), as type parametrism is gone (see: specialization RFC). However, lifetime parametrism serves a similar role in Rust, and lifetimes are closer to a concept of "instance" than types.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.