[MacRuby-devel] CorePlot success?

Laurent Sansonetti lsansonetti at apple.com
Wed Nov 10 22:03:43 PST 2010


Hi Russ,

After a quick look, I suspect a problem with NSDecimal, as both CPDecimalFromFloat and +plotRangeWithLocation:length: use it.  However I'm unable to reproduce a similar error just playing with NSDecimal directly in MacRuby.

$ ./miniruby -e "framework 'Foundation'; p NSDecimalString(42.decimalValue, nil)"
"42"

Laurent

On Nov 10, 2010, at 6:57 PM, Russ McBride wrote:

> 
> Thanks for the suggestions, Laurent.  
> 
> I re-generated the BridgeSupport version with a 64-bit-specific version, then ran a diff on the old version and new version and the content appears the same.  The file is in /Library/Frameworks/CorePlot.framework/Resources/BridgeSupport/CorePlot.bridgesupport
> 
> And I replaced my MacRuby install with the latest nightly.
> 
> Now I get this:
> 
> >> framework 'cocoa'
> => true
> >> framework 'coreplot'
> => true
> >> a = 4.2
> => 4.2
> >> z = CPDecimalFromFloat(a)
> TypeError: invalid bitfield type: b
> 
> >> z = CPDecimalFromFloat(a)
> Segmentation fault
> 
> ...
> 
> 
> >> xLow = 0.0
> => 0.0
> >> xLow = NSNumber.numberWithFloat(xLow.to_f).decimalValue
> => #<NSDecimal:0x2005bfae0>
> >> fDays = 398.0
> => 398.0
> >> fDays = NSNumber.numberWithFloat(fDays.to_f).decimalValue
> => #<NSDecimal:0x2005fbf00>
> >> xrange = CPPlotRange.plotRangeWithLocation(xLow, length:fDays)
> TypeError: invalid bitfield type: b
> 	
> >> xrange = CPPlotRange.plotRangeWithLocation(xLow, length:fDays)
> Segmentation fault
> 
> 
> 
> This still works, though:
> 
> >> theme = CPTheme.themeNamed(KCPDarkGradientTheme)
> => #<CPDarkGradientTheme:0x2005c4560>
> 
> 
> On a different topic, I've had great fun writing tools with MacRuby + Selenium to probe some of our web apps here at UC Berkeley for performance numbers.  The goal of integrating CorePlot is to provide nice graphs of the results (without having to rely on a WebView + javascript graphing libraries).
> 
> Cheers,
> Russ
> 
> 
> On Nov 10, 2010, at 5:59 PM, Laurent Sansonetti wrote:
> 
>> 
>> On Nov 10, 2010, at 5:50 PM, Jordan Hubbard wrote:
>> 
>>> On 11/10/10 4:39 PM, Laurent Sansonetti wrote:
>>>> Also, I believe that gen_bridge_metadata will generate 32-bit metadata by default, and I suppose you run MacRuby in 64-bit mode (as it is the default on 64-bit hardware). You may want to pass the --64-bit argument to the generator.
>>> That default seems a little backwards, yes?  Most of our apps and frameworks are 64 bit now, so why default to 32 bits?
>> 
>> Agreed. <rdar://problem/8655701>.
>> 
>> Laurent
>> _______________________________________________
>> MacRuby-devel mailing list
>> MacRuby-devel at lists.macosforge.org
>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
> 
> _______________________________________________
> MacRuby-devel mailing list
> MacRuby-devel at lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel

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


More information about the MacRuby-devel mailing list