I expect they have plans to diverge Hack even further from PHP to improve it and thus they want to brake the chains of maintaining PHP compatibility so that they can achieve that more easily.
Announcement
Collapse
No announcement yet.
Facebook Releases HHVM 4.0 With PHP No Longer Supported
Collapse
X
-
Originally posted by wizard69 View PostSeriously why would any sane person use Facebook or technology coming from that company? When one tally’s up a list of evil companies Facebook will be very high on the list.
Originally posted by uid313 View PostWhat advantages does Hack have over PHP nowadays?
Does Facebook themselves even want to use Hack?
Wouldn't Facebook rather want to use something else like Go, Kotlin, C# or Python?
It seems nobody outside Facebook is really using Hack so why are they pursuing it?
I really think this is why languages like Typescript, Groovy, and Perl 6 are a great idea. Just hack (see what I did there?) something together to get your Minimum Viable Product into production, and then evolve it into something with good static type checks later. It also makes your language newbie-friendly, they can get started just playing with dynamically typed code first and then learn the static type system later without having to change languages.
Comment
-
Originally posted by Michael_S View PostHack isn't that different from PHP, even now, and adds optional type annotations that are checked. I think the two reasons Facebook is using Hack is that they have a colossal PHP codebase and they want some level of static type checking without rewriting the whole thing and better performance than regular PHP. The performance advantage is gone with PHP 7, but the type checking is still a value.
The Typed Properties 2.0 RFC was accepted with a vote of 70 in favor and one no vote. A 2/3 majority is required because typed properties is a language change. The typed property change is a PHP 7.4 proposal. Learn more about the new syntax and type-safe proposal for class properties.
Originally posted by Michael_S View PostFacebook might also have a full rewrite in Go, Kotlin, D, Haskell, etc... in progress, I have no idea, but Hack is probably their way to improve quality on the existing code while they wait for a rewrite to finish.
Originally posted by Michael_S View PostI really think this is why languages like Typescript, Groovy, and Perl 6 are a great idea. Just hack (see what I did there?) something together to get your Minimum Viable Product into production, and then evolve it into something with good static type checks later. It also makes your language newbie-friendly, they can get started just playing with dynamically typed code first and then learn the static type system later without having to change languages.
- Likes 1
Comment
-
Originally posted by uid313 View PostI guess Hack still have better type checking. But it seems the upcoming PHP 7.4 will have improved type checking.
https://laravel-news.com/php7-typed-properties
Originally posted by uid313 View PostA full rewrite wouldn't be needed. There are microservices. They use lots of React which consumes JSON, so the backend shouldn't matter.
Originally posted by uid313 View PostAh, you mean optional typing. Good point about optional typing. Python have support for it too (enforced at dev time by tools not at runtime).
- Likes 1
Comment
-
Originally posted by Michael_S View PostInteresting. I thought the Facebook server side code was pretty monolithic in PHP. Microservices certainly make sense in this context, I just didn't know they used them.
Originally posted by Michael_S View PostPython has everything. I'm not sure how Typescript enforces type annotations. I'm pretty sure Groovy and Perl 6 enforce them at runtime.
So the TypeScript compiler can enforce typing at compile time but then is no for them anymore at runtime.
You can also configure the TypeScript compiler with rules on how what to enforce and not. There is also the "any" type which can be used to represent any type.
- Likes 2
Comment
-
Originally posted by msotirov View PostI imagine they might feel a bit burned by supporting PHP as people basically "stole" their optimizations for PHP7 and then no one cared about HHVM
Comment
-
Originally posted by Michael_S View PostInteresting. I thought the Facebook server side code was pretty monolithic in PHP. Microservices certainly make sense in this context, I just didn't know they used them.
- Likes 1
Comment
-
Originally posted by uid313 View PostTypeScript transpiles into JavaScript.
So the TypeScript compiler can enforce typing at compile time but then is no for them anymore at runtime.
You can also configure the TypeScript compiler with rules on how what to enforce and not. There is also the "any" type which can be used to represent any type.
Comment
-
Originally posted by Delgarde View Post
Facebook have been around a long time now. Maybe ten years ago, in 2009, it was one big monolith, but it would be pretty surprising if that were still the case today...
- Likes 1
Comment
Comment