On Tue, Jun 5, 2018 at 4:23 PM Rudolph Gottesheim <r.gottesh...@loot.at>
wrote:

> There's always a lot of talk about types in the PHP community.
> Specifically, many developers want property types, generics, function
> signature types, union and intersection types, and more. Those talks
> (and RFCs) always end with the same result: "We can't do it because
> performance issues."
>
> Has there ever been a discussion about adding some of those features
> syntactically, but ignoring them during runtime? At least until someone
> finds a performant way to check them at runtime. That way we could have
> advanced type checking in our editors at least.
>
> The idea will sound familiar to TypeScript users. It works great for
> that language.
>
> I'm excited to hear your opinions.
>

DbC style has no performance issue at all. In addition, you can perform
much better validation than simple type checks.

function f($username) {
  assert(is_string($username) && preg_match('\\A[a-z]\\z', $username);
  ....
}

--
Yasuo Ohgaki
yohg...@ohgaki.net

Reply via email to