[IronPython] Test Results: IronPython 2.0 Alpha 3/4, Kamaelia, Nested Yields, MS.NET and Mono 1.2.5./trunk/ r85570

M. David Peterson xmlhacker at gmail.com
Mon Sep 10 19:31:27 CEST 2007


I'll be filing a proper bug report to Mono Bugzilla shortly, but in
follow-up to a conversation Michael Sparks and I had in #kamaelia earlier
this morning the following is the result of running a simple test on
IronPython 2.0 Alpha 4 on Windows and Alpha 3 and 4 on Mono 1.2.5./trunk/r85570.

Firstly, on MS.NET/IP2a4, which works as would be expected,

>>> class microprocess(object):
...     def __init__(self):
...         super(microprocess, self).__init__()
...     def main(self): #<--- Look its here!!!
...         yield 1
...
>>> class printer(microprocess):
...     def __init__(self, tag):
...         super(printer, self).__init__()
...         self.tag = tag
...     def main(self):
...         while 1:
...             yield 1 # Must be a generator
...             print self.tag
...
>>> X = printer("Hello World")
>>>

Secondly on Mono 1.2.5./trunk/ r85570 and the stock IP2a4 (there's a
compilation error at the moment with the same mentioned Mono SVN version)

m-david-petersons-computer:~/Projects/extf.googlecode.com/vendor/IronPython-
2.0A4 mdavid$ mono -V
Mono JIT compiler version 1.2.5 (/trunk/ r85570)
Copyright (C) 2002-2007 Novell, Inc and Contributors. www.mono-project.com
        TLS:           normal
        GC:            Included Boehm (with typed GC)
        SIGSEGV:       normal
        Notification:  Thread + polling
        Architecture:  x86
        Disabled:      none

m-david-petersons-computer:~/Projects/extf.googlecode.com/vendor/IronPython-
2.0A4 mdavid$ mono ipy.exe -X:TabCompletion -X:ColorfulConsole
IronPython console: IronPython 2.0A4 (2.0.10904.02) on .NET 2.0.50727.42
Copyright (c) Microsoft Corporation. All rights reserved.
>>> class microprocess(object):
...     def __init__(self):
...         super(microprocess, self).__init__()
...     def main(self): #<--- Look its here!!!
...         yield 1
...
>>> class printer(microprocess):
...     def __init__(self, tag):
...         super(printer, self).__init__()
...         self.tag = tag
...     def main(self):
...         while 1:
...             yield 1 # Must be a generator
...             print self.tag
...
>>> X = printer("Hello World")

** ERROR **: file mini.c: line 4020 (mono_method_to_ir): assertion failed:
(!sig->has_type_parameters)
aborting...
Stacktrace:

  at IronPython.NewTypes.System.Object_1.GetRule (
Microsoft.Scripting.Actions.Action,Microsoft.Scripting.CodeContext,object[])
<0xffffffff>
  at IronPython.NewTypes.System.Object_1.GetRule (
Microsoft.Scripting.Actions.Action,Microsoft.Scripting.CodeContext,object[])
<0x00017>
  at Microsoft.Scripting.Actions.ActionBinder.GetRule (
Microsoft.Scripting.CodeContext,Microsoft.Scripting.Actions.Action,object[])
<0x00108>
  at Microsoft.Scripting.Actions.DynamicSite`3.UpdateBindingAndInvoke (
Microsoft.Scripting.CodeContext,object,object) <0x00162>
  at UninitializedTargetHelper`7.Invoke2 (
Microsoft.Scripting.Actions.DynamicSite`3,Microsoft.Scripting.CodeContext,object,object)
<0x00019>
  at Microsoft.Scripting.Actions.DynamicSite`3.Invoke (
Microsoft.Scripting.CodeContext,object,object) <0x0001e>
  at (wrapper dynamic-method) System.Object.__init__$5##17 (object[],
Microsoft.Scripting.CodeContext,object,object) <0xffffffff>
  at (wrapper dynamic-method) System.Object._stub_##23 (object[],
Microsoft.Scripting.Actions.DynamicSite`4,Microsoft.Scripting.CodeContext,object,object,string)
<0xffffffff>
  at Microsoft.Scripting.Actions.DynamicSite`4.UpdateBindingAndInvoke (
Microsoft.Scripting.CodeContext,object,object,string) <0x00282>
  at UninitializedTargetHelper`7.Invoke3 (
Microsoft.Scripting.Actions.DynamicSite`4,Microsoft.Scripting.CodeContext,object,object,string)
<0x0001f>
  at Microsoft.Scripting.Actions.DynamicSite`4.Invoke (
Microsoft.Scripting.CodeContext,object,object,string) <0x00021>
  at (wrapper dynamic-method) System.Object._stub_##22 (object[],
Microsoft.Scripting.Actions.DynamicSite`3,Microsoft.Scripting.CodeContext,object,string)
<0xffffffff>
  at Microsoft.Scripting.Actions.DynamicSite`3.UpdateBindingAndInvoke (
Microsoft.Scripting.CodeContext,object,string) <0x00252>
  at UninitializedTargetHelper`7.Invoke2 (
Microsoft.Scripting.Actions.DynamicSite`3,Microsoft.Scripting.CodeContext,object,string)
<0x00019>
  at Microsoft.Scripting.Actions.DynamicSite`3.Invoke (
Microsoft.Scripting.CodeContext,object,string) <0x0001e>
  at (wrapper dynamic-method) System.Object._stub_##21 (object[],
Microsoft.Scripting.Actions.DynamicSite`3,Microsoft.Scripting.CodeContext,object,string)
<0xffffffff>
  at Microsoft.Scripting.Actions.DynamicSite`3.UpdateBindingAndInvoke (
Microsoft.Scripting.CodeContext,object,string) <0x00252>
  at UninitializedTargetHelper`7.Invoke2 (
Microsoft.Scripting.Actions.DynamicSite`3,Microsoft.Scripting.CodeContext,object,string)
<0x00019>
  at Microsoft.Scripting.Actions.DynamicSite`3.Invoke (
Microsoft.Scripting.CodeContext,object,string) <0x0001e>
  at (wrapper dynamic-method) System.Object.##20 (object[],
Microsoft.Scripting.CodeContext) <0xffffffff>
  at Microsoft.Scripting.ScriptCode.Run (Microsoft.Scripting.CodeContext,bool)
<0x00232>
  at Microsoft.Scripting.ScriptCode.Run (Microsoft.Scripting.ScriptModule)
<0x00087>
  at Microsoft.Scripting.Hosting.CompiledCode.Evaluate (
Microsoft.Scripting.IScriptModule) <0x00068>
  at Microsoft.Scripting.Hosting.ScriptEngine.ExecuteInteractiveCode(string,
Microsoft.Scripting.IScriptModule) <0x00038>
  at Microsoft.Scripting.Hosting.ScriptEngine.ExecuteCommand (string,
Microsoft.Scripting.IScriptModule) <0x00140>
  at Microsoft.Scripting.Shell.CommandLine.RunOneInteraction () <0x000c4>
  at Microsoft.Scripting.Shell.CommandLine.TryInteractiveAction () <0x00032>
  at IronPython.Hosting.PythonCommandLine.TryInteractiveAction () <0x00023>
  at Microsoft.Scripting.Shell.CommandLine.RunInteractiveLoop () <0x00094>
  at IronPython.Hosting.PythonCommandLine.RunInteractive () <0x0009c>
  at Microsoft.Scripting.Shell.CommandLine.Run (
Microsoft.Scripting.Hosting.IScriptEngine,Microsoft.Scripting.Shell.IConsole
,Microsoft.Scripting.Shell.ConsoleOptions) <0x00104>
  at Microsoft.Scripting.Hosting.ConsoleHost.RunCommandLine (
Microsoft.Scripting.OptionsParser) <0x001d8>
  at Microsoft.Scripting.Hosting.ConsoleHost.ExecuteInternal () <0x002d6>
  at Microsoft.Scripting.Hosting.ConsoleHost.Execute () <0x000be>
  at Microsoft.Scripting.Hosting.ConsoleHost.Run (string[]) <0x00129>
  at PythonConsoleHost.Main (string[]) <0x00030>
  at (wrapper runtime-invoke) PythonConsoleHost.runtime_invoke_int_string[]
(object,intptr,intptr,intptr) <0xffffffff>
Abort trap

Secondly on Mono 1.2.5./trunk/ r85570 and IP2a3 compiled w/ the same diff
and nant build file provided by Miguel and Seo @
http://www.nabble.com/-IronPython--IronPython-2.0a3-Unix-Makefiles-t4233684.html

m-david-petersons-computer:~/Projects/extf.googlecode.com/vendor/IronPython-
2.0A3/Src mdavid$ mono ipy.exe -X:TabCompletion -X:ColorfulConsole
IronPython console: IronPython 2.0A3 (2.0.10724.00) on .NET 2.0.50727.42
Copyright (c) Microsoft Corporation. All rights reserved.
>>> class microprocess(object):
...     def __init__(self):
...         super(microprocess, self).__init__()
...     def main(self): #<--- Look its here!!!
...         yield 1
...
>>> class printer(microprocess):
...     def __init__(self, tag):
...         super(printer, self).__init__()
...         self.tag = tag
...     def main(self):
...         while 1:
...             yield 1 # Must be a generator
...             print self.tag
...
>>> X = printer("Hello World")

** ERROR **: file mini.c: line 4020 (mono_method_to_ir): assertion failed:
(!sig->has_type_parameters)
aborting...
Stacktrace:

  at IronPython.NewTypes.System.Object_1.GetRule (
Microsoft.Scripting.Actions.Action,Microsoft.Scripting.CodeContext,object[])
<0xffffffff>
  at IronPython.NewTypes.System.Object_1.GetRule (
Microsoft.Scripting.Actions.Action,Microsoft.Scripting.CodeContext,object[])
<0x00017>
  at Microsoft.Scripting.Actions.ActionBinder.GetRule (
Microsoft.Scripting.CodeContext,Microsoft.Scripting.Actions.Action,object[])
<0x001b9>
  at Microsoft.Scripting.Actions.DynamicSite`3.UpdateBindingAndInvoke (
Microsoft.Scripting.CodeContext,object,object) <0x000ca>
  at UninitializedTargetHelper`7.Invoke2 (
Microsoft.Scripting.Actions.DynamicSite`3,Microsoft.Scripting.CodeContext,object,object)
<0x00019>
  at Microsoft.Scripting.Actions.DynamicSite`3.Invoke (
Microsoft.Scripting.CodeContext,object,object) <0x0001e>
  at (wrapper dynamic-method) System.Object.__init__$5##12 (object[],
Microsoft.Scripting.CodeContext,object,object) <0xffffffff>
  at IronPython.Runtime.Calls.FunctionWithContext2.Call (
Microsoft.Scripting.CodeContext,object,object) <0x00030>
  at IronPython.Runtime.Calls.PythonFunction.CallInstance (
Microsoft.Scripting.CodeContext,object,object) <0x00017>
  at IronPython.Runtime.Calls.Method.Call
(Microsoft.Scripting.CodeContext,object)
<0x0004a>
  at Microsoft.Scripting.RuntimeHelpers.CallWithContext (
Microsoft.Scripting.CodeContext,object,object) <0x0003b>
  at (wrapper dynamic-method) System.Object._stub_##17 (object[],
Microsoft.Scripting.Actions.DynamicSite`3,Microsoft.Scripting.CodeContext,object,string)
<0xffffffff>
  at Microsoft.Scripting.Actions.DynamicSite`3.UpdateBindingAndInvoke (
Microsoft.Scripting.CodeContext,object,string) <0x00155>
  at UninitializedTargetHelper`7.Invoke2 (
Microsoft.Scripting.Actions.DynamicSite`3,Microsoft.Scripting.CodeContext,object,string)
<0x00019>
  at Microsoft.Scripting.Actions.DynamicSite`3.Invoke (
Microsoft.Scripting.CodeContext,object,string) <0x0001e>
  at (wrapper dynamic-method) System.Object._stub_##16 (object[],
Microsoft.Scripting.Actions.DynamicSite`3,Microsoft.Scripting.CodeContext,object,string)
<0xffffffff>
  at Microsoft.Scripting.Actions.DynamicSite`3.UpdateBindingAndInvoke (
Microsoft.Scripting.CodeContext,object,string) <0x00155>
  at UninitializedTargetHelper`7.Invoke2 (
Microsoft.Scripting.Actions.DynamicSite`3,Microsoft.Scripting.CodeContext,object,string)
<0x00019>
  at Microsoft.Scripting.Actions.DynamicSite`3.Invoke (
Microsoft.Scripting.CodeContext,object,string) <0x0001e>
  at (wrapper dynamic-method) System.Object.<string>##15 (object[],
Microsoft.Scripting.CodeContext) <0xffffffff>
  at Microsoft.Scripting.ScriptCode.Run (Microsoft.Scripting.CodeContext)
<0x0010c>
  at Microsoft.Scripting.ScriptCode.Run (Microsoft.Scripting.ScriptModule)
<0x00074>
  at Microsoft.Scripting.Hosting.CompiledCode.Evaluate (
Microsoft.Scripting.IScriptModule) <0x00068>
  at Microsoft.Scripting.Hosting.ScriptEngine.ExecuteInteractiveCode(string,
Microsoft.Scripting.IScriptModule) <0x0003a>
  at Microsoft.Scripting.Hosting.ScriptEngine.ExecuteCommand (string,
Microsoft.Scripting.IScriptModule) <0x0015a>
  at Microsoft.Scripting.Shell.CommandLine.RunOneInteraction () <0x000c4>
  at Microsoft.Scripting.Shell.CommandLine.TryInteractiveAction () <0x0004e>
  at IronPython.Hosting.PythonCommandLine.TryInteractiveAction () <0x00023>
  at Microsoft.Scripting.Shell.CommandLine.RunInteractiveLoop () <0x000a0>
  at IronPython.Hosting.PythonCommandLine.RunInteractive () <0x000b6>
  at Microsoft.Scripting.Shell.CommandLine.Run (
Microsoft.Scripting.Hosting.IScriptEngine,Microsoft.Scripting.Shell.IConsole
,Microsoft.Scripting.Shell.ConsoleOptions) <0x000f0>
  at Microsoft.Scripting.Hosting.ConsoleHost.RunCommandLine (
Microsoft.Scripting.OptionsParser) <0x0018c>
  at Microsoft.Scripting.Hosting.ConsoleHost.ExecuteInternal () <0x002a1>
  at Microsoft.Scripting.Hosting.ConsoleHost.Execute () <0x000be>
  at Microsoft.Scripting.Hosting.ConsoleHost.Run (string[]) <0x00162>
  at PythonConsoleHost.Main (string[]) <0x00032>
  at (wrapper runtime-invoke) PythonConsoleHost.runtime_invoke_int_string[]
(object,intptr,intptr,intptr) <0xffffffff>
[1]+  Killed                  mono ipy.exe -X:TabCompletion
-X:ColorfulConsole
Abort trap


-- 
/M:D

M. David Peterson
http://mdavid.name | http://www.oreillynet.com/pub/au/2354 |
http://dev.aol.com/blog/3155
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20070910/65232200/attachment.html>


More information about the Ironpython-users mailing list