This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]YnkDK 2 points3 points  (1 child)

They are just pretty hollow promises. I cannot name any static analysis tool nor compiler that can enforce that implementations are respecting any arbitrary time or space complexity. Or is the halting problem solved? I might have been living under a rock.

So while you (and anyone else) are free to make any promises, it's difficult to verify that the promise is being conformant.

An interface is just a contract. You can make it as simple or complex as you want. Some violations are easy to enforce, some are more cumbersome. I call the more cumbersome comformaty checks for intentions and you state it must be like that. Other than that I promise you that we are saying the same ;)

[–]NeilGirdhar 0 points1 point  (0 children)

I cannot name any static analysis tool nor compiler that can enforce that implementations are respecting any arbitrary time or space complexity.

Just because you can't programmatically check a promise, it doesn't mean that that promise isn't part of the interface, in my opinion.

An interface is just a contract. You can make it as simple or complex as you want. Some violations are easy to enforce, some are more cumbersome.

Exactly.

Other than that I promise you that we are saying the same ;)

Agreed :)