페북이 만든 Hack lang 모습.


파이프연산자를 쓴 코드


<?hh
$x = vec[
2,1,3] |> Vecmap($$, $a ==> $a * $a) // $$ with value vec[2,1,3] |> Vecsort($$); // $$ with value vec[4,1,9]

당시 페이스북이 가졌던 불만 느린 속도, 정적타입체크기능 없음, 함수이름 일관성




페북이 만든 Hack lang 의 비동기 함수를 쓴 코드


<?hh

use namespace HHLibVec; async function do_cpu_work(): Awaitable<void> { print("Start CPU work "); $a = 0; $b = 1; $list = vec[$a, $b]; for ($i = 0; $i < 1000; ++$i) { $c = $a + $b; $list[] = $c; $a = $b; $b = $c; } print("End CPU work "); } async function do_sleep(): Awaitable<void> { print("Start sleep "); sleep(1); print("End sleep "); } async function run(): Awaitable<void> { print("Start of main() "); await Vecrom_async(vec[do_cpu_work(), do_sleep()]); print("End of main() "); } <<__EntryPoint>> function main(): void { HHAsiojoin(run()); }