Erlang Debugger vs PonyDebugger
Erlang Debugger
erlang.orgPonyDebugger
github.comSide by side
| Figure | Erlang Debugger | PonyDebugger |
|---|---|---|
| Price from | — | Free |
| Free plan | — | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | — | Yes |
| Windows | Yes | — |
| macOS | Yes | Yes |
| Linux | Yes | — |
| iOS | — | Yes |
| Self-hosted | — | Yes |
| Plans published | 0 | 1 |
| Spec score · Debuggers | 7.6 (#14) | 8.2 (#7) |
| License | Erlang/OTP has been released under Apache License 2.0 since OTP 18.0. | PonyDebugger and its gateway are licensed under the Apache License, Version 2.0. |
| Purpose | Erlang Debugger is a graphical interface for the Erlang interpreter used to debug and test Erlang programs. | PonyDebugger is a client library and gateway server that uses Chrome Developer Tools to debug an application's network traffic and managed object contexts. |
Plans
In their own words
Erlang Debugger
Erlang Debugger is a graphical interface for debugging and testing Erlang programs. Developers can set line, conditional, and function breakpoints, then attach to a process to step, continue, finish, skip, or stop its execution. The Attach Process window displays variable bindings and allows editing values when they can be represented in the running system. A Monitor window shows interpreted modules and information about processes running interpreted code. Debugger can record interpreted function calls for stack navigation, though recording tail calls uses more memory and can slow execution when many tail-recursive calls are involved. Modules need debug information, for example from compilation with `erlc +debug_info`. Global mode can interpret code on known nodes and display their processes, but the documentation warns that using global mode on multiple network nodes can cause interference. The debugger is listed for Linux, macOS, and Windows, and Erlang/OTP releases from version 18.0 onward use the Apache License 2.0. Debugging has runtime tradeoffs: interpreted code runs slower, each debugged process adds a meta process, and timers or tracing may behave differently.
PonyDebugger
PonyDebugger is a free remote debugging toolset for native iOS apps. An app-side client connects to a gateway server, which presents debugging views through Chrome Developer Tools. Network traffic can be routed through a proxy for inspection in Chrome’s Network tools, including HTTPS; the client automatically proxies requests using NSURLConnection and NSURLSession. Developers can register managed object contexts and browse Core Data entities and objects, though these stores are read-only. The view hierarchy display can highlight matching views, edit displayed attributes, and remove nodes. Remote logging supports text and recursive inspection of object properties. Setup requires integrating the client and connecting it to the gateway; the quick start requires Xcode Command Line Tools. The gateway serves Chrome Developer Tools on localhost port 9000 by default, and can be configured for access from another device or computer. The iOS client requires iOS 5.0 or above. The project is Apache License 2.0; its README warns that automatic forwarding of all network traffic swizzles private API methods and should be limited to debug builds.