<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>irony Work Item Rss Feed</title><link>http://www.codeplex.com/irony/WorkItem/List.aspx</link><description>irony Work Item Rss Description</description><item><title>Commented Unassigned: crash with rv null in ComputeProductionFlags [9881]</title><link>http://irony.codeplex.com/workitem/9881</link><description>I got the crash &amp;#40;shown in the attached screenshot&amp;#41;.&lt;br /&gt;Comments: I think you&amp;#39;ll have to fix both Op_Plus and Op_Pipe to handle null inputs.</description><author>brantheman</author><pubDate>Fri, 26 Apr 2013 19:58:15 GMT</pubDate><guid isPermaLink="false">Commented Unassigned: crash with rv null in ComputeProductionFlags [9881] 20130426075815P</guid></item><item><title>Commented Unassigned: crash with rv null in ComputeProductionFlags [9881]</title><link>http://irony.codeplex.com/workitem/9881</link><description>I got the crash &amp;#40;shown in the attached screenshot&amp;#41;.&lt;br /&gt;Comments: yeah, I see the problem. I think the best place to add this is in overload of &amp;#34;&amp;#43;&amp;#34; operator. Will add in the next code update&amp;#10;thanks&amp;#10;Roman</description><author>rivantsov</author><pubDate>Fri, 26 Apr 2013 17:27:43 GMT</pubDate><guid isPermaLink="false">Commented Unassigned: crash with rv null in ComputeProductionFlags [9881] 20130426052743P</guid></item><item><title>Commented Unassigned: crash with rv null in ComputeProductionFlags [9881]</title><link>http://irony.codeplex.com/workitem/9881</link><description>I got the crash &amp;#40;shown in the attached screenshot&amp;#41;.&lt;br /&gt;Comments: I find that there was a problem in my code. I was using the &amp;#124;&amp;#61; operator on a rule that had not been initialized. It would be nice if that case was handled appropriately. The &amp;#124; operator should return the non-null item out of two.</description><author>brantheman</author><pubDate>Thu, 25 Apr 2013 21:15:54 GMT</pubDate><guid isPermaLink="false">Commented Unassigned: crash with rv null in ComputeProductionFlags [9881] 20130425091554P</guid></item><item><title>Commented Unassigned: crash with rv null in ComputeProductionFlags [9881]</title><link>http://irony.codeplex.com/workitem/9881</link><description>I got the crash &amp;#40;shown in the attached screenshot&amp;#41;.&lt;br /&gt;Comments: At the point of the crash the parent CreateProduction lvalue &amp;#61; &amp;#123;StartSectionRow.grp1&amp;#125;</description><author>brantheman</author><pubDate>Thu, 25 Apr 2013 21:10:21 GMT</pubDate><guid isPermaLink="false">Commented Unassigned: crash with rv null in ComputeProductionFlags [9881] 20130425091021P</guid></item><item><title>Commented Unassigned: crash with rv null in ComputeProductionFlags [9881]</title><link>http://irony.codeplex.com/workitem/9881</link><description>I got the crash &amp;#40;shown in the attached screenshot&amp;#41;.&lt;br /&gt;Comments: I&amp;#39;ve attached my grammar also.</description><author>brantheman</author><pubDate>Thu, 25 Apr 2013 21:08:20 GMT</pubDate><guid isPermaLink="false">Commented Unassigned: crash with rv null in ComputeProductionFlags [9881] 20130425090820P</guid></item><item><title>Created Unassigned: crash with rv null in ComputeProductionFlags [9881]</title><link>http://irony.codeplex.com/workitem/9881</link><description>I got the crash &amp;#40;shown in the attached screenshot&amp;#41;.&lt;br /&gt;</description><author>brantheman</author><pubDate>Thu, 25 Apr 2013 21:05:26 GMT</pubDate><guid isPermaLink="false">Created Unassigned: crash with rv null in ComputeProductionFlags [9881] 20130425090526P</guid></item><item><title>Closed Issue: Possible issue with Scope.GetParent() [9880]</title><link>http://irony.codeplex.com/workitem/9880</link><description>Is there some reason for the implementation of &amp;#96;Irony.Interpreter.Scope.GetParent&amp;#40;&amp;#41;&amp;#96; starting to return null for long evaluations&amp;#63; I find that replacing the final &amp;#96;return null&amp;#96; with &amp;#96;return Creator&amp;#96; works fine for me. This is the _my_ workable version&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;protected Scope GetParent&amp;#40;&amp;#41; &amp;#123;&lt;br /&gt;      &amp;#47;&amp;#47; Walk along creators chain and find a scope with ScopeInfo matching this.ScopeInfo.Parent&lt;br /&gt;      var parentScopeInfo &amp;#61; Info.Parent&amp;#59;&lt;br /&gt;      if &amp;#40;parentScopeInfo &amp;#61;&amp;#61; null&amp;#41;&lt;br /&gt;        return null&amp;#59; &lt;br /&gt;      var current &amp;#61; Creator&amp;#59;&lt;br /&gt;      while &amp;#40;current &amp;#33;&amp;#61; null&amp;#41; &amp;#123;&lt;br /&gt;        if &amp;#40;current.Info &amp;#61;&amp;#61; parentScopeInfo&amp;#41;&lt;br /&gt;          return current&amp;#59;&lt;br /&gt;        current &amp;#61; current.Creator&amp;#59; &lt;br /&gt;      &amp;#125;&lt;br /&gt;      return Creator&amp;#59;&lt;br /&gt;      &amp;#47;&amp;#47;return null&amp;#59;&lt;br /&gt;    &amp;#125;&amp;#47;&amp;#47; method&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;I am fixing or missing something here&amp;#63;&lt;br /&gt;&lt;br /&gt;I implemented merge sort in my lang, and for lists 1 to 4 items long works fine, for anything bigger than that, the previous function starts to return nulls. With the fix, I can sort bigger lists &amp;#40;I tested up to 16 elements..., gonna run more tests when I can&amp;#41;.&lt;br /&gt;&lt;br /&gt;__Some background__&lt;br /&gt;&lt;br /&gt;My lang &amp;#40;https&amp;#58;&amp;#47;&amp;#47;github.com&amp;#47;fabriceleal&amp;#47;Multitasks&amp;#41; executes each expression in a separate .NET-Thread &amp;#40;as soon as I hit this problem, I rewrote it so it now runs on a single .NET-Thread&amp;#41;, so I create a new &amp;#96;ScriptThread&amp;#96; for the evaluation of each expression. The code I&amp;#39;m using for creating a new &amp;#96;ScriptThread&amp;#96; is this &amp;#40;am I doing this ok&amp;#63; I had to peek at the source, I was unable to find up-to-date info on how to do this&amp;#41;&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&amp;#47;&amp;#47; current is the current ScriptThread at the time of evaluation&lt;br /&gt;&amp;#47;&amp;#47; _this is an AstNode&lt;br /&gt;var subthread &amp;#61; new ScriptThread&amp;#40;current.App&amp;#41;&amp;#59;&lt;br /&gt;var localScopeInfo &amp;#61; new ScopeInfo&amp;#40;_this, true&amp;#41;&amp;#59;&lt;br /&gt;                &lt;br /&gt;_this.DependentScopeInfo &amp;#61; localScopeInfo&amp;#59;&lt;br /&gt;                &lt;br /&gt;subthread.CurrentScope &amp;#61; current.CurrentScope&amp;#59;                &lt;br /&gt;subthread.PushClosureScope&amp;#40;localScopeInfo, subthread.CurrentScope, new object&amp;#91;&amp;#93; &amp;#123; &amp;#125;&amp;#41;&amp;#59;&lt;br /&gt;subthread.CurrentNode &amp;#61; _this&amp;#59;&lt;br /&gt;            &lt;br /&gt;return subthread&amp;#59;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;Expressions can be piped, so the environment must follow, hence the &amp;#96;ClosureScope &amp;#96; stuff.&lt;br /&gt;Comments: explained in comment</description><author>rivantsov</author><pubDate>Fri, 05 Apr 2013 06:15:12 GMT</pubDate><guid isPermaLink="false">Closed Issue: Possible issue with Scope.GetParent() [9880] 20130405061512A</guid></item><item><title>Commented Issue: Possible issue with Scope.GetParent() [9880]</title><link>http://irony.codeplex.com/workitem/9880</link><description>Is there some reason for the implementation of &amp;#96;Irony.Interpreter.Scope.GetParent&amp;#40;&amp;#41;&amp;#96; starting to return null for long evaluations&amp;#63; I find that replacing the final &amp;#96;return null&amp;#96; with &amp;#96;return Creator&amp;#96; works fine for me. This is the _my_ workable version&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;protected Scope GetParent&amp;#40;&amp;#41; &amp;#123;&lt;br /&gt;      &amp;#47;&amp;#47; Walk along creators chain and find a scope with ScopeInfo matching this.ScopeInfo.Parent&lt;br /&gt;      var parentScopeInfo &amp;#61; Info.Parent&amp;#59;&lt;br /&gt;      if &amp;#40;parentScopeInfo &amp;#61;&amp;#61; null&amp;#41;&lt;br /&gt;        return null&amp;#59; &lt;br /&gt;      var current &amp;#61; Creator&amp;#59;&lt;br /&gt;      while &amp;#40;current &amp;#33;&amp;#61; null&amp;#41; &amp;#123;&lt;br /&gt;        if &amp;#40;current.Info &amp;#61;&amp;#61; parentScopeInfo&amp;#41;&lt;br /&gt;          return current&amp;#59;&lt;br /&gt;        current &amp;#61; current.Creator&amp;#59; &lt;br /&gt;      &amp;#125;&lt;br /&gt;      return Creator&amp;#59;&lt;br /&gt;      &amp;#47;&amp;#47;return null&amp;#59;&lt;br /&gt;    &amp;#125;&amp;#47;&amp;#47; method&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;I am fixing or missing something here&amp;#63;&lt;br /&gt;&lt;br /&gt;I implemented merge sort in my lang, and for lists 1 to 4 items long works fine, for anything bigger than that, the previous function starts to return nulls. With the fix, I can sort bigger lists &amp;#40;I tested up to 16 elements..., gonna run more tests when I can&amp;#41;.&lt;br /&gt;&lt;br /&gt;__Some background__&lt;br /&gt;&lt;br /&gt;My lang &amp;#40;https&amp;#58;&amp;#47;&amp;#47;github.com&amp;#47;fabriceleal&amp;#47;Multitasks&amp;#41; executes each expression in a separate .NET-Thread &amp;#40;as soon as I hit this problem, I rewrote it so it now runs on a single .NET-Thread&amp;#41;, so I create a new &amp;#96;ScriptThread&amp;#96; for the evaluation of each expression. The code I&amp;#39;m using for creating a new &amp;#96;ScriptThread&amp;#96; is this &amp;#40;am I doing this ok&amp;#63; I had to peek at the source, I was unable to find up-to-date info on how to do this&amp;#41;&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&amp;#47;&amp;#47; current is the current ScriptThread at the time of evaluation&lt;br /&gt;&amp;#47;&amp;#47; _this is an AstNode&lt;br /&gt;var subthread &amp;#61; new ScriptThread&amp;#40;current.App&amp;#41;&amp;#59;&lt;br /&gt;var localScopeInfo &amp;#61; new ScopeInfo&amp;#40;_this, true&amp;#41;&amp;#59;&lt;br /&gt;                &lt;br /&gt;_this.DependentScopeInfo &amp;#61; localScopeInfo&amp;#59;&lt;br /&gt;                &lt;br /&gt;subthread.CurrentScope &amp;#61; current.CurrentScope&amp;#59;                &lt;br /&gt;subthread.PushClosureScope&amp;#40;localScopeInfo, subthread.CurrentScope, new object&amp;#91;&amp;#93; &amp;#123; &amp;#125;&amp;#41;&amp;#59;&lt;br /&gt;subthread.CurrentNode &amp;#61; _this&amp;#59;&lt;br /&gt;            &lt;br /&gt;return subthread&amp;#59;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;Expressions can be piped, so the environment must follow, hence the &amp;#96;ClosureScope &amp;#96; stuff.&lt;br /&gt;Comments: Thanks, I&amp;#39;ll take a look into it. I remember that I tried to mimic the behavior of the built-in FunctionDefNode - LambdaNode that are used by the mini-python demo.</description><author>fabriceleal</author><pubDate>Tue, 02 Apr 2013 19:38:29 GMT</pubDate><guid isPermaLink="false">Commented Issue: Possible issue with Scope.GetParent() [9880] 20130402073829P</guid></item><item><title>Commented Issue: Possible issue with Scope.GetParent() [9880]</title><link>http://irony.codeplex.com/workitem/9880</link><description>Is there some reason for the implementation of &amp;#96;Irony.Interpreter.Scope.GetParent&amp;#40;&amp;#41;&amp;#96; starting to return null for long evaluations&amp;#63; I find that replacing the final &amp;#96;return null&amp;#96; with &amp;#96;return Creator&amp;#96; works fine for me. This is the _my_ workable version&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;protected Scope GetParent&amp;#40;&amp;#41; &amp;#123;&lt;br /&gt;      &amp;#47;&amp;#47; Walk along creators chain and find a scope with ScopeInfo matching this.ScopeInfo.Parent&lt;br /&gt;      var parentScopeInfo &amp;#61; Info.Parent&amp;#59;&lt;br /&gt;      if &amp;#40;parentScopeInfo &amp;#61;&amp;#61; null&amp;#41;&lt;br /&gt;        return null&amp;#59; &lt;br /&gt;      var current &amp;#61; Creator&amp;#59;&lt;br /&gt;      while &amp;#40;current &amp;#33;&amp;#61; null&amp;#41; &amp;#123;&lt;br /&gt;        if &amp;#40;current.Info &amp;#61;&amp;#61; parentScopeInfo&amp;#41;&lt;br /&gt;          return current&amp;#59;&lt;br /&gt;        current &amp;#61; current.Creator&amp;#59; &lt;br /&gt;      &amp;#125;&lt;br /&gt;      return Creator&amp;#59;&lt;br /&gt;      &amp;#47;&amp;#47;return null&amp;#59;&lt;br /&gt;    &amp;#125;&amp;#47;&amp;#47; method&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;I am fixing or missing something here&amp;#63;&lt;br /&gt;&lt;br /&gt;I implemented merge sort in my lang, and for lists 1 to 4 items long works fine, for anything bigger than that, the previous function starts to return nulls. With the fix, I can sort bigger lists &amp;#40;I tested up to 16 elements..., gonna run more tests when I can&amp;#41;.&lt;br /&gt;&lt;br /&gt;__Some background__&lt;br /&gt;&lt;br /&gt;My lang &amp;#40;https&amp;#58;&amp;#47;&amp;#47;github.com&amp;#47;fabriceleal&amp;#47;Multitasks&amp;#41; executes each expression in a separate .NET-Thread &amp;#40;as soon as I hit this problem, I rewrote it so it now runs on a single .NET-Thread&amp;#41;, so I create a new &amp;#96;ScriptThread&amp;#96; for the evaluation of each expression. The code I&amp;#39;m using for creating a new &amp;#96;ScriptThread&amp;#96; is this &amp;#40;am I doing this ok&amp;#63; I had to peek at the source, I was unable to find up-to-date info on how to do this&amp;#41;&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&amp;#47;&amp;#47; current is the current ScriptThread at the time of evaluation&lt;br /&gt;&amp;#47;&amp;#47; _this is an AstNode&lt;br /&gt;var subthread &amp;#61; new ScriptThread&amp;#40;current.App&amp;#41;&amp;#59;&lt;br /&gt;var localScopeInfo &amp;#61; new ScopeInfo&amp;#40;_this, true&amp;#41;&amp;#59;&lt;br /&gt;                &lt;br /&gt;_this.DependentScopeInfo &amp;#61; localScopeInfo&amp;#59;&lt;br /&gt;                &lt;br /&gt;subthread.CurrentScope &amp;#61; current.CurrentScope&amp;#59;                &lt;br /&gt;subthread.PushClosureScope&amp;#40;localScopeInfo, subthread.CurrentScope, new object&amp;#91;&amp;#93; &amp;#123; &amp;#125;&amp;#41;&amp;#59;&lt;br /&gt;subthread.CurrentNode &amp;#61; _this&amp;#59;&lt;br /&gt;            &lt;br /&gt;return subthread&amp;#59;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;Expressions can be piped, so the environment must follow, hence the &amp;#96;ClosureScope &amp;#96; stuff.&lt;br /&gt;Comments: Nope, the ScriptThread does everything correctly. The problem is the way you create Scope&amp;#47;ScopeInfo. You CREATE a new scope info - this is wrong. ScopeInfo is a static &amp;#40;meta-data object&amp;#41; attached to AstNode &amp;#40;some ast nodes like function definition&amp;#41; - property DependentScopeInfo. You should use this value &amp;#40;from AstNode that represents the worker function of the new thread, or its parent scope - function or module that defines it&amp;#41;&amp;#10;That&amp;#39;s why in your case the ScriptThread code fails to match ScopeInfo - because you create &amp;#39;temp&amp;#47;fake&amp;#39; one&amp;#59;  </description><author>rivantsov</author><pubDate>Tue, 02 Apr 2013 05:49:11 GMT</pubDate><guid isPermaLink="false">Commented Issue: Possible issue with Scope.GetParent() [9880] 20130402054911A</guid></item><item><title>Edited Issue: Possible issue with Scope.GetParent() [9880]</title><link>http://irony.codeplex.com/workitem/9880</link><description>Is there some reason for the implementation of &amp;#96;Irony.Interpreter.Scope.GetParent&amp;#40;&amp;#41;&amp;#96; starting to return null for long evaluations&amp;#63; I find that replacing the final &amp;#96;return null&amp;#96; with &amp;#96;return Creator&amp;#96; works fine for me. This is the _my_ workable version&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;protected Scope GetParent&amp;#40;&amp;#41; &amp;#123;&lt;br /&gt;      &amp;#47;&amp;#47; Walk along creators chain and find a scope with ScopeInfo matching this.ScopeInfo.Parent&lt;br /&gt;      var parentScopeInfo &amp;#61; Info.Parent&amp;#59;&lt;br /&gt;      if &amp;#40;parentScopeInfo &amp;#61;&amp;#61; null&amp;#41;&lt;br /&gt;        return null&amp;#59; &lt;br /&gt;      var current &amp;#61; Creator&amp;#59;&lt;br /&gt;      while &amp;#40;current &amp;#33;&amp;#61; null&amp;#41; &amp;#123;&lt;br /&gt;        if &amp;#40;current.Info &amp;#61;&amp;#61; parentScopeInfo&amp;#41;&lt;br /&gt;          return current&amp;#59;&lt;br /&gt;        current &amp;#61; current.Creator&amp;#59; &lt;br /&gt;      &amp;#125;&lt;br /&gt;      return Creator&amp;#59;&lt;br /&gt;      &amp;#47;&amp;#47;return null&amp;#59;&lt;br /&gt;    &amp;#125;&amp;#47;&amp;#47; method&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;I am fixing or missing something here&amp;#63;&lt;br /&gt;&lt;br /&gt;I implemented merge sort in my lang, and for lists 1 to 4 items long works fine, for anything bigger than that, the previous function starts to return nulls. With the fix, I can sort bigger lists &amp;#40;I tested up to 16 elements..., gonna run more tests when I can&amp;#41;.&lt;br /&gt;&lt;br /&gt;__Some background__&lt;br /&gt;&lt;br /&gt;My lang &amp;#40;https&amp;#58;&amp;#47;&amp;#47;github.com&amp;#47;fabriceleal&amp;#47;Multitasks&amp;#41; executes each expression in a separate .NET-Thread &amp;#40;as soon as I hit this problem, I rewrote it so it now runs on a single .NET-Thread&amp;#41;, so I create a new &amp;#96;ScriptThread&amp;#96; for the evaluation of each expression. The code I&amp;#39;m using for creating a new &amp;#96;ScriptThread&amp;#96; is this &amp;#40;am I doing this ok&amp;#63; I had to peek at the source, I was unable to find up-to-date info on how to do this&amp;#41;&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&amp;#47;&amp;#47; current is the current ScriptThread at the time of evaluation&lt;br /&gt;&amp;#47;&amp;#47; _this is an AstNode&lt;br /&gt;var subthread &amp;#61; new ScriptThread&amp;#40;current.App&amp;#41;&amp;#59;&lt;br /&gt;var localScopeInfo &amp;#61; new ScopeInfo&amp;#40;_this, true&amp;#41;&amp;#59;&lt;br /&gt;                &lt;br /&gt;_this.DependentScopeInfo &amp;#61; localScopeInfo&amp;#59;&lt;br /&gt;                &lt;br /&gt;subthread.CurrentScope &amp;#61; current.CurrentScope&amp;#59;                &lt;br /&gt;subthread.PushClosureScope&amp;#40;localScopeInfo, subthread.CurrentScope, new object&amp;#91;&amp;#93; &amp;#123; &amp;#125;&amp;#41;&amp;#59;&lt;br /&gt;subthread.CurrentNode &amp;#61; _this&amp;#59;&lt;br /&gt;            &lt;br /&gt;return subthread&amp;#59;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;Expressions can be piped, so the environment must follow, hence the &amp;#96;ClosureScope &amp;#96; stuff.&lt;br /&gt;</description><author>fabriceleal</author><pubDate>Sun, 31 Mar 2013 22:46:21 GMT</pubDate><guid isPermaLink="false">Edited Issue: Possible issue with Scope.GetParent() [9880] 20130331104621P</guid></item><item><title>Created Issue: Possible issue with Scope.GetParent() [9880]</title><link>http://irony.codeplex.com/workitem/9880</link><description>Is there some reason for the implementation of &amp;#96;Irony.Interpreter.Scope.GetParent&amp;#40;&amp;#41;&amp;#96; starting to return null for long evaluations&amp;#63; I find that replacing the final &amp;#96;return null&amp;#96; with &amp;#96;return Creator&amp;#96; works fine for me. This is the _my_ workable version&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;protected Scope GetParent&amp;#40;&amp;#41; &amp;#123;&lt;br /&gt;      &amp;#47;&amp;#47; Walk along creators chain and find a scope with ScopeInfo matching this.ScopeInfo.Parent&lt;br /&gt;      var parentScopeInfo &amp;#61; Info.Parent&amp;#59;&lt;br /&gt;      if &amp;#40;parentScopeInfo &amp;#61;&amp;#61; null&amp;#41;&lt;br /&gt;        return null&amp;#59; &lt;br /&gt;      var current &amp;#61; Creator&amp;#59;&lt;br /&gt;      while &amp;#40;current &amp;#33;&amp;#61; null&amp;#41; &amp;#123;&lt;br /&gt;        if &amp;#40;current.Info &amp;#61;&amp;#61; parentScopeInfo&amp;#41;&lt;br /&gt;          return current&amp;#59;&lt;br /&gt;        current &amp;#61; current.Creator&amp;#59; &lt;br /&gt;      &amp;#125;&lt;br /&gt;      return Creator&amp;#59;&lt;br /&gt;      &amp;#47;&amp;#47;return null&amp;#59;&lt;br /&gt;    &amp;#125;&amp;#47;&amp;#47; method&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;I am fixing or missing something here&amp;#63;&lt;br /&gt;&lt;br /&gt;I implemented merge sort in my lang, and for lists 1 to 4 items long works fine, for anything bigger than that, the previous function starts to return nulls. With the fix, I can sort bigger lists &amp;#40;I tested up to 16 elements..., gonna run more tests when I can&amp;#41;.&lt;br /&gt;&lt;br /&gt;__Some background__&lt;br /&gt;&lt;br /&gt;My lang &amp;#40;https&amp;#58;&amp;#47;&amp;#47;github.com&amp;#47;fabriceleal&amp;#47;Multitasks&amp;#41; executes each expression in a separate .NET-Thread &amp;#40;as soon as I hit this problem, I rewrote it so it now runs on a single .NET-Thread&amp;#41;, so I create a new &amp;#96;ScriptThread&amp;#96; for the evaluation of each expression. The code I&amp;#39;m using for creating a new &amp;#96;ScriptThread&amp;#96; is this &amp;#40;_I&amp;#39;m doing this ok&amp;#63; I had to peek at the source, I was unable to find up-to-date info on how to do this_&amp;#41;&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&amp;#47;&amp;#47; current is the current ScriptThread at the time of evaluation&lt;br /&gt;&amp;#47;&amp;#47; _this is an AstNode&lt;br /&gt;var subthread &amp;#61; new ScriptThread&amp;#40;current.App&amp;#41;&amp;#59;&lt;br /&gt;var localScopeInfo &amp;#61; new ScopeInfo&amp;#40;_this, true&amp;#41;&amp;#59;&lt;br /&gt;                &lt;br /&gt;_this.DependentScopeInfo &amp;#61; localScopeInfo&amp;#59;&lt;br /&gt;                &lt;br /&gt;subthread.CurrentScope &amp;#61; current.CurrentScope&amp;#59;                &lt;br /&gt;subthread.PushClosureScope&amp;#40;localScopeInfo, subthread.CurrentScope, new object&amp;#91;&amp;#93; &amp;#123; &amp;#125;&amp;#41;&amp;#59;&lt;br /&gt;subthread.CurrentNode &amp;#61; _this&amp;#59;&lt;br /&gt;            &lt;br /&gt;return subthread&amp;#59;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;Expressions can be piped, so the environment must follow, hence the &amp;#96;ClosureScope &amp;#96; stuff.&lt;br /&gt;</description><author>fabriceleal</author><pubDate>Sun, 31 Mar 2013 22:44:12 GMT</pubDate><guid isPermaLink="false">Created Issue: Possible issue with Scope.GetParent() [9880] 20130331104412P</guid></item><item><title>Closed Issue: Bug in Irony.Interpreter.LanguageRuntime [9873]</title><link>http://irony.codeplex.com/workitem/9873</link><description>Hi Roman,&lt;br /&gt;&lt;br /&gt;Maybe I am doing something less than perfectly, but when creating an Ast tree I encountered null values in the BindingRequest.FromModule that caused an unhandled exception and failed Ast build&lt;br /&gt;&lt;br /&gt;To reproduce&lt;br /&gt;    1&amp;#41; Create a language inheriting Grammar&lt;br /&gt;    2&amp;#41; Set the LanguageFlags &amp;#61; LanguageFlags.CreateAst&amp;#59; in the Grammar&lt;br /&gt;    3&amp;#41; Override BuildAst in the custom grammar with&lt;br /&gt;&lt;br /&gt;    public override void BuildAst&amp;#40;LanguageData language, ParseTree parseTree&amp;#41;&lt;br /&gt;    &amp;#123;&lt;br /&gt;        if &amp;#40;&amp;#33;LanguageFlags.IsSet&amp;#40;LanguageFlags.CreateAst&amp;#41;&amp;#41;&lt;br /&gt;            return&amp;#59;&lt;br /&gt;&lt;br /&gt;        var astContext &amp;#61; new InterpreterAstContext&amp;#40;language&amp;#41;&amp;#59;&lt;br /&gt;        var astBuilder &amp;#61; new AstBuilder&amp;#40;astContext&amp;#41;&amp;#59;&lt;br /&gt;        astBuilder.BuildAst&amp;#40;parseTree&amp;#41;&amp;#59;&lt;br /&gt;    &amp;#125;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;To fix &lt;br /&gt;&lt;br /&gt;I added a condition to Interpreter&amp;#47;LanguageRuntime&amp;#47;LanguageRuntime_Binding.cs that request.FromModule was not null, then the AstTree was created correctly&lt;br /&gt;&lt;br /&gt;      &amp;#47;&amp;#47;3. Check external module imports&lt;br /&gt;      if &amp;#40;request.FromModule &amp;#33;&amp;#61; null&amp;#41;&lt;br /&gt;      &amp;#123;&lt;br /&gt;          foreach &amp;#40;var imp in request.FromModule.Imports&amp;#41;&lt;br /&gt;          &amp;#123;&lt;br /&gt;              var result &amp;#61; imp.Bind&amp;#40;request&amp;#41;&amp;#59;&lt;br /&gt;              if &amp;#40;result &amp;#33;&amp;#61; null&amp;#41;&lt;br /&gt;                  return result&amp;#59;&lt;br /&gt;          &amp;#125;&lt;br /&gt;      &amp;#125;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;</description><author>rivantsov</author><pubDate>Tue, 26 Feb 2013 05:18:43 GMT</pubDate><guid isPermaLink="false">Closed Issue: Bug in Irony.Interpreter.LanguageRuntime [9873] 20130226051843A</guid></item><item><title>Closed Issue: GrammarExplorer ReflectionTypeLoadException [9865]</title><link>http://irony.codeplex.com/workitem/9865</link><description>In GrammarExplorer if you try to load project dll that has dependencies&lt;br /&gt;&lt;br /&gt;fmSelectGrammars.LoadGrammars methopd will throw exception on line 84&lt;br /&gt;types &amp;#61; asm.GetTypes&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;To fix it we need to change line 73 from&lt;br /&gt;asm &amp;#61; Assembly.Load&amp;#40;File.ReadAllBytes&amp;#40;assemblyPath&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;to&lt;br /&gt;asm &amp;#61; Assembly.LoadFrom&amp;#40;assemblyPath&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;Hope it will save time&lt;br /&gt;&lt;br /&gt;OD.&lt;br /&gt;Comments: fixed</description><author>rivantsov</author><pubDate>Tue, 26 Feb 2013 05:17:52 GMT</pubDate><guid isPermaLink="false">Closed Issue: GrammarExplorer ReflectionTypeLoadException [9865] 20130226051752A</guid></item><item><title>Closed Issue: Assembly.LoadFrom is still required [9867]</title><link>http://irony.codeplex.com/workitem/9867</link><description>I&amp;#39;ve just updated to the version 54d64b40c923 and the problem with GrammarLoader failing to find and load dependent assemblies is still there &amp;#40;it throws a ReflectionTypeLoadException when you call GetTypes&amp;#40;&amp;#41;&amp;#41;.&lt;br /&gt;&lt;br /&gt;Changing GrammarLoader.LoadAssembly&amp;#40;&amp;#41; from Load&amp;#40;byte&amp;#91;&amp;#93;&amp;#41; to LoadFrom&amp;#40;filename&amp;#41; is still a workaround but it naturally destroys the reloading logic.&lt;br /&gt;&lt;br /&gt;Comments: fixed, as much it can be fixed</description><author>rivantsov</author><pubDate>Tue, 26 Feb 2013 05:16:54 GMT</pubDate><guid isPermaLink="false">Closed Issue: Assembly.LoadFrom is still required [9867] 20130226051654A</guid></item><item><title>Closed Issue: AstNodes are a struggle [9868]</title><link>http://irony.codeplex.com/workitem/9868</link><description>Hmm. After a great start, I&amp;#39;m afraid to say that I am thinking of abandoning Irony as it is just too much effort to work with it in its current form.&lt;br /&gt;&lt;br /&gt;I&amp;#39;m trying to create a simple AST from my grammar. This is proving to be a real struggle. When I Google for help, I see about ten different answers, none of which work because they are more than a few months out of date and the design seems to change that quickly.&lt;br /&gt;&lt;br /&gt;This is sad, because I feel that a small amount of effort spent on &amp;#42;simple&amp;#42; tutorials would make life so much easier for newbies like me. I definitely do not want to wade through the impressive but horrifically complicated samples, I want a simple but &amp;#42;working&amp;#42; definition of how to build an AST for a basic &amp;#40;three-line&amp;#63;&amp;#41; grammar. It&amp;#39;s not as if an AST is an esoteric requirement, after all&amp;#33;&lt;br /&gt;&lt;br /&gt;Fighting my way through the example expression grammar stuff &amp;#40;because there&amp;#39;s a lot of ancilliary &amp;#34;noise&amp;#34; that is relevant to the sample but only serves to complicate it as as a tutorial&amp;#41;, I eventually gave up and decided just to step through the code, to see what happens.&lt;br /&gt;&lt;br /&gt;What happened was that it crashed inside BuildAst with a null pointer reference. The code in that location says&amp;#58;&lt;br /&gt;&lt;br /&gt;      &amp;#47;&amp;#47;We know that either NodeCreator or DefaultNodeCreator is set&amp;#59; VerifyAstData create the DefaultNodeCreator&lt;br /&gt;&lt;br /&gt;which was patently not true.&lt;br /&gt;&lt;br /&gt;I have noticed a lot of requests for help in this area, so please would you spend 30 minutes giving a simple example of how it works without all the extra &amp;#34;noise&amp;#34; of a full working application&amp;#63; I&amp;#39;m not stupid but I really don&amp;#39;t want to learn the core of all of the library just to create an AST from my grammar. If I did that, I might as well write the whole thing myself&amp;#33;&lt;br /&gt;&lt;br /&gt;Thanks&amp;#33;&lt;br /&gt;&lt;br /&gt;Dan&lt;br /&gt;&lt;br /&gt;Comments: not a real issue, just a complaint</description><author>rivantsov</author><pubDate>Tue, 26 Feb 2013 05:16:24 GMT</pubDate><guid isPermaLink="false">Closed Issue: AstNodes are a struggle [9868] 20130226051624A</guid></item><item><title>Closed Issue: FastColoredTextBox in GrammarExplorer [9869]</title><link>http://irony.codeplex.com/workitem/9869</link><description>I&amp;#39;ve recently found a great syntax-highlighting textbox component for WinForms, FastColoredTextBox.&lt;br /&gt;It&amp;#39;s actively developed and supported by its single author, Pavel Torgashov&amp;#58;&lt;br /&gt;http&amp;#58;&amp;#47;&amp;#47;www.codeproject.com&amp;#47;Articles&amp;#47;161871&amp;#47;Fast-Colored-TextBox-for-syntax-highlighting&lt;br /&gt;&lt;br /&gt;Roman has asked for help integrating this control to the GrammarExplorer.&lt;br /&gt;&amp;#62;PS. I don&amp;#39;t mind if somebody else takes over this effort, not the original author.&lt;br /&gt;&lt;br /&gt;I&amp;#39;ve already tried looking into it, seems like it should be easy to do.&lt;br /&gt;I&amp;#39;ll integrate FCTB and push the code to my IronyContrib branch.&lt;br /&gt;Comments: FastColoredTextBox is used in Grammar Explorer now</description><author>rivantsov</author><pubDate>Tue, 26 Feb 2013 05:15:40 GMT</pubDate><guid isPermaLink="false">Closed Issue: FastColoredTextBox in GrammarExplorer [9869] 20130226051540A</guid></item><item><title>Closed Issue: ParsingContext.Culture should be used when retrieving error message [9871]</title><link>http://irony.codeplex.com/workitem/9871</link><description>I was willing to translate errors message when I noticed a major bug &amp;#40;at least for us&amp;#41; &amp;#33;&lt;br /&gt;&lt;br /&gt;Changing Resources.Culture in constructor of ParsingContext is way too early &amp;#40;therefore almost completely useless&amp;#41; since several grammar using different culture can be instantiated before being actually used for parsing &amp;#40;latest instance always win with current implementation&amp;#41;. &lt;br /&gt;&lt;br /&gt;REM&amp;#58; This has nothing to do with multi-threading mentioned in the code comments, as it is also fully affect single threaded application.&lt;br /&gt;&lt;br /&gt;Resources.Culture should be changed just before accessing the resource &amp;#40;for eg&amp;#58; in OnValidateToken&amp;#41; or even better to also evolve toward solving multi-threading issues by refining custom methods &amp;#40;to preserve strong typing&amp;#41; such as&amp;#58;&lt;br /&gt;&lt;br /&gt;    &amp;#47;&amp;#47;&amp;#47; &amp;#60;summary&amp;#62;&lt;br /&gt;    &amp;#47;&amp;#47;&amp;#47; Convert a lambda expression as property name&lt;br /&gt;    &amp;#47;&amp;#47;&amp;#47; &amp;#60;&amp;#47;summary&amp;#62;&lt;br /&gt;    &amp;#47;&amp;#47;&amp;#47; &amp;#60;typeparam name&amp;#61;&amp;#34;T&amp;#34;&amp;#62;&amp;#60;&amp;#47;typeparam&amp;#62;&lt;br /&gt;    &amp;#47;&amp;#47;&amp;#47; &amp;#60;param name&amp;#61;&amp;#34;expression&amp;#34;&amp;#62;&amp;#60;&amp;#47;param&amp;#62;&lt;br /&gt;    &amp;#47;&amp;#47;&amp;#47; &amp;#60;returns&amp;#62;&amp;#60;&amp;#47;returns&amp;#62;&lt;br /&gt;    private static string ConvertAsPropertyName&amp;#60;T&amp;#62;&amp;#40;Expression&amp;#60;Func&amp;#60;T&amp;#62;&amp;#62; expression&amp;#41;&lt;br /&gt;    &amp;#123;&lt;br /&gt;       if &amp;#40;expression &amp;#61;&amp;#61; null&amp;#41;&lt;br /&gt;       &amp;#123;&lt;br /&gt;          throw new ArgumentNullException&amp;#40;&amp;#34;expression&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;       &amp;#125;&lt;br /&gt;&lt;br /&gt;       var body &amp;#61; expression.Body as MemberExpression&amp;#59;&lt;br /&gt;       if &amp;#40;body &amp;#61;&amp;#61; null&amp;#41;&lt;br /&gt;       &amp;#123;&lt;br /&gt;          throw new ArgumentException&amp;#40;&amp;#34;Lambda expression must return a property&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;       &amp;#125;&lt;br /&gt;&lt;br /&gt;       return body.Member.Name&amp;#59;&lt;br /&gt;    &amp;#125;&lt;br /&gt;&lt;br /&gt;    private string LookupResource&amp;#40;Expression&amp;#60;Func&amp;#60;string&amp;#62;&amp;#62; resourceNameExpr&amp;#41;&lt;br /&gt;    &amp;#123;&lt;br /&gt;       string resourceName &amp;#61; ConvertAsPropertyName&amp;#40;resourceNameExpr&amp;#41;&amp;#59;&lt;br /&gt;       return Resources.ResourceManager.GetString&amp;#40;resourceName, this.Culture&amp;#41;&amp;#59;&lt;br /&gt;    &amp;#125;&lt;br /&gt;&lt;br /&gt;    public Token CreateErrorToken&amp;#40;Expression&amp;#60;Func&amp;#60;string&amp;#62;&amp;#62; resourceNameExpr, params object&amp;#91;&amp;#93; args&amp;#41; &amp;#123;&lt;br /&gt;       string propertyName &amp;#61; LookupResource&amp;#40;resourceNameExpr&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;       string message &amp;#61; &amp;#34;&amp;#34;&amp;#59;&lt;br /&gt;&lt;br /&gt;      if &amp;#40;args &amp;#33;&amp;#61; null &amp;#38;&amp;#38; args.Length &amp;#62; 0&amp;#41;&lt;br /&gt;        message &amp;#61; string.Format&amp;#40;message, args&amp;#41;&amp;#59;&lt;br /&gt;      return Source.CreateToken&amp;#40;Language.Grammar.SyntaxError, message&amp;#41;&amp;#59;&lt;br /&gt;    &amp;#125;&lt;br /&gt;&lt;br /&gt;Call later becomes for example&amp;#58;&lt;br /&gt;  context.CurrentToken &amp;#61; context.CreateErrorToken&amp;#40;&amp;#40;&amp;#41; &amp;#61;&amp;#62; Resources.ErrNoLetterAfterNum&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;For now I&amp;#39;m not implementing the suggested fix &amp;#40;too much work that is outside my project&amp;#41; and I will try to quickly dirty fix it otherwise to move on &amp;#58;&amp;#47;&lt;br /&gt;Comments: no easy fix for now - for supporting multiple languages at the same time &amp;#40;in one app&amp;#41;. Will look at this in new version</description><author>rivantsov</author><pubDate>Tue, 26 Feb 2013 05:15:02 GMT</pubDate><guid isPermaLink="false">Closed Issue: ParsingContext.Culture should be used when retrieving error message [9871] 20130226051502A</guid></item><item><title>Closed Issue: SpecialFormNode.cs code broken (missing) [9872]</title><link>http://irony.codeplex.com/workitem/9872</link><description>Hi Roman,&lt;br /&gt;&lt;br /&gt;First a thank you for this great software.&lt;br /&gt;&lt;br /&gt;Second, the class SpecialFormNode has broken &amp;#40;missing&amp;#41; c&amp;#35; code.  &lt;br /&gt;&lt;br /&gt;To reproduce&amp;#58;&lt;br /&gt;  Browse Interpreter&amp;#47;Ast&amp;#47;Statements&amp;#47;SpecialFormNode.cs&lt;br /&gt;  Search for  &amp;#34;context.Language.&amp;#34;&lt;br /&gt;&lt;br /&gt;The broken code can be seen in the snippet below, context.Language. ends abruptly&lt;br /&gt;&lt;br /&gt;    public override void Init&amp;#40;AstContext context, ParseTreeNode treeNode&amp;#41; &amp;#123;&lt;br /&gt;      base.Init&amp;#40;context, treeNode&amp;#41;&amp;#59;&lt;br /&gt;      var nodes &amp;#61; treeNode.GetMappedChildNodes&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;      TargetRef &amp;#61; AddChild&amp;#40;&amp;#34;Target&amp;#34;, nodes&amp;#91;0&amp;#93;&amp;#41;&amp;#59;&lt;br /&gt;      TargetRef.UseType &amp;#61; NodeUseType.CallTarget&amp;#59;&lt;br /&gt;      _targetName &amp;#61; nodes&amp;#91;0&amp;#93;.FindTokenAndGetText&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;      Arguments &amp;#61; AddChild&amp;#40;&amp;#34;Args&amp;#34;, nodes&amp;#91;1&amp;#93;&amp;#41;&amp;#59;&lt;br /&gt;      AsString &amp;#61; &amp;#34;Call &amp;#34; &amp;#43; _targetName&amp;#59;&lt;br /&gt;      context.Language.&lt;br /&gt;    &amp;#125;&lt;br /&gt;Comments: fixed</description><author>rivantsov</author><pubDate>Tue, 26 Feb 2013 05:08:50 GMT</pubDate><guid isPermaLink="false">Closed Issue: SpecialFormNode.cs code broken (missing) [9872] 20130226050850A</guid></item><item><title>Commented Issue: SpecialFormNode.cs code broken (missing) [9872]</title><link>http://irony.codeplex.com/workitem/9872</link><description>Hi Roman,&lt;br /&gt;&lt;br /&gt;First a thank you for this great software.&lt;br /&gt;&lt;br /&gt;Second, the class SpecialFormNode has broken &amp;#40;missing&amp;#41; c&amp;#35; code.  &lt;br /&gt;&lt;br /&gt;To reproduce&amp;#58;&lt;br /&gt;  Browse Interpreter&amp;#47;Ast&amp;#47;Statements&amp;#47;SpecialFormNode.cs&lt;br /&gt;  Search for  &amp;#34;context.Language.&amp;#34;&lt;br /&gt;&lt;br /&gt;The broken code can be seen in the snippet below, context.Language. ends abruptly&lt;br /&gt;&lt;br /&gt;    public override void Init&amp;#40;AstContext context, ParseTreeNode treeNode&amp;#41; &amp;#123;&lt;br /&gt;      base.Init&amp;#40;context, treeNode&amp;#41;&amp;#59;&lt;br /&gt;      var nodes &amp;#61; treeNode.GetMappedChildNodes&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;      TargetRef &amp;#61; AddChild&amp;#40;&amp;#34;Target&amp;#34;, nodes&amp;#91;0&amp;#93;&amp;#41;&amp;#59;&lt;br /&gt;      TargetRef.UseType &amp;#61; NodeUseType.CallTarget&amp;#59;&lt;br /&gt;      _targetName &amp;#61; nodes&amp;#91;0&amp;#93;.FindTokenAndGetText&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;      Arguments &amp;#61; AddChild&amp;#40;&amp;#34;Args&amp;#34;, nodes&amp;#91;1&amp;#93;&amp;#41;&amp;#59;&lt;br /&gt;      AsString &amp;#61; &amp;#34;Call &amp;#34; &amp;#43; _targetName&amp;#59;&lt;br /&gt;      context.Language.&lt;br /&gt;    &amp;#125;&lt;br /&gt;Comments: faulty file removed.</description><author>rivantsov</author><pubDate>Tue, 26 Feb 2013 05:08:42 GMT</pubDate><guid isPermaLink="false">Commented Issue: SpecialFormNode.cs code broken (missing) [9872] 20130226050842A</guid></item><item><title>Closed Issue: Exclude FirstChars and Suffixes from IsWhitespaceOrDelimiter [9875]</title><link>http://irony.codeplex.com/workitem/9875</link><description>I updated Irony recently in a project and it break compatibility with this kind of terminal&amp;#58;&lt;br /&gt;&lt;br /&gt;            var columnVariable &amp;#61; new IdentifierTerminal&amp;#40;NodeType.ColumnVariable&amp;#41;&amp;#59;&lt;br /&gt;            columnVariable.AllFirstChars &amp;#61; &amp;#34;&amp;#91;&amp;#34;&amp;#59;&lt;br /&gt;            columnVariable.AddSuffix&amp;#40;&amp;#34;&amp;#93;&amp;#34;, TypeCode.String&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;&amp;#91;identifier&amp;#93; or &amp;#123;identifier&amp;#125; &amp;#47;&amp;#47; the suffix is optional&lt;br /&gt;&lt;br /&gt;I had to override IsWhiteSpaceOrDelimiter and exclude &amp;#39;&amp;#123;&amp;#39;, &amp;#39;&amp;#125;&amp;#39;, &amp;#39;&amp;#91;&amp;#39;, &amp;#39;&amp;#93;&amp;#39; to make it work again, &lt;br /&gt;I guess it could be fixed by exluding these chars in the IsWhiteSpaceOrDelimiter &amp;#40;or perhaps disable QuickParse for Terminals who have WhitespaceOrDelimiters in their syntax, not sure it would work&amp;#41;.&lt;br /&gt;Comments: code fix declined, workaround suggested</description><author>rivantsov</author><pubDate>Tue, 26 Feb 2013 05:07:49 GMT</pubDate><guid isPermaLink="false">Closed Issue: Exclude FirstChars and Suffixes from IsWhitespaceOrDelimiter [9875] 20130226050749A</guid></item></channel></rss>