874
edits
(filled out a bit of the package mgmt section, added more to code reuse bullet point) |
(→Philosophy: reworded code reuse section) |
||
| Line 13: | Line 13: | ||
* '''Test-Driven Development.''' cfx attempts to make writing tests as easy as possible, taking its inspiration from testing tools like [http://codespeak.net/py/dist/test/ py.test] and [http://code.google.com/p/python-nose/ nose]. It also aims to make test execution as fast as possible, so developers aren't wasting precious time waiting for their suites to complete. | * '''Test-Driven Development.''' cfx attempts to make writing tests as easy as possible, taking its inspiration from testing tools like [http://codespeak.net/py/dist/test/ py.test] and [http://code.google.com/p/python-nose/ nose]. It also aims to make test execution as fast as possible, so developers aren't wasting precious time waiting for their suites to complete. | ||
* '''Code Reuse.''' The packaging systems of Python and Narwhal make it easy to share and reuse other people's code. The Mozilla platform lacks such a system, which has historically made | * '''Code Reuse.''' The packaging systems of Python and Narwhal make it easy to share and reuse other people's code. The Mozilla platform lacks such a system, which has historically made reuse difficult: as a result, shared code tends to be in the form of "snippets" or single self-contained files. cfx attempts to resolve this problem, and in doing so inherits as much as it can from the [http://narwhaljs.org/packages-howto.html Narwhal package format] to maximize compatibility and reuse of CommonJS-compliant JavaScript code. | ||
* '''Developer Ergonomics.''' cfx uses Cuddlefish's introspection capabilities to provide full stack tracebacks when errors occur; it also provides facilities for making it easy to spot memory leaks, and generally tries to make writing production-quality code as hassle-free as possible. | * '''Developer Ergonomics.''' cfx uses Cuddlefish's introspection capabilities to provide full stack tracebacks when errors occur; it also provides facilities for making it easy to spot memory leaks, and generally tries to make writing production-quality code as hassle-free as possible. | ||
edits