Paradigms | Multi-paradigm: imperative, functional, object-oriented, procedural, reflective |
---|---|
Family | PHP |
Designed by | Julien Verlaguet, Alok Menghrajani, Drew Paroski, others[1] |
Developer | Meta Platforms |
First appeared | 2014 |
Stable release | |
Typing discipline | Static, dynamic, weak, gradual |
OS | Cross-platform |
License | MIT[2] |
Website | hacklang |
Influenced by | |
PHP, OCaml, Java, C#, Scala, Haskell |
Hack is a programming language for the HipHop Virtual Machine (HHVM), created by Meta (formerly Facebook) as a dialect of PHP. The language implementation is free and open-source software, licensed under an MIT License.[2][3][4]
Hack allows use of both dynamic typing and static typing. This kind of a type system is called gradual typing, which is also implemented in other programming languages such as ActionScript.[5] Hack's type system allows types to be specified for function arguments, function return values, and class properties; however, types of local variables are always inferred and cannot be specified.[3][6]