There are several works in the field of type inference for dynamic languages. Many of them are focus on Python. I can remember now Brett Canon's overview and PyPy's.
http://www.ocf.berkeley.edu/~bac/thesis.pdf and http://codespeak.net/pypy/dist/pypy/doc/translation.html#the-annotation-pass The first one has some bibliography links. Both are easy to read. BTW, both are mentioned in a recent LtU blog. http://lambda-the-ultimate.org/node/1519 Regards, -H. On 6/6/06, Andrew Deren <[EMAIL PROTECTED]> wrote: > I also have interest in this subject. I'm working on another language that > is as dynamic as python (even more so) and figuring out types is not easy. > You can do some advanced code analysis to find some cases where you can > guarantee the types, but that is not the most of the time. > PHP added type hints to class methods, so with those you can do it. Another > good example is boo language which looks similar to python but has strong > typing, but you can do "duck" typing too. > Andrew > > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Fuzzyman > Sent: Tuesday, June 06, 2006 4:02 AM > To: Discussion of IronPython > Subject: Re: [IronPython] Improving performance with stronger typing > > Keith J. Farmer wrote: > > >I can see it for primitive types, but not in general. > > > > > > > It sounds very interesting though. For circumstances where you are prepared > to guarantee the type of objects (and the range of operations permitted on > them), sacrificing dynamicity for speed sounds like a good trade off. > > I've half had it in mind to write a compiler for a Python subset (as an > IronPython extension) that works similarly. Having no academic background in > the subject anything I did would be quite naive... > > Michael Foord > http://www.voidspace.org.uk/python/index.shtml > > >----- > >Keith J. Farmer // [EMAIL PROTECTED] > >-----Original Message----- > >From: [EMAIL PROTECTED] > >[mailto:[EMAIL PROTECTED] On Behalf Of Ben Blair > > > >add. Ideally, when the input types are known, IL should be emitted to just > do the add operation. > > > >_______________________________________________ > >users mailing list > >[email protected] > >http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > > > > > > > > _______________________________________________ > users mailing list > [email protected] > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > > > _______________________________________________ > users mailing list > [email protected] > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > _______________________________________________ users mailing list [email protected] http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
