Hello, I have not yet seen anything about a policy on contributions implemented in extension languages. However, I have now implemented the 'explore' command in C. The patch is attached. I will add documentation after the basics of this patch are approved. 2012-02-08 Siva Chandra         New command 'explore' which helps explore values in scope.         * explore.c: Implemention of the 'explore' command.         * Makefile.in: Add rules for compiling and linked explore.c.         * testsuite/gdb.base/explore.c: C program used for testing         the new 'explore' command.         * testsuite/gdb.base/explore.exp: Tests for the new 'explore'         command.         * testsuite/gdb.base/Makefile.in: Add explore to EXECUTABLES To recollect, the idea behind the 'explore' command is as follows: Often, when exploring a new code base which has complicated data structures, we would like to explore the data structure values top-down. For example, if a struct is part of a struct/union is part of another struct/union, then we typically explore the top-level struct/union in the first pass. In subsequent passes, we might want to go deeper by exploring the structs/unions embedded in the top level struct. We might infact want to explore all the way up to the leaf values. The ‘explore’ command enables a user to do such a top-down exploration of data structures interactively. Not only values, even types can be explored in a similar fashion. Example of value exploration: ======================== (gdb) explore cs The value of 'cs' is of type 'struct ComplexStruct' with the following fields: s = u = sa = Enter the field number of choice: 2 'cs.sa' is an array of elements of type 'SS'. Enter the index you want to explore in 'cs.sa': 1 The value of '(cs.sa)[1]' is of type 'SS' which is a typedef of type 'struct SimpleStruct'. The value of '(cs.sa)[1]' is of type 'struct SimpleStruct' with the following fields: a = 1 .. (Value of type 'int') d = 11.1 .. (Value of type 'double') Press enter to return to parent value: Returning to parent value... 'cs.sa' is an array of elements of type 'SS'. Enter the index you want to explore in 'cs.sa': Returning to parent value... The value of 'cs' is of type 'struct ComplexStruct' with the following fields: s = u = sa = Enter the field number of choice: (gdb) Example of type exploration: ======================== (gdb) explore struct SimpleStruct 'struct SimpleStruct' has the following fields: a = d = Enter the field number of choice: 1 field 'd' of 'struct SimpleStruct' is of a scalar type 'double'. Press enter to return to enclosing type: Returning to parent type... 'struct SimpleStruct' has the following fields: a = d = Enter the field number of choice: (gdb) Thanks, Siva Chandra