[m-rev.] for review: implement RTTI for io__write on .NET

Tyson Dowd trd at cs.mu.OZ.AU
Tue Sep 25 00:57:55 AEST 2001


Since this is unlikely to cause any problems in other grades, I'm going
to commit it now, and address comments later.

On 20-Sep-2001, Tyson Dowd <trd at miscrit.be> wrote:
> Hi,
> 
> Most of the time spent on this was actually spent grappling with the 
> problem that generated structs were being generated as nested arrays,
> and not nested structures.
> 
> I attribute that debugging time to this change because the behaviour
> might be considered correct, only that for the purposes of RTTI it isn't
> what we want to be able to effectively use these data structures.
> 
> As a side effect of this change uncaught exceptions are now printed
> correctly.
> 
> ===================================================================
> 
> 
> Estimated hours taken: 50
> Branches: main
> 
> Implement most of the RTTI required for io__write to work in the .NET
> backend.  With this code most of tests/hard_coded/write.m work (up until
> the point where we try to write a univ).
> 
> We don't yet handle higher-order terms or existentially quantified type
> variables.
> 
> library/io.m:
> 	Prepend an "_" to some unused variables.
> 	Move unsafe_cast from io.m into rtti_implementation.m -- it is
> 	useful in rtti_implementation (and possibly elsewhere), and it's
> 	better to have io depend on rtti_implementation than vice-versa.
> 
> library/rtti_implementation.m:
> 	Implement type_ctor_name_and_arity for commonly occuring data
> 	representations.
> 
> 	Add type_ctor_is_variable_arity to simplfy this test.
> 	Rename index as type_info_index to make it clear what we are
> 	indexing into.
> 
> library/std_util.m:
> 	Improve some of the error messages to make it easier to track
> 	down unimplemented code.
> 	Call into rtti_implementation for type_ctor_and_args.
> 	Use pragma export to generate ML_call_rtti_compare_type_infos
> 	(it wasn't available before so we jumped through a few more
> 	hoops to call into rtti_implementation).
> 
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list