[MacRuby-devel] A Future for MacRuby

Jeff Hemmelgarn jhemmelg at gmail.com
Fri Dec 23 07:20:39 PST 2011


I guess I am just getting used to working with an open-source project.  I am used to discussing requirements and possible solutions with my cow-orkers before writing code.  It is a big change for me to just go ahead and write something and ask to have it included.  I'll give it a try.

I haven't felt that this email list is a good place to discuss architecture and nitty-gritty details.  I could easily be convinced that I am wrong about that.  Trac doesn't seem to be the right place either.  What should we do?

Mostly I want to get a good read as to what the direction of the project is so I can pull in the right direction.  I can live with MacRuby being Obj-C integration first, ruby compatible second.  I'll take that as my working hypothesis for now, and try to contribute to that.

On to discuss cases:

On Dec 23, 2011, at 3:36 AM, Joshua Ballanco wrote:
>> I was talking about established bugs in the Trac database when I mentioned Fibers(https://www.macruby.org/trac/ticket/253) and encodings(Net:SSH:https://www.macruby.org/trac/ticket/530).  There are gems that cannot run under MacRuby because these features are not supported.  The code is already written, make it run!
> Good! Now we're talking. So, for the Net::SSH bug, if there is just an encoding issue standing in the way of getting things to run, then let's smash that bug! The last comment I see is from 10 months ago and indicates v0.8. Have you tried running it recently? We made a decent dent in the C APIs for encodings right around that time. I wouldn't be surprised if this was already fixed, but if not, let's build a trivial test case and hammer away at it.

Net:SSH is still a problem, I just pulled the latest from github.  I had thought that this was a problem with using NSString inside ruby strings.  On closer examination, it looks like a problem between the encoding returned by pack and the encoding returned by ossl_cipher_final.  I don't have time to go into it further than that today.  I will be cleaning the house the rest of the day because the weekend is fully scheduled.  I will try to dive in next week, if it isn't fixed before then. :-)

> As for Fibers…hmm…I don't think we've ever given much serious consideration to Fibers since they don't seem to be a horribly popular feature of Ruby proper, and because implementation could be problematic. That said, I wonder how much of the specs we could get to passing with a GCD-based pure-ruby implementation of Fibers. Anyone up for the challenge?

IIRC, this is implemented with setjmp/longjmp in cruby.  I don't think this would be too hard to implement at a similar low level in llvm (If you were familiar with llvm).  But, a GCD based implementation does sound like fun!

>> I wouldn't be writing all of this if I didn't see a lot of potential for MacRuby.  I want to see it succeed and be a blazingly fast ruby implementation.  The better it supports all of the gems, the better it will support any arbitrary ruby code I write.  I want MacRuby to succeed and be available.  But, I accept that the only thing I may get out of working on MacRuby is the work.
> …and the experience! :-)

That's what I meant! ;-)


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-devel/attachments/20111223/d49378d8/attachment.html>

More information about the MacRuby-devel mailing list