https://github.com/ponylang/ponyc
Pony is an open-source, actor-model, capabilities-secure, high performance programming language
https://github.com/ponylang/ponyc
actor-model pony-language pony-source ponyc ponylang programming-language
Last synced: 12 days ago
JSON representation
Pony is an open-source, actor-model, capabilities-secure, high performance programming language
- Host: GitHub
- URL: https://github.com/ponylang/ponyc
- Owner: ponylang
- License: bsd-2-clause
- Created: 2012-11-13T07:38:25.000Z (about 13 years ago)
- Default Branch: main
- Last Pushed: 2026-01-29T00:11:47.000Z (14 days ago)
- Last Synced: 2026-01-29T10:50:16.294Z (14 days ago)
- Topics: actor-model, pony-language, pony-source, ponyc, ponylang, programming-language
- Language: C
- Homepage: http://www.ponylang.io
- Size: 19.4 MB
- Stars: 6,021
- Watchers: 131
- Forks: 428
- Open Issues: 272
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Support: SUPPORT.md
Awesome Lists containing this project
- anything_about_game - ponyc - source, object-oriented, actor-model, capabilities-secure, high-performance programming language (Embed-Script/VM/ / Lua)
- awesome-programming-languages - Pony - Pony is a compiled, actor-model, capabilities-secure, high performance programming language that prevents concurrency mistakes such as data races and deadlocks by design with reasonable syntactic defaults. Its FFI allows Pony to interface with other languages. (Uncategorized / Uncategorized)
- StarryDivineSky - ponylang/ponyc - secure),专注于**高性能**和**内存安全**。它的核心设计理念是通过 Actor 模型实现并发编程,避免数据竞争问题,同时利用能力安全机制确保程序的权限控制,防止未授权的资源访问。Pony 的独特之处在于其无需垃圾回收(garbage-free)的设计,通过栈分配和手动内存管理优化性能,同时结合高效的垃圾回收机制,确保内存使用安全且无碎片化。该语言适用于需要高吞吐量和低延迟的场景,如实时系统、分布式应用和高并发服务。 Pony 的 Actor 模型允许每个对象(Actor)独立处理消息,通过异步通信实现并行执行,避免传统多线程编程中的锁和同步开销。能力安全模型通过将权限绑定到对象,限制对象对资源的访问,从而防止常见的安全漏洞,如越权访问或内存泄漏。Pony 的内存安全特性通过编译时检查和运行时监控实现,确保所有内存操作合法,无需依赖运行时垃圾回收机制,从而降低延迟并提高性能。 Pony 的高性能得益于其底层优化,例如使用栈分配减少内存分配开销,并通过高效的垃圾回收算法(如分代回收)减少暂停时间。此外,Pony 支持与 C/C++ 的互操作性,允许开发者调用外部库,同时提供丰富的标准库支持。该项目适用于开发高可靠性的系统,如网络服务器、实时数据处理或嵌入式系统,尤其适合对性能和安全性要求较高的场景。 Pony 的编译器(ponyc)支持跨平台编译,生成高效可执行文件,同时提供详细的文档和社区支持。开发者可通过 GitHub 获取源码并参与贡献,进一步完善语言功能和工具链。总之,Pony 通过结合 Actor 模型、能力安全和高性能设计,为现代软件开发提供了一种安全、高效且易于扩展的解决方案。 (计算机编程_数据结构与算法 / 资源传输下载)
- jimsghstars - ponylang/ponyc - Pony is an open-source, actor-model, capabilities-secure, high performance programming language (C)
- awesome-repositories - ponylang/ponyc - Pony is an open-source, actor-model, capabilities-secure, high performance programming language (C)
- awesome - ponyc - source, actor-model, capabilities-secure, high performance programming language (1. language / 1.9 pony)
README
# Pony
Pony is an open-source, object-oriented, actor-model, capabilities-secure, high-performance programming language.
## Status
Pony is still pre-1.0 and as such, semi-regularly introduces breaking changes. These changes are usually fairly easy to adapt to. Applications written in Pony are currently used in production environments.
## Supported platforms
### Operating Systems
* Linux
* macOS
* Windows 11
### CPUs
* Full support for 64-bit platforms
* x86, ARM and RISC-V CPUs only
* Partial support for 32-bit platforms
* The `arm` and `armhf` architectures are tested via CI (Continuous
Integration testing)
## Best effort platforms
Best effort platforms mean that there is support for the platform in the codebase but, we don't have any testing for the platform. We won't intentionally break a best-effort platform or remove support for it from the codebase, at the same time, we do make no effort to maintain it. When you go build a "best effort platform" from source, you might find it doesn't build. We welcome thoughtful pull requests to bring the platform up-to-date.
* DragonFlyBSD (x86 only)
* FreeBSD (x86 only)
* Windows 10 (x86 only)
## More Information
* [Installation](INSTALL.md)
* [Building from source](BUILD.md)
* [Docker images](INSTALL_DOCKER.md)
* [Editor support](EDITORS.md)
## Resources
* [Learn more about Pony](https://www.ponylang.io/discover/)
* [Start learning Pony](https://www.ponylang.io/learn/)
* [Getting help](https://www.ponylang.io/learn/#getting-help)
* [Try Pony online](https://playground.ponylang.io)
* [Frequently Asked Questions](https://www.ponylang.io/faq/)
* [Community](https://www.ponylang.io/community/)
## Contributing
We welcome contributions to Pony. Please read through [CONTRIBUTING.md](CONTRIBUTING.md) for details on how to get started.
## License
Pony is distributed under the terms of the [2-Clause BSD License](https://opensource.org/licenses/BSD-2-Clause). See [LICENSE](LICENSE) for details.