Thursday, May 29, 2014

HHVM in 2014 - Notes

My Notes From: HHVM in 2014
https://joind.in/10623
HipHop Compiled PHP to C
JIT (Just In Time Compiler)
HPHPc is dead.
Runs anywhere on 64-bit x86 Linux
Plug and Pray.

Splat and Variadics Syntax

Easy to install on Ubunutu (Binaries!)
45 Dependancies

Working on making it more open source.
Pushing people toward FastCGI Drop in.

HHVM Bytecode Interpreter
Won't see any performance improvements on a Mac without JIT

"Repo Authoratative Mode" assumes no changes so you get 10% performance gain.

Large Complex codebases show great results.
Quicker response and more responses.

phpng is an official PHP JIT.

Politics of open sourcing
    Feedback from users
    Affect change in the market place
    Competition
    Cross pollination

Hack -> Google via hacklang/hack.lang
    Strict typing
    Type hinting
    Static analysics

Don't run Hack in strict because it'll say your code is BAD BAD BAD
Run in partial mode so it'll behave.
Change the syntax in your file by putting a comment after
Constructor arg promotion
    Removes a bit of boiler plate code.
Generics
    Placeholders for type are allowed
Collections
    Specialized array objects, not just an Array/Hash Table
    Frozen/Mutable
Async Functions
    Implementation isn't complete
    Parallelizing
XHtml for PHP
    Sees complete blocks of HTML as long as they are properly formatted/closed
    Don't need to use double quotes

HPHPd -> Debugger

Extensions
    Normally Messy
    You can write a HHVM extension in PHP
    You can write parts of an HHVM extension in C++ because blurring lines is fun.

PHP is Edgecase hell due to lack of a spec.
Compatibility layer for PECL extensions.
No Name Parameters

No comments:

Post a Comment