8.2 KiB
Acknowledgements
TypePHP is built on decades of work by language designers, compiler engineers, runtime developers, standards contributors, maintainers, and open-source communities. The project would not be possible without the foundations they created and continue to improve.
Project developers and contributors
Core development
- Tianfeng Han (matyhtf) — primary developer and maintainer, responsible for the overall compiler architecture, PHP-to-C++ lowering, type system, runtime integration, build system, and project direction.
Contributors recorded in the Git history
The following people are identified from the author metadata in the repository. Aliases belonging to the same person have been combined. The order follows the amount of recorded repository activity only for consistency; it is not a ranking of the value of anyone's contribution.
| Contributor | Areas of contribution |
|---|---|
| Yurun | PHP semantic compatibility, type and reference correctness, traits, generators, class behavior, Windows support, and compiler diagnostics |
| NathanFreeman | Strict types, Zend VM call safety, request initialization, dynamic call validation, and control-flow correctness |
| hafung | Optimizer correctness, strict built-in calls, and safe evaluation of compound array-offset operations |
| Lucas Raineri Giandon (Giandonn) | Optimizer safety and PHP-compatible behavior for argument unpacking, count(), intval(), and class_exists() |
| Alessio Giacobbe | Parser, name resolution, control flow, trait composition, and preservation of expression side effects |
| yangweijie | Compilation caching and performance work, build-related improvements, documentation, and real-project examples |
| Lorenzo Dessimoni (FunkyOz) | English documentation for intentionally incompatible PHP features |
| Pratik Bhujel | Portable float literal generation, including INF and NAN handling |
| 原点 (yuan-dian) | gen_stub union-type name generation and Zend type metadata correctness |
Git author metadata cannot capture every form of contribution. Reviewers, issue reporters, testers, documentation writers, and community members will be added as the acknowledgement record is expanded.
Community and ecosystem contributors
Contributions to TypePHP are not limited to commits. Testing real projects, reporting and reproducing bugs, creating derivative open-source projects, writing technical content, and introducing TypePHP to a wider audience all help the project grow. We also thank:
- 夏枫
- Tinywan (开源技术小栈)
- A000001
- 青青子衿
- 大星
- 原点
- Elijah
- 小尹
- 杨维杰
- Albert Chen
- Nuno Maduro (
nunomaduro) — for sharing TypePHP with the wider PHP community on Twitter/X.
Some people in this section also appear in the Git contributor list. They are mentioned again here to recognize their testing, community, ecosystem, or outreach contributions separately from authored commits.
Foundational projects and standards
We would especially like to thank:
-
GCC — the GNU Compiler Collection
GCC compiles and optimizes the C++ generated by TypePHP on GNU/Linux and other supported targets. Its mature optimizer, linker integration, platform support, and diagnostics are fundamental to TypePHP's AOT toolchain.
-
LLVM and Clang provide a modern C++ compiler infrastructure, high-quality diagnostics, optimization technology, and tooling used across TypePHP's supported platforms, including macOS and WebAssembly-related toolchains.
-
MSVC provides the native C++ compiler, linker, runtime libraries, and Windows SDK integration that make the TypePHP toolchain and generated applications available on Windows.
-
ISO C++ Standards Committee (WG21)
TypePHP generates portable modern C++. We thank the members and contributors of WG21 for specifying, reviewing, and evolving the C++ language and standard library on which the generated code and PHPX abstractions rely.
-
PHP and the PHP core development team
PHP defines the language semantics that TypePHP implements. The PHP core developers maintain the Zend Engine, runtime APIs, standard library, compatibility behavior, source code, and test suite that serve as the authoritative reference for TypePHP.
-
PHP-Parser, created by Nikita Popov
PHP-Parser provides the reliable PHP parser and abstract syntax tree on which TypePHP's analysis, validation, lowering, and C++ code generation pipeline is built. We thank Nikita Popov and every PHP-Parser contributor and maintainer.
-
GMP — the GNU Multiple Precision Arithmetic Library
GMP provides the efficient arbitrary-precision integer arithmetic underlying TypePHP's
BigIntsupport and related high-precision integer operations. -
MPFR provides reliable multiple-precision floating-point arithmetic with well-defined rounding. It forms the numerical foundation of TypePHP's
BigFloatsupport. -
mpdecimal provides correctly rounded arbitrary-precision decimal arithmetic. Its C and C++ libraries form the numerical foundation of TypePHP's
Decimalsupport.
Supporting libraries and development tools
TypePHP also benefits from many focused open-source projects used by the compiler, command-line tools, build workflow, and quality-assurance process:
- PHPX provides the C++ abstractions over the Zend API used by generated programs and TypePHP's runtime integration.
- Composer provides dependency management,
autoloading, package distribution, and the
vendor/bincompiler entry point. - CLImate provides structured, readable command-line output and compiler diagnostics.
- TopSort provides topological sorting used to resolve declaration and dependency order.
- Symfony YAML parses TypePHP project configuration and WASI build configuration files.
- Symfony VarDumper supports readable inspection of compiler data structures during development and diagnostics.
- AnsiKit provides terminal styling and progress display helpers for compiler output.
- PHPUnit provides the unit and compiler code-generation test framework.
- PHPStan provides static analysis for the compiler's PHP implementation.
- PHP CS Fixer helps maintain a consistent PHP coding style across the project.
The PHP DOM and PCNTL extensions used by parts of the toolchain are included in our broader thanks to the PHP core and extension maintainers above.
We are grateful to all contributors to these projects, including those whose work is not individually named here. Their commitment to open standards, portable toolchains, language compatibility, and open-source software makes TypePHP possible.
The names and trademarks listed above belong to their respective owners. This acknowledgement expresses gratitude and does not imply endorsement of TypePHP by any listed project, organization, or contributor.