Hello! I put together some simple version of IronRuby powered "Try Ruby" [1]. This is just night hack, I hope to improve it. Now, the problem is that anybody can crash it with "def f() f() end", "f()". I mean StackOverflowException, which is really bad on shared ASP.NET hosting. Any idea if IronRuby can prevent stack overflow? I''m volunteering to contribute an implementation if so. [1] http://www.ironruby.info/ir/ -- Oleg
You may want to check out Why''s blog for other ways people have tried to crash his implementation of try Ruby: http://redhanded.hobix.com/inspect/205000LinesOfRubyCodeDonatedInTheTryRubyD rive.html Pete -----Original Message----- From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Oleg Tkachenko Sent: Monday,12 May 12, 2008 17:47 To: ironruby-core at rubyforge.org Subject: [Ironruby-core] Try IronRuby in your browser Hello! I put together some simple version of IronRuby powered "Try Ruby" [1]. This is just night hack, I hope to improve it. Now, the problem is that anybody can crash it with "def f() f() end", "f()". I mean StackOverflowException, which is really bad on shared ASP.NET hosting. Any idea if IronRuby can prevent stack overflow? I''m volunteering to contribute an implementation if so. [1] http://www.ironruby.info/ir/ -- Oleg _______________________________________________ Ironruby-core mailing list Ironruby-core at rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core
You might want to change your blog entry to say "OSI-approved Open Source license" instead of "GPL-based license" so that you don''t give our lawyers a collective heart attack ;). On Mon, May 12, 2008 at 9:46 AM, Oleg Tkachenko <oleg at tkachenko.com> wrote:> Hello! > > I put together some simple version of IronRuby powered "Try Ruby" [1]. > This is just night hack, I hope to improve it. > > Now, the problem is that anybody can crash it with "def f() f() end", > "f()". I mean StackOverflowException, which is really bad on shared > ASP.NET <http://asp.net/> hosting. > > Any idea if IronRuby can prevent stack overflow? I''m volunteering to > contribute an implementation if so. > > > [1] http://www.ironruby.info/ir/ > -- > Oleg > > > _______________________________________________ > Ironruby-core mailing list > Ironruby-core at rubyforge.org > http://rubyforge.org/mailman/listinfo/ironruby-core >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20080512/6c42ab75/attachment.html>
"OSI-approved/GPL-inspired may be more appropriate" ;) On Mon, May 12, 2008 at 1:18 PM, Curt Hagenlocher <curt at hagenlocher.org> wrote:> You might want to change your blog entry to say "OSI-approved Open Source > license" instead of "GPL-based license" so that you don''t give our lawyers a > collective heart attack ;). > > > On Mon, May 12, 2008 at 9:46 AM, Oleg Tkachenko <oleg at tkachenko.com> > wrote: > > > Hello! > > > > I put together some simple version of IronRuby powered "Try Ruby" [1]. > > This is just night hack, I hope to improve it. > > > > Now, the problem is that anybody can crash it with "def f() f() end", > > "f()". I mean StackOverflowException, which is really bad on shared > > ASP.NET <http://asp.net/> hosting. > > > > Any idea if IronRuby can prevent stack overflow? I''m volunteering to > > contribute an implementation if so. > > > > > > [1] http://www.ironruby.info/ir/ > > -- > > Oleg > > > > > > _______________________________________________ > > Ironruby-core mailing list > > Ironruby-core at rubyforge.org > > http://rubyforge.org/mailman/listinfo/ironruby-core > > > > > _______________________________________________ > Ironruby-core mailing list > Ironruby-core at rubyforge.org > http://rubyforge.org/mailman/listinfo/ironruby-core > >-- Michael Letterle [Polymath Prokrammer] http://blog.prokrams.com -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20080512/a90cd255/attachment.html>
Ok, fixed license name. Lawyers can relax now :) I''m saving keystrokes too, should be fun to watch. I''m gonna share saved data after several days. Oleg Michael Letterle wrote:> "OSI-approved/GPL-inspired may be more appropriate" ;) > > On Mon, May 12, 2008 at 1:18 PM, Curt Hagenlocher <curt at hagenlocher.org > <mailto:curt at hagenlocher.org>> wrote: > > You might want to change your blog entry to say "OSI-approved Open > Source license" instead of "GPL-based license" so that you don''t > give our lawyers a collective heart attack ;). > > > On Mon, May 12, 2008 at 9:46 AM, Oleg Tkachenko <oleg at tkachenko.com > <mailto:oleg at tkachenko.com>> wrote: > > Hello! > > I put together some simple version of IronRuby powered "Try > Ruby" [1]. > This is just night hack, I hope to improve it. > > Now, the problem is that anybody can crash it with "def f() f() > end", > "f()". I mean StackOverflowException, which is really bad on shared > ASP.NET <http://asp.net/> hosting. > > Any idea if IronRuby can prevent stack overflow? I''m volunteering to > contribute an implementation if so. > > > [1] http://www.ironruby.info/ir/ > -- > Oleg > > > _______________________________________________ > Ironruby-core mailing list > Ironruby-core at rubyforge.org <mailto:Ironruby-core at rubyforge.org> > http://rubyforge.org/mailman/listinfo/ironruby-core > > > > _______________________________________________ > Ironruby-core mailing list > Ironruby-core at rubyforge.org <mailto:Ironruby-core at rubyforge.org> > http://rubyforge.org/mailman/listinfo/ironruby-core > > > > > -- > Michael Letterle > [Polymath Prokrammer] > http://blog.prokrams.com > > > ------------------------------------------------------------------------ > > _______________________________________________ > Ironruby-core mailing list > Ironruby-core at rubyforge.org > http://rubyforge.org/mailman/listinfo/ironruby-core
Hi Oleg, You can prevent stack overflow by explicitly maintaining the recursion count. See http://lists.ironpython.com/pipermail/users-ironpython.com/2007-October/005694.html for a related thread about IronPython. However, such a fix in IronRuby would be in IronRuby.dll, and so we could not accept your patch. You could try patching it for your own version of IronRuby if wanted. Thanks, Shri Want to work on IronPython, IronRuby, F#?<http://blogs.msdn.com/ironpython/archive/2008/02/25/ironpython-ironruby-and-f-openings-in-dev-test-and-pm.aspx> Visit http://blogs.msdn.com/ironpython From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Curt Hagenlocher Sent: Monday, May 12, 2008 10:19 AM To: ironruby-core at rubyforge.org Subject: Re: [Ironruby-core] Try IronRuby in your browser You might want to change your blog entry to say "OSI-approved Open Source license" instead of "GPL-based license" so that you don''t give our lawyers a collective heart attack ;). On Mon, May 12, 2008 at 9:46 AM, Oleg Tkachenko <oleg at tkachenko.com<mailto:oleg at tkachenko.com>> wrote: Hello! I put together some simple version of IronRuby powered "Try Ruby" [1]. This is just night hack, I hope to improve it. Now, the problem is that anybody can crash it with "def f() f() end", "f()". I mean StackOverflowException, which is really bad on shared ASP.NET<http://asp.net/> hosting. Any idea if IronRuby can prevent stack overflow? I''m volunteering to contribute an implementation if so. [1] http://www.ironruby.info/ir/ -- Oleg _______________________________________________ Ironruby-core mailing list Ironruby-core at rubyforge.org<mailto:Ironruby-core at rubyforge.org> http://rubyforge.org/mailman/listinfo/ironruby-core -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20080512/908de2ba/attachment.html>
Hey there Shri, Do you accept changes provided that the contributor has assigned copyright to Microsoft? http://lwn.net/Articles/272265/ http://www.copylaw.com/forms/copyassn.html http://www.update.uu.se/~ams/inetutils/gnulib/doc/Copyright/request-assign.changes Cheers, C.J. On Mon, 2008-05-12 at 11:29 -0700, Shri Borde wrote:> Hi Oleg, > > > > You can prevent stack overflow by explicitly maintaining the recursion > count. See > http://lists.ironpython.com/pipermail/users-ironpython.com/2007-October/005694.html for a related thread about IronPython. However, such a fix in IronRuby would be in IronRuby.dll, and so we could not accept your patch. You could try patching it for your own version of IronRuby if wanted. > > > > Thanks, > > Shri > > Want to work on IronPython, IronRuby, F#?Visit > http://blogs.msdn.com/ironpython > > > > From:ironruby-core-bounces at rubyforge.org > [mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Curt > Hagenlocher > Sent: Monday, May 12, 2008 10:19 AM > To: ironruby-core at rubyforge.org > Subject: Re: [Ironruby-core] Try IronRuby in your browser > > > > > You might want to change your blog entry to say "OSI-approved Open > Source license" instead of "GPL-based license" so that you don''t give > our lawyers a collective heart attack ;). > > On Mon, May 12, 2008 at 9:46 AM, Oleg Tkachenko <oleg at tkachenko.com> > wrote: > > Hello! > > I put together some simple version of IronRuby powered "Try Ruby" [1]. > This is just night hack, I hope to improve it. > > Now, the problem is that anybody can crash it with "def f() f() end", > "f()". I mean StackOverflowException, which is really bad on shared > ASP.NET hosting. > > Any idea if IronRuby can prevent stack overflow? I''m volunteering to > contribute an implementation if so. > > > [1] http://www.ironruby.info/ir/ > -- > Oleg > > > _______________________________________________ > Ironruby-core mailing list > Ironruby-core at rubyforge.org > http://rubyforge.org/mailman/listinfo/ironruby-core > > > > > > _______________________________________________ > Ironruby-core mailing list > Ironruby-core at rubyforge.org > http://rubyforge.org/mailman/listinfo/ironruby-core-------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20080512/934a727f/attachment.bin>
C.J. Adams-Collier:> Do you accept changes provided that the contributor has assigned > copyright to Microsoft? > > http://lwn.net/Articles/272265/ > http://www.copylaw.com/forms/copyassn.html > http://www.update.uu.se/~ams/inetutils/gnulib/doc/Copyright/request- > assign.changesWe accept changes to the IronRuby.Libraries project only, and only if there''s a signed contributor agreement. We will accept trivial patches to IronRuby.dll, but generally only things like a missed conditional etc. - no feature additions are accepted there. We will open things up fully once we get to a 1.0 release of the DLR. Thanks, -John
Yeah, you can crash your browser if you execute something similar in Silverlight. Gets really hard to figure out when you''ve got a recursive method_missing call =P I was having *fun* with this last night: http://twitter.com/jschementi/statuses/809136066. But that''s not as serious as stack overflowing a shared host =P ~js> -----Original Message----- > From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core- > bounces at rubyforge.org] On Behalf Of Oleg Tkachenko > Sent: Monday, May 12, 2008 9:47 AM > To: ironruby-core at rubyforge.org > Subject: [Ironruby-core] Try IronRuby in your browser > > Hello! > > I put together some simple version of IronRuby powered "Try Ruby" [1]. > This is just night hack, I hope to improve it. > > Now, the problem is that anybody can crash it with "def f() f() end", > "f()". I mean StackOverflowException, which is really bad on shared > ASP.NET hosting. > > Any idea if IronRuby can prevent stack overflow? I''m volunteering to > contribute an implementation if so. > > > [1] http://www.ironruby.info/ir/ > -- > Oleg > > > _______________________________________________ > Ironruby-core mailing list > Ironruby-core at rubyforge.org > http://rubyforge.org/mailman/listinfo/ironruby-core
I think the issue is vetting the contribution. Microsoft wants to protect itself and make sure that anything in the "core" hasn''t violated an existing copyright. As I understand it, Microsoft considers it prohibitivly expensive to ensure that all contributions aren''t already copywritten, which is why they don''t accept patches to the core yet. Once the DLR is stabilized they will allow contributions to the IronRuby core because it can no longer influence the DLR core. On 5/12/08, C.J. Adams-Collier <cjac at colliertech.org> wrote:> > Hey there Shri, > > Do you accept changes provided that the contributor has assigned > copyright to Microsoft? > > http://lwn.net/Articles/272265/ > http://www.copylaw.com/forms/copyassn.html > > http://www.update.uu.se/~ams/inetutils/gnulib/doc/Copyright/request-assign.changes > > Cheers, > > C.J. > > > On Mon, 2008-05-12 at 11:29 -0700, Shri Borde wrote: > > Hi Oleg, > > > > > > > > You can prevent stack overflow by explicitly maintaining the recursion > > count. See > > > http://lists.ironpython.com/pipermail/users-ironpython.com/2007-October/005694.htmlfor a related thread about IronPython. However, such a fix in IronRuby would > be in IronRuby.dll, and so we could not accept your patch. You could try > patching it for your own version of IronRuby if wanted. > > > > > > > > Thanks, > > > > Shri > > > > Want to work on IronPython, IronRuby, F#?Visit > > http://blogs.msdn.com/ironpython > > > > > > > > From:ironruby-core-bounces at rubyforge.org<From%3Aironruby-core-bounces at rubyforge.org> > > [mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Curt > > Hagenlocher > > Sent: Monday, May 12, 2008 10:19 AM > > To: ironruby-core at rubyforge.org > > Subject: Re: [Ironruby-core] Try IronRuby in your browser > > > > > > > > > > You might want to change your blog entry to say "OSI-approved Open > > Source license" instead of "GPL-based license" so that you don''t give > > our lawyers a collective heart attack ;). > > > > On Mon, May 12, 2008 at 9:46 AM, Oleg Tkachenko <oleg at tkachenko.com> > > wrote: > > > > Hello! > > > > I put together some simple version of IronRuby powered "Try Ruby" [1]. > > This is just night hack, I hope to improve it. > > > > Now, the problem is that anybody can crash it with "def f() f() end", > > "f()". I mean StackOverflowException, which is really bad on shared > > ASP.NET hosting. > > > > Any idea if IronRuby can prevent stack overflow? I''m volunteering to > > contribute an implementation if so. > > > > > > [1] http://www.ironruby.info/ir/ > > -- > > Oleg > > > > > > _______________________________________________ > > Ironruby-core mailing list > > Ironruby-core at rubyforge.org > > http://rubyforge.org/mailman/listinfo/ironruby-core > > > > > > > > > > > > _______________________________________________ > > Ironruby-core mailing list > > Ironruby-core at rubyforge.org > > http://rubyforge.org/mailman/listinfo/ironruby-core > > _______________________________________________ > Ironruby-core mailing list > Ironruby-core at rubyforge.org > http://rubyforge.org/mailman/listinfo/ironruby-core > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20080512/88aeb693/attachment.html>
Ah! Thanks for the clarification, Mike. On Mon, 2008-05-12 at 14:18 -0600, Mike Moore wrote:> I think the issue is vetting the contribution. Microsoft wants to > protect itself and make sure that anything in the "core" hasn''t > violated an existing copyright. As I understand it, Microsoft > considers it prohibitivly expensive to ensure that all contributions > aren''t already copywritten, which is why they don''t accept patches to > the core yet. Once the DLR is stabilized they will allow contributions > to the IronRuby core because it can no longer influence the DLR core. > > On 5/12/08, C.J. Adams-Collier <cjac at colliertech.org> wrote: > Hey there Shri, > > Do you accept changes provided that the contributor has > assigned > copyright to Microsoft? > > http://lwn.net/Articles/272265/ > http://www.copylaw.com/forms/copyassn.html > http://www.update.uu.se/~ams/inetutils/gnulib/doc/Copyright/request-assign.changes > > Cheers, > > C.J. > > > On Mon, 2008-05-12 at 11:29 -0700, Shri Borde wrote: > > Hi Oleg, > > > > > > > > You can prevent stack overflow by explicitly maintaining the > recursion > > count. See > > > http://lists.ironpython.com/pipermail/users-ironpython.com/2007-October/005694.html for a related thread about IronPython. However, such a fix in IronRuby would be in IronRuby.dll, and so we could not accept your patch. You could try patching it for your own version of IronRuby if wanted. > > > > > > > > Thanks, > > > > Shri > > > > Want to work on IronPython, IronRuby, F#?Visit > > http://blogs.msdn.com/ironpython > > > > > > > > From:ironruby-core-bounces at rubyforge.org > > [mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of > Curt > > Hagenlocher > > Sent: Monday, May 12, 2008 10:19 AM > > To: ironruby-core at rubyforge.org > > Subject: Re: [Ironruby-core] Try IronRuby in your browser > > > > > > > > > > You might want to change your blog entry to say > "OSI-approved Open > > Source license" instead of "GPL-based license" so that you > don''t give > > our lawyers a collective heart attack ;). > > > > On Mon, May 12, 2008 at 9:46 AM, Oleg Tkachenko > <oleg at tkachenko.com> > > wrote: > > > > Hello! > > > > I put together some simple version of IronRuby powered "Try > Ruby" [1]. > > This is just night hack, I hope to improve it. > > > > Now, the problem is that anybody can crash it with "def f() > f() end", > > "f()". I mean StackOverflowException, which is really bad on > shared > > ASP.NET hosting. > > > > Any idea if IronRuby can prevent stack overflow? I''m > volunteering to > > contribute an implementation if so. > > > > > > [1] http://www.ironruby.info/ir/ > > -- > > Oleg > > > > > > _______________________________________________ > > Ironruby-core mailing list > > Ironruby-core at rubyforge.org > > http://rubyforge.org/mailman/listinfo/ironruby-core > > > > > > > > > > > > _______________________________________________ > > Ironruby-core mailing list > > Ironruby-core at rubyforge.org > > http://rubyforge.org/mailman/listinfo/ironruby-core > > _______________________________________________ > Ironruby-core mailing list > Ironruby-core at rubyforge.org > http://rubyforge.org/mailman/listinfo/ironruby-core > > > > _______________________________________________ > Ironruby-core mailing list > Ironruby-core at rubyforge.org > http://rubyforge.org/mailman/listinfo/ironruby-core-------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20080512/29039c20/attachment.bin>