|
Archives
D Programming
DD.gnu digitalmars.D digitalmars.D.bugs digitalmars.D.dtl digitalmars.D.dwt digitalmars.D.announce digitalmars.D.learn digitalmars.D.debugger C/C++ Programming
c++c++.announce c++.atl c++.beta c++.chat c++.command-line c++.dos c++.dos.16-bits c++.dos.32-bits c++.idde c++.mfc c++.rtl c++.stl c++.stl.hp c++.stl.port c++.stl.sgi c++.stlsoft c++.windows c++.windows.16-bits c++.windows.32-bits c++.wxwindows digitalmars.empire digitalmars.DMDScript electronics |
digitalmars.D.debugger - ddbg suggestion
The debugee's output must be distinguished from the debuggers's output by prefix or something. Otherwise it is impossible for non-human to say which one is which. A single character would do nicely. Apr 03 2007
you can use the "nc" command before starting the debuggee to make ddbg open a new console for it. i think that's the best solution for that problem. no prefix can be unique and it's a lot more readable to separate the ouput properly. i will still consider adding a prefix as an option if there is need for it. bobef wrote:The debugee's output must be distinguished from the debuggers's output by prefix or something. Otherwise it is impossible for non-human to say which one is which. A single character would do nicely. Apr 04 2007
There is need. To create a font end the two things must be separated. Also the prefix don't have to be "unique", it just have to be something that is different from the debugger's output. Say the debugee's output is prefixed with # or $ or whatever. I doubt that any message of the debugger starts with $ (or something other). So when the line begins with $ just strip the $ and the rest is debugee's output, otherwise it is debugger's. Jascha Wetzel <[firstname] mainia.de> Wrote:you can use the "nc" command before starting the debuggee to make ddbg open a new console for it. i think that's the best solution for that problem. no prefix can be unique and it's a lot more readable to separate the ouput properly. i will still consider adding a prefix as an option if there is need for it. bobef wrote:The debugee's output must be distinguished from the debuggers's output by prefix or something. Otherwise it is impossible for non-human to say which one is which. A single character would do nicely. Apr 04 2007
ok, to be sure, i'll make the prefix configurable. personally, i use a new console when using Code::Blocks as a front end. i wonder if a that ouput could be redirected to a front end as well. bobef wrote:There is need. To create a font end the two things must be separated. Also the prefix don't have to be "unique", it just have to be something that is different from the debugger's output. Say the debugee's output is prefixed with # or $ or whatever. I doubt that any message of the debugger starts with $ (or something other). So when the line begins with $ just strip the $ and the rest is debugee's output, otherwise it is debugger's. Jascha Wetzel <[firstname] mainia.de> Wrote:you can use the "nc" command before starting the debuggee to make ddbg open a new console for it. i think that's the best solution for that problem. no prefix can be unique and it's a lot more readable to separate the ouput properly. i will still consider adding a prefix as an option if there is need for it. bobef wrote:The debugee's output must be distinguished from the debuggers's output by prefix or something. Otherwise it is impossible for non-human to say which one is which. A single character would do nicely. Apr 04 2007
hm, i guess i misunderstood you. prefixing the debuggee's output requires intercepting it's output, which is not a good idea. prefixing the debugger's output isn't unambiguous, since the debuggee can always use the same prefix. therefore, the best solution is to separate the two output streams by using different consoles, as implemented by the "nc" command. i'd recommend that you consider using this solution. as i said, i can add a configurable prefix for the debugger's output, but that's pretty hacky, imho. Jascha Wetzel <[firstname] mainia.de> Wrote:ok, to be sure, i'll make the prefix configurable. personally, i use a new console when using Code::Blocks as a front end. i wonder if a that ouput could be redirected to a front end as well. bobef wrote:There is need. To create a font end the two things must be separated. Also the prefix don't have to be "unique", it just have to be something that is different from the debugger's output. Say the debugee's output is prefixed with # or $ or whatever. I doubt that any message of the debugger starts with $ (or something other). So when the line begins with $ just strip the $ and the rest is debugee's output, otherwise it is debugger's. Jascha Wetzel <[firstname] mainia.de> Wrote:you can use the "nc" command before starting the debuggee to make ddbg open a new console for it. i think that's the best solution for that problem. no prefix can be unique and it's a lot more readable to separate the ouput properly. i will still consider adding a prefix as an option if there is need for it. bobef wrote:The debugee's output must be distinguished from the debuggers's output by prefix or something. Otherwise it is impossible for non-human to say which one is which. A single character would do nicely. Apr 04 2007
I see. Then how to get the both outputs to the front end and let it know which one is which? Jascha Wetzel Wrote:hm, i guess i misunderstood you. prefixing the debuggee's output requires intercepting it's output, which is not a good idea. prefixing the debugger's output isn't unambiguous, since the debuggee can always use the same prefix. therefore, the best solution is to separate the two output streams by using different consoles, as implemented by the "nc" command. i'd recommend that you consider using this solution. as i said, i can add a configurable prefix for the debugger's output, but that's pretty hacky, imho. Jascha Wetzel <[firstname] mainia.de> Wrote:ok, to be sure, i'll make the prefix configurable. personally, i use a new console when using Code::Blocks as a front end. i wonder if a that ouput could be redirected to a front end as well. bobef wrote:There is need. To create a font end the two things must be separated. Also the prefix don't have to be "unique", it just have to be something that is different from the debugger's output. Say the debugee's output is prefixed with # or $ or whatever. I doubt that any message of the debugger starts with $ (or something other). So when the line begins with $ just strip the $ and the rest is debugee's output, otherwise it is debugger's. Jascha Wetzel <[firstname] mainia.de> Wrote:you can use the "nc" command before starting the debuggee to make ddbg open a new console for it. i think that's the best solution for that problem. no prefix can be unique and it's a lot more readable to separate the ouput properly. i will still consider adding a prefix as an option if there is need for it. bobef wrote:The debugee's output must be distinguished from the debuggers's output by prefix or something. Otherwise it is impossible for non-human to say which one is which. A single character would do nicely. Apr 04 2007
one could use named pipes or simply control the debugger through an API instead of a CLI. i've just looked at the GDB/MI specs, they also require the debugger to prefix the debuggee's output. GDB/MI appears to not distinguish stdout and stderr output, though. personally i feel that using a separate pair of IO streams (or an API) for controlling the debugger would be nicer. but since i will implement GDB/MI for compatibility reasons anyway, the effort of implementing an alternative approach won't be worthwhile. bobef wrote:I see. Then how to get the both outputs to the front end and let it know which one is which? Jascha Wetzel Wrote:hm, i guess i misunderstood you. prefixing the debuggee's output requires intercepting it's output, which is not a good idea. prefixing the debugger's output isn't unambiguous, since the debuggee can always use the same prefix. therefore, the best solution is to separate the two output streams by using different consoles, as implemented by the "nc" command. i'd recommend that you consider using this solution. as i said, i can add a configurable prefix for the debugger's output, but that's pretty hacky, imho. Jascha Wetzel <[firstname] mainia.de> Wrote:ok, to be sure, i'll make the prefix configurable. personally, i use a new console when using Code::Blocks as a front end. i wonder if a that ouput could be redirected to a front end as well. bobef wrote:There is need. To create a font end the two things must be separated. Also the prefix don't have to be "unique", it just have to be something that is different from the debugger's output. Say the debugee's output is prefixed with # or $ or whatever. I doubt that any message of the debugger starts with $ (or something other). So when the line begins with $ just strip the $ and the rest is debugee's output, otherwise it is debugger's. Jascha Wetzel <[firstname] mainia.de> Wrote:you can use the "nc" command before starting the debuggee to make ddbg open a new console for it. i think that's the best solution for that problem. no prefix can be unique and it's a lot more readable to separate the ouput properly. i will still consider adding a prefix as an option if there is need for it. bobef wrote:The debugee's output must be distinguished from the debuggers's output by prefix or something. Otherwise it is impossible for non-human to say which one is which. A single character would do nicely. Apr 04 2007
Jascha Wetzel wrote:ok, to be sure, i'll make the prefix configurable. personally, i use a new console when using Code::Blocks as a front end. i wonder if a that ouput could be redirected to a front end as well. bobef wrote:There is need. To create a font end the two things must be separated. Also the prefix don't have to be "unique", it just have to be something that is different from the debugger's output. Say the debugee's output is prefixed with # or $ or whatever. I doubt that any message of the debugger starts with $ (or something other). So when the line begins with $ just strip the $ and the rest is debugee's output, otherwise it is debugger's. Jascha Wetzel <[firstname] mainia.de> Wrote:you can use the "nc" command before starting the debuggee to make ddbg open a new console for it. i think that's the best solution for that problem. no prefix can be unique and it's a lot more readable to separate the ouput properly. i will still consider adding a prefix as an option if there is need for it. bobef wrote:The debugee's output must be distinguished from the debuggers's output by prefix or something. Otherwise it is impossible for non-human to say which one is which. A single character would do nicely. Apr 04 2007
Frits van Bommel wrote:Note that in your earlier message you seemed to think he wanted a prefix on the output of the debugger, but he meant the _debuggee_. Just in case you missed that. This shouldn't be a problem, since presumably you (as the author of the debugger) have control over what messages the debugger itself generates and can ensure it never starts with the chosen prefix? Apr 04 2007
Jascha Wetzel wrote:Frits van Bommel wrote:Note that in your earlier message you seemed to think he wanted a prefix on the output of the debugger, but he meant the _debuggee_. Just in case you missed that. This shouldn't be a problem, since presumably you (as the author of the debugger) have control over what messages the debugger itself generates and can ensure it never starts with the chosen prefix? Apr 04 2007
bobef escribió:The debugee's output must be distinguished from the debuggers's output by prefix or something. Otherwise it is impossible for non-human to say which one is which. A single character would do nicely. Apr 20 2007
Another suggestions: a) allow the debugger to run in "for non-human" mode (with a flag), and b) to be able to specify two local ports on the machine, one to send requests, the other to recieve answers. This way: Apr 21 2007
Jascha Wetzel escribió:Another suggestions: a) allow the debugger to run in "for non-human" mode (with a flag), and b) to be able to specify two local ports on the machine, one to send requests, the other to recieve answers. This way: Apr 23 2007
|