=========
Debugging
=========
.. Modified: 2019-10-20/19:11-0400 btiffin
.. Copyright 2016 Brian Tiffin
.. This file is part of the Unicon Programming document
.. GPL 3.0+ :ref:`license`
.. image:: images/unicon.png
:align: center
.. only:: html
:ref:`genindex`
:floatright:`Unicon`
.. index:: debugging
.. _debugging:
Debugging Unicon
================
Unicon development is, in large part, an academic research effort. With later
releases, Unicon is adding features ready for industrial and commercial use,
but the seeds are in academia. This bodes well for debugging features, with
facilities available to quantize and analyze program correctness, performance
and aid in visualization of program structure and runtime characteristics.
.. image:: images/xkcd-1722-debugging.*
:align: center
:alt: XKCD debugging
.. only:: html
.. rst-class:: rightalign
*XKCD* http://xkcd.com/1722/ by Randall Munroe :ref:`CC BY-NC 2.5 `
.. only:: not html
*XKCD* http://xkcd.com/1722/ by Randall Munroe :ref:`CC BY-NC 2.5 `
.. index:: trace, tracing
.. _trace:
Trace
-----
Unicon has tracing features baked in. A command line switch
::
unicon -t program.icn
turns on tracing. There is also a check for an environment variable
:envvar:`TRACE`, during program startup, and the keyword :ref:`&trace
<&trace>` to provide fine tuned control over when source level tracing is
used.
.. index:: UDB
.. _UDB:
UDB
---
Ziad A. Al-Sharif wrote a dissertation on an Extensible Debugging
Architecture, and one of the aspects of the paper was a production ready
Unicon Debugger, UDB.
The dissertation is in Technical Report (UTR10a 2009/01/08) ``Debugging with
UDB``.
http://unicon.org/utr/utr10.html
.. only:: html
..
--------
:ref:`genindex` | Previous: :doc:`testing` | Next: :doc:`monitoring`
|