tag:blogger.com,1999:blog-5145015724555605651.post3994597526007165544..comments2023-03-02T00:29:46.741-08:00Comments on The Alien Tongue: stirrings of a vmSam Rushinghttp://www.blogger.com/profile/13115847299260965994noreply@blogger.comBlogger1125tag:blogger.com,1999:blog-5145015724555605651.post-34721963023447404732010-04-05T13:33:36.042-07:002010-04-05T13:33:36.042-07:00I might be able to compromise between the two appr...I might be able to compromise between the two approaches. How about extending 'datatype' to automatically detect and 'optimize' the tagging of single-immediate-objects in sum types?<br /><br />For example, <br /><br />(datatype number (:int int) (:complex int int))<br /><br />In the first alternative, rather than treating that like a product of one element, the back end will just treat it like a normal tagged integer.<br /><br />The only time this would *not* work would be if you had more than one alternative with the same immediate type:<br /><br />(datatype number (:int0 int) (:int1 int))<br /><br />Since there would be no way of distinguishing the two without a tag.Sam Rushinghttps://www.blogger.com/profile/13115847299260965994noreply@blogger.com