Re: [dylan] Looking for some prior art ... compiler testing, extending the compiler
Hannes Mehnert <[email protected]>
| Newsgroups | gmane.comp.lang.dylan.gwydion.devel |
|---|---|
| Message-ID | <[email protected]> |
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA384 Hi, my needs are in two areas: - test cases for compiler (especially type inference and optimizer) - "improvements" of an unchanged library from a previous compiler run The first is mostly straightforward - a query language for control and data flow might be handy - but sometimes I'd also want to specify the complete (apart from alpha-conversion) control and data flow graphs for a given test case (basically a reader for DFM). Also, I'd want to specify which optimizations to run for a test case, otherwise useful information might disappear. The second is basically a diff on some structured data - namely the control flow graph. Here the diff must be pretty smart: the control flow graph is a cyclic graph (read: loops), which can fortunately be converted to a acyclic graph by removing the edge from continue to loop entry. But a diff for DAGs is hard. Especially since there are costs connected to each control flow node (a generic function call (= 1 node) is more expensive than the inlined method (= 100 nodes, containing 10 generic function calls). I don't really see the advantage of using json or whatever format here instead of DFM (saved to/restored from disk using DOOD). (Obviously the text/ASCII representation of DFM is not complete or "good" - that's a reason why I implemented a graph visualization (which is useful for debugging, but not for batch runs)). Cheers, Hannes On 08/02/2013 10:51, Bruce Mitchener wrote: > - Test the optimizer and type inference in varying combinations. - > Record the current state of code generation so that various > versions of the compiler output can be diffed. - Implement new > optimizations. - Implement new warnings. - Implement static > checkers. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (Darwin) iQIcBAEBCQAGBQJRFPwmAAoJELyJZYjffCjutwwQAL+VdQhZy8JVsrg/zxJIv1Cm gfJSOS0IJcXDK4yDIeeJOrTCCzHWvzLhtvV57pCumt5h43ou9kKjg8xqeGpWo0yu MvNahbH6jX4Yu1hmsR/UrLXl/tAUpmXS5WKGfI0khA+yg/oo5XT6UdC5HLktCy56 +BgXixbftG2W3DXhTQdJRgAb2s9xacRfdMogCd2hFhpmnxBScQdGzp/MeYGAJ+54 beXNZAT7Lv6R/qa6Hrf9qU7X9iqmnPSxvK1U6yblRB25neLiQk+fMFtRJFq3LfOw OKFr5paBaUzZfc9Ta/EeSvDXXGOjs9igcJ48L1NXVg5xPRvDLuNuv2LMbhPAzFVR zP4CFGEJ1iZfXBxGC3XT7fuNOhJcofu7WPOHDs38Xsxk7BAJQav7jUnMBZTi8huM wboL8+LJuGrrjOk/CjqpJHCrTjhMEtgV1TkcwEFWexnS3n1m/T5wsiptQCTJkaMA eK5kQ7lkQ430hEgxJarqlBloCM6ie3BZEy8D8dbzNdl2LQ5rLUQdh6UlCcSPiaCo V5nj4Hz4YRQs/shCpxFniUJ3qnsoRy+hrb5NY9PXmTdvsbxCKmnUaNjXScL5tfaI fmYQpxF1MELznoSnWGdMoB+2RAYEyt9VCw9h8j56SZNnapd1A/lpcC7JqjaZ1YFC 1pmoA7dNxPkZLuheM+4Z =tPio -----END PGP SIGNATURE----- _______________________________________________ hackers mailing list [email protected] https://lists.opendylan.org/mailman/listinfo/hackers