[Ironpython-users] Options for debugger for DLR languages on Mono

Steve Dower s.j.dower at gmail.com
Thu Sep 22 12:27:00 CEST 2011

Dino will know better than I do, but most if not all the C++ code in
PTVS is for debugging, but only for attaching to running CPython
processes. Otherwise, the debugger is largely based around a
'settrace' script and a C# debug engine communicating through sockets
- nothing to do with the DLR.

The DLR debugger is still in there though, but I have no idea how easy
it is to separate the two. You may want to look at the old IronPython
Tools (https://github.com/IronLanguages/main/tree/master/Tools/IronStudio),
since they won't have any of the CPython support, though there are
bugs that were fixed in PTVS since IPyTools were last updated.

On Wed, Sep 21, 2011 at 13:30, Dave Wald <davew252 at tx.rr.com> wrote:
> Doug,
> First off, congrats on the Calico project. Seriously cool. I wish I was one
> of your students just starting out.
> These kids today... jeez.
> Anyway, if I was gonna tackle that project, first thing I would do is
> download the source code for PyTools for Visual Studio (it does CLR/DLR and
> CPython)
> http://pytools.codeplex.com/SourceControl/list/changesets
> and study it til I puked.
> Secondly, I would do the same with MonoDevelop, and do the old
> compare-and-contrast drill.
> Write myself a white-paper, as it were. Profusely annotated and
> Visio-diagrammed unto death.
> And then outline what I could re-use as is and where I needed to do major
> surgery.
> (Or get the students to do it... ;-)   )
> PyTools is written in C# mostly, looks like, with a sprinkling of C++/unsafe
> native code, but not in the debuggers. They look like straight cs.
> I have no idea what MonoDevelop looks like under the hood.
> But between the two, I would expect to be able to get a pretty good idea
> what could  be done without re-inventing the world.
> That's my two cents...
> Best,
> Dave
> On 9/19/2011 8:09 AM, Doug Blank wrote:
>> IronPython users,
>> We have a fairly robust editor/shell written in IronPython, using
>> Gtk#, running under cross-platform Mono with abilities to switch
>> between many languages (including Python, Ruby, Scheme, Lua, FSharp,
>> CSharp, Boo, and a new visual Scratch-based language called Jigsaw.
>> Although not all are DLR-based.) [1].
>> What would be the best option for creating an interactive debugger for
>> the DLR languages on Mono? We would want to be able to set
>> break-points, single step, and inspect local variables. Ideally, this
>> would be a generic, language-neutral API, but if we have to do one for
>> each language, that might work too. Things we've looked at:
>> a) Seo's FePy Mono Profiler, but that seems too low-level, and
>> requires C code for each platform.
>> b) Microsoft.Scripting.Debugging [3], but will that work under Mono?
>> c) sys.settrace(), but that would be Python-specific, and can't
>> single-step (?)
>> Are there other issues/options to consider? Please feel free to point
>> me towards useful resources.
>> Thanks!
>> -Doug
>> [1] - http://calicoproject.org/
>> [2] - http://fepy.blogspot.com/2007/06/pyprof-progresses.html
>> [3] - http://devhawk.net/2009/07/08/microsoft-scripting-debugging/
>> _______________________________________________
>> Ironpython-users mailing list
>> Ironpython-users at python.org
>> http://mail.python.org/mailman/listinfo/ironpython-users
> _______________________________________________
> Ironpython-users mailing list
> Ironpython-users at python.org
> http://mail.python.org/mailman/listinfo/ironpython-users

More information about the Ironpython-users mailing list