Draco-lang / Language-suggestions

Collecting ideas for a new .NET language that could replace C#
75 stars 5 forks source link

Provide an API that allow users to build their own debugger experience. #132

Open Kuinox opened 8 months ago

Kuinox commented 8 months ago

We should enable users to build their own debugger experience.
By debugger experience, I mean the sets of windows you can get when the debugger is attached to an app.
Visual Studio for example shows the stacktrace, thread, watch window, etc...
.NET already allow to extend the debugging experience in a limited way: we had .ToString(), and [DebuggerDisplay] which allowed to change how we see the object in the watch windows.

Here some debugger experience that any user should be able to easily write:

@LPeter1997 suggested to look how Unity allow to extend the editor:

Unity has a way to extend its editor With new kinds of windows, exposing properties, color pickers, graph editors, ... It's all interactive too, refreshing at runtime It's definitely one starting point for such a thing

In my initial idea I thought we should rely on HTML/CSS for the rendering of theses components.
A neat D3.js equivalent in .NET would allow to easily build an UI for the 'experience'.