There are Pony packages for several popular editors.
- Visual Studio: VS pony
- Visual Studio Code: Pony Language Colorizer
There is currently no support for popular IDEs like Eclipse or IntelliJ.
The Pony compiler can handle all of the work of building and linking Pony programs. If anything more complex is needed the most common solution is to use a Makefile. There's a Gradle plugin as well.
Pony programs are compiled into native code using
ponyc. The compiler is based on LLVM.
The recommended method for installing Pony on supported systems is to use
There are installation instructions for other systems.
The Pony compiler can create a debug build of a program that works with lldb (it also works with gdb, but that has been less tested). Here's the Pony LLDB Cheatsheet. You can set breakpoints and inspect variables. The pony-lldb extension makes it a little easier to inspect things like strings and arrays.
corral is the recommended dependency manager. It replaces
stable, the old dependency manager.
The standard library ships with a unit testing framework. It should look pretty familiar if you've used other unit testing frameworks. There are lots of unit tests for the standard library packages, so you can look at those as examples (here's the tests for the option parser).
There's also a property based testing system if you're into that kind of thing.
The Pony compiler is pretty flexible about where to find things. Packages are mapped on to directories, but files within those directories can contain any number of classes and can use any name that ends in
There's a project called Library Project Starter that can be used to set up a Pony project with some basic files for version control, CI, and documentation. The Pony Standard Library Style Guide includes recommendations for file naming.
Pony supports package- and class-level doc strings. The compiler can then use these to generate documentation. The standard library documentation uses this system.
The main resource for learning Pony is the Pony Tutorial.