mirror of
https://github.com/Mercury-Language/mercury.git
synced 2025-12-16 06:14:59 +00:00
Estimated hours taken: 24 Add support to the Mercury tracer for interacting with an external Opium-style debugger via a socket. TODO: currently there is no way for the debugger to specify constraints on the arguments for a `forward_move' query. The current code for doing that doesn't work. (However, the reporting of arguments to the debugger for an `output_current' query works fine.) runtime/mercury_trace.c: Add code to MR_trace() to open a socket connection to an external debugger, and to process requests from that debugger, and send responses back. runtime/mercury_trace.h: runtime/mercury_wrapper.c: Call MR_trace_end() from mercury_runtime_terminate() so that the external debugger gets notified when the program does a (normal) exit. runtime/mercury_stack_layout.h: Fix a bug where the structures here did not match the output produced by compiler/stack_layout.m. library/debugger_interface.m: New file. Declares the Mercury types used for the debugger socket interface and defines support routines used by runtime/mercury_trace.c. library/io.m: runtime/mercury_types.h: Move the definition of MercuryFile from library/io.m to runtime/mercury_types.h, for use by runtime/mercury_trace.c. library/io.m: When printing out values of type `c_pointer', print out the "<<c_pointer>>" string in single quotes, to ensure that it has valid syntax for a Prolog or Mercury term. This is necessary because otherwise c_pointers in procedure arguments could lead to the Mercury process sending a syntactically invalid term down the socket to the debugger, which would then be unable to parse it. library/library.m: Add reference to debugger_interface.m, so that it gets include in libmercury.a. doc/Mmakefile: Make sure that the library/debugger_interface.m does *not* get included in the Mercury library reference manual. runtime/mercury_wrapper.h: runtime/mercury_wrapper.c: runtime/mercury_init.h: util/mkinit.c: Declare, define, and initialize pointers to the C functions exported by library/debugger_interface.m. (This is to avoid having a circular dependency where the runtime depends on the library.) compiler/notes/authors.html: Add Erwan Jahier.
65 lines
1.3 KiB
HTML
65 lines
1.3 KiB
HTML
|
|
|
|
<html>
|
|
<head>
|
|
<title>
|
|
Authors
|
|
</title>
|
|
</head>
|
|
|
|
<body
|
|
bgcolor="#ffffff"
|
|
text="#000000"
|
|
>
|
|
|
|
<hr>
|
|
<!-------------------------->
|
|
|
|
<p>
|
|
|
|
Each source file should contain a comment indicating the
|
|
main author(s) of that file. This is done not out of vanity,
|
|
but so that you know who to blame ;-). If you find any
|
|
of the source code difficult to understand or insufficiently
|
|
commented, complain to the author.
|
|
|
|
<table>
|
|
|
|
<tr>
|
|
<td>benyi <td>Tibor Benyi <td>benyi@cs.mu.oz.au </tr>
|
|
<tr>
|
|
<td>bromage <td>Andrew Bromage <td>bromage@cs.mu.oz.au </tr>
|
|
<tr>
|
|
<td>conway <td>Tom Conway <td>conway@cs.mu.oz.au </tr>
|
|
<tr>
|
|
<td>dgj <td>David Jeffery <td>dgj@students.cs.mu.oz.au </tr>
|
|
<tr>
|
|
<td>dylan <td>Dylan Shuttleworth <td>dylan@cs.mu.oz.au </tr>
|
|
<tr>
|
|
<td>fjh <td>Fergus Henderson <td>fjh@cs.mu.oz.au </tr>
|
|
<tr>
|
|
<td>jahier <td>Erwan Jahier <td>jahier@irisa.fr </tr>
|
|
<tr>
|
|
<td>ksiew <td>Steven Siew <td>ksiew@cs.mu.oz.au </tr>
|
|
<tr>
|
|
<td>petdr <td>Peter Ross <td>petdr@cs.mu.oz.au </tr>
|
|
<tr>
|
|
<td>squirrel <td>Jane Langley <td>jal@cs.mu.oz.au </tr>
|
|
<tr>
|
|
<td>stayl <td>Simon Taylor <td>stayl@students.cs.mu.oz.au </tr>
|
|
<tr>
|
|
<td>trd <td>Tyson Dowd <td>trd@students.cs.mu.oz.au </tr>
|
|
<tr>
|
|
<td>zs <td>Zoltan Somogyi <td>zs@cs.mu.oz.au </tr>
|
|
|
|
|
|
</table>
|
|
|
|
|
|
<hr>
|
|
<!-------------------------->
|
|
|
|
Last update was $Date: 1998-03-11 22:07:08 $ by $Author: fjh $@cs.mu.oz.au. <br>
|
|
</body>
|
|
</html>
|