Translating pypy on FreeBSD with CLI backend

Hi, I tried to translate pypy-2.0b2 on FreeBSD-9.1/i386 and I get the following error: [Timer] Timings: [Timer] annotate --- 218.3 s [Timer] rtype_ootype --- 137.0 s [Timer] ========================================== [Timer] Total: --- 355.4 s [translation:ERROR] Error: [translation:ERROR] Traceback (most recent call last): [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/goal/translate.py", line 317, in main [translation:ERROR] drv.proceed(goals) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/driver.py", line 733, in proceed [translation:ERROR] return self._execute(goals, task_skip = self._maybe_skip()) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/tool/taskengine.py", line 114, in _execute [translation:ERROR] res = self._do(goal, taskcallable, *args, **kwds) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/driver.py", line 284, in _do [translation:ERROR] res = func() [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/driver.py", line 360, in task_rtype_ootype [translation:ERROR] rtyper.specialize(dont_simplify_again=True) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 207, in specialize [translation:ERROR] self.specialize_more_blocks() [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 250, in specialize_more_blocks [translation:ERROR] self.specialize_block(block) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 404, in specialize_block [translation:ERROR] self.gottypererror(e, block, hop.spaceop, newops) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 402, in specialize_block [translation:ERROR] self.translate_hl_to_ll(hop, varmapping) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 531, in translate_hl_to_ll [translation:ERROR] resultvar = hop.dispatch() [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 759, in dispatch [translation:ERROR] return translate_meth(self) [translation:ERROR] File "<17296-codegen /tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py:611>", line 5, in translate_op_is_ [translation:ERROR] return pair(r_arg1, r_arg2).rtype_is_(hop) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rmodel.py", line 293, in rtype_is_ [translation:ERROR] return hop.rtyper.type_system.generic_is(robj1, robj2, hop) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/typesystem.py", line 179, in generic_is [translation:ERROR] roriginal1, roriginal2)) [translation:ERROR] TyperError: is of instances of the non-instances: <OOErasedRepr Object>, <OOErasedRepr Object> [translation:ERROR] .. (pypy.objspace.std.setobject:517)IntegerSetStrategy._difference_update_unwrapped [translation:ERROR] .. block@3 with 2 exits(v961) [translation:ERROR] .. v964 = is_(v962, v963) Is the CLI supported in general, on FreeBSD or broken? Regards

On Wednesday, 8 May 2013 22:14:00 David Naylor wrote:
I tried again and got the following error: [Timer] Timings: [Timer] annotate --- 157.6 s [Timer] rtype_ootype --- 27.7 s [Timer] ========================================== [Timer] Total: --- 185.3 s [translation:ERROR] Error: [translation:ERROR] Traceback (most recent call last): [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/goal/translate.py", line 317, in main [translation:ERROR] drv.proceed(goals) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/driver.py", line 733, in proceed [translation:ERROR] return self._execute(goals, task_skip = self._maybe_skip()) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/tool/taskengine.py", line 114, in _execute [translation:ERROR] res = self._do(goal, taskcallable, *args, **kwds) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/driver.py", line 284, in _do [translation:ERROR] res = func() [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/driver.py", line 360, in task_rtype_ootype [translation:ERROR] rtyper.specialize(dont_simplify_again=True) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 207, in specialize [translation:ERROR] self.specialize_more_blocks() [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 250, in specialize_more_blocks [translation:ERROR] self.specialize_block(block) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 402, in specialize_block [translation:ERROR] self.translate_hl_to_ll(hop, varmapping) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 531, in translate_hl_to_ll [translation:ERROR] resultvar = hop.dispatch() [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 759, in dispatch [translation:ERROR] return translate_meth(self) [translation:ERROR] File "<17262-codegen /tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py:601>", line 4, in translate_op_simple_call [translation:ERROR] return r_arg1.rtype_simple_call(hop) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rbuiltin.py", line 117, in rtype_simple_call [translation:ERROR] return self._call(hop2) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rbuiltin.py", line 108, in _call [translation:ERROR] v_result = bltintyper(hop2, **kwds_i) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rlib/objectmodel.py", line 370, in specialize_call [translation:ERROR] hop.gendirectcall(r_list.LIST._ll_resize_hint, v_list, v_sizehint) [translation:ERROR] AttributeError: 'List' object has no attribute '_ll_resize_hint' Also of note: # mono --version Mono JIT compiler version 3.0.3 (tarball Wed May 8 19:40:23 UTC 2013) Copyright (C) 2002-2012 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com TLS: __thread SIGSEGV: altstack Notification: kqueue Architecture: x86 Disabled: none Misc: softdebug LLVM: supported, not enabled. GC: Included Boehm (with typed GC and Parallel Mark) Regards

We should probably just delete it at this point, it's completely unmaintained, doesn't work, and just confuses people; if someone wants to ressurect it, hg log should be good enough. Alex On Wed, May 8, 2013 at 1:26 PM, Maciej Fijalkowski <fijall@gmail.com> wrote:
-- "I disapprove of what you say, but I will defend to the death your right to say it." -- Evelyn Beatrice Hall (summarizing Voltaire) "The people's good is the highest law." -- Cicero GPG Key fingerprint: 125F 5C67 DFE9 4084

Hi all, since there basically is no maintained ootype backend i wonder about removing the ootype vs lltype abstraction together with them, comments? -- Ronny On 05/08/2013 11:12 PM, Maciej Fijalkowski wrote:

I agree with this, the abstraction doesn't really work well right now, there's way too much code duplication. If we seriously want to have an lltype/ootype distinction this should be redone from scratch (IMO). Alex On Wed, May 8, 2013 at 2:26 PM, Ronny Pfannschmidt < Ronny.Pfannschmidt@gmx.de> wrote:
-- "I disapprove of what you say, but I will defend to the death your right to say it." -- Evelyn Beatrice Hall (summarizing Voltaire) "The people's good is the highest law." -- Cicero GPG Key fingerprint: 125F 5C67 DFE9 4084

Hi all, On Thu, May 9, 2013 at 10:01 AM, Antonio Cuni <anto.cuni@gmail.com> wrote:
Although I have an emotional feeling with that piece of code, I think that Alex is right.
I also tend to agree. Killing stuff that nobody seriously cares about is sad but good, particularly when it adds some otherwise-unnecessary levels of abstractions everywhere. We should ideally wait e.g. one month for feedback from other developers that may still have plans there. And no, before someone asks, asmjs wouldn't need the OO backend but more likely hacks on top of the LL backend. The OO-vs-LL levels of abstractions are wrong there. A bientôt, Armin.

I really wish pypy is able to support jvm, cli and dalvik, so that it is possible to write core business logic in python which runs everywhere. Is there any plan to implement a better ootype as well as OO backends? On Thu, May 9, 2013 at 2:19 AM, Armin Rigo <arigo@tunes.org> wrote:

On 22 May 2013 16:11, James Lan <jameslan@gmail.com> wrote:
Nobody is working on any of the OO backends at the moment. It might be worthwhile to document what we mean by 'from scratch', too. Graphs that haven't been rtyped actually have most of the information that oo-style or untyped backends might care about, the most significant things missing probably involve dealing with constants as well as the extregistry. -- William Leslie Notice: Likely much of this email is, by the nature of copyright, covered under copyright law. You absolutely may reproduce any part of it in accordance with the copyright law of the nation you are reading this in. Any attempt to deny you those rights would be illegal without prior contractual agreement.

2013/5/9 Armin Rigo <arigo@tunes.org>
It's been almost 2 months. Can we kill it *now*? I've just started a branch: https://bitbucket.org/pypy/pypy/commits/branch/kill-ootype It looks like killing it properly requires some work.

Yes, I think we can kill it (if you want some help deleting code, let us know :P) Alex On Sun, Jul 7, 2013 at 9:39 AM, Ronan Lamy <ronan.lamy@gmail.com> wrote:
-- "I disapprove of what you say, but I will defend to the death your right to say it." -- Evelyn Beatrice Hall (summarizing Voltaire) "The people's good is the highest law." -- Cicero GPG Key fingerprint: 125F 5C67 DFE9 4084

Le 07/07/13 00:42, Alex Gaynor a écrit :
Yes, I think we can kill it (if you want some help deleting code, let us know :P)
The branch has just been merged. However, there's some more cleanup to do, chiefly getting rid of the type_system abstraction. I've started looking into it, it seems that rpython/rtyper/lltypesystem/ can be removed entirely with its contents merged with rpython/rtyper/.

On Wednesday, 8 May 2013 22:14:00 David Naylor wrote:
I tried again and got the following error: [Timer] Timings: [Timer] annotate --- 157.6 s [Timer] rtype_ootype --- 27.7 s [Timer] ========================================== [Timer] Total: --- 185.3 s [translation:ERROR] Error: [translation:ERROR] Traceback (most recent call last): [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/goal/translate.py", line 317, in main [translation:ERROR] drv.proceed(goals) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/driver.py", line 733, in proceed [translation:ERROR] return self._execute(goals, task_skip = self._maybe_skip()) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/tool/taskengine.py", line 114, in _execute [translation:ERROR] res = self._do(goal, taskcallable, *args, **kwds) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/driver.py", line 284, in _do [translation:ERROR] res = func() [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/translator/driver.py", line 360, in task_rtype_ootype [translation:ERROR] rtyper.specialize(dont_simplify_again=True) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 207, in specialize [translation:ERROR] self.specialize_more_blocks() [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 250, in specialize_more_blocks [translation:ERROR] self.specialize_block(block) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 402, in specialize_block [translation:ERROR] self.translate_hl_to_ll(hop, varmapping) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 531, in translate_hl_to_ll [translation:ERROR] resultvar = hop.dispatch() [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py", line 759, in dispatch [translation:ERROR] return translate_meth(self) [translation:ERROR] File "<17262-codegen /tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rtyper.py:601>", line 4, in translate_op_simple_call [translation:ERROR] return r_arg1.rtype_simple_call(hop) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rbuiltin.py", line 117, in rtype_simple_call [translation:ERROR] return self._call(hop2) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rtyper/rbuiltin.py", line 108, in _call [translation:ERROR] v_result = bltintyper(hop2, **kwds_i) [translation:ERROR] File "/tmp/tmp/pypy/work/pypy-pypy-4b60269153b5/rpython/rlib/objectmodel.py", line 370, in specialize_call [translation:ERROR] hop.gendirectcall(r_list.LIST._ll_resize_hint, v_list, v_sizehint) [translation:ERROR] AttributeError: 'List' object has no attribute '_ll_resize_hint' Also of note: # mono --version Mono JIT compiler version 3.0.3 (tarball Wed May 8 19:40:23 UTC 2013) Copyright (C) 2002-2012 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com TLS: __thread SIGSEGV: altstack Notification: kqueue Architecture: x86 Disabled: none Misc: softdebug LLVM: supported, not enabled. GC: Included Boehm (with typed GC and Parallel Mark) Regards

We should probably just delete it at this point, it's completely unmaintained, doesn't work, and just confuses people; if someone wants to ressurect it, hg log should be good enough. Alex On Wed, May 8, 2013 at 1:26 PM, Maciej Fijalkowski <fijall@gmail.com> wrote:
-- "I disapprove of what you say, but I will defend to the death your right to say it." -- Evelyn Beatrice Hall (summarizing Voltaire) "The people's good is the highest law." -- Cicero GPG Key fingerprint: 125F 5C67 DFE9 4084

Hi all, since there basically is no maintained ootype backend i wonder about removing the ootype vs lltype abstraction together with them, comments? -- Ronny On 05/08/2013 11:12 PM, Maciej Fijalkowski wrote:

I agree with this, the abstraction doesn't really work well right now, there's way too much code duplication. If we seriously want to have an lltype/ootype distinction this should be redone from scratch (IMO). Alex On Wed, May 8, 2013 at 2:26 PM, Ronny Pfannschmidt < Ronny.Pfannschmidt@gmx.de> wrote:
-- "I disapprove of what you say, but I will defend to the death your right to say it." -- Evelyn Beatrice Hall (summarizing Voltaire) "The people's good is the highest law." -- Cicero GPG Key fingerprint: 125F 5C67 DFE9 4084

Hi all, On Thu, May 9, 2013 at 10:01 AM, Antonio Cuni <anto.cuni@gmail.com> wrote:
Although I have an emotional feeling with that piece of code, I think that Alex is right.
I also tend to agree. Killing stuff that nobody seriously cares about is sad but good, particularly when it adds some otherwise-unnecessary levels of abstractions everywhere. We should ideally wait e.g. one month for feedback from other developers that may still have plans there. And no, before someone asks, asmjs wouldn't need the OO backend but more likely hacks on top of the LL backend. The OO-vs-LL levels of abstractions are wrong there. A bientôt, Armin.

I really wish pypy is able to support jvm, cli and dalvik, so that it is possible to write core business logic in python which runs everywhere. Is there any plan to implement a better ootype as well as OO backends? On Thu, May 9, 2013 at 2:19 AM, Armin Rigo <arigo@tunes.org> wrote:

On 22 May 2013 16:11, James Lan <jameslan@gmail.com> wrote:
Nobody is working on any of the OO backends at the moment. It might be worthwhile to document what we mean by 'from scratch', too. Graphs that haven't been rtyped actually have most of the information that oo-style or untyped backends might care about, the most significant things missing probably involve dealing with constants as well as the extregistry. -- William Leslie Notice: Likely much of this email is, by the nature of copyright, covered under copyright law. You absolutely may reproduce any part of it in accordance with the copyright law of the nation you are reading this in. Any attempt to deny you those rights would be illegal without prior contractual agreement.

2013/5/9 Armin Rigo <arigo@tunes.org>
It's been almost 2 months. Can we kill it *now*? I've just started a branch: https://bitbucket.org/pypy/pypy/commits/branch/kill-ootype It looks like killing it properly requires some work.

Yes, I think we can kill it (if you want some help deleting code, let us know :P) Alex On Sun, Jul 7, 2013 at 9:39 AM, Ronan Lamy <ronan.lamy@gmail.com> wrote:
-- "I disapprove of what you say, but I will defend to the death your right to say it." -- Evelyn Beatrice Hall (summarizing Voltaire) "The people's good is the highest law." -- Cicero GPG Key fingerprint: 125F 5C67 DFE9 4084

Le 07/07/13 00:42, Alex Gaynor a écrit :
Yes, I think we can kill it (if you want some help deleting code, let us know :P)
The branch has just been merged. However, there's some more cleanup to do, chiefly getting rid of the type_system abstraction. I've started looking into it, it seems that rpython/rtyper/lltypesystem/ can be removed entirely with its contents merged with rpython/rtyper/.
participants (9)
-
Alex Gaynor
-
Antonio Cuni
-
Armin Rigo
-
David Naylor
-
James Lan
-
Maciej Fijalkowski
-
Ronan Lamy
-
Ronny Pfannschmidt
-
William ML Leslie