[Mono-osx] Crash Cocoa-Sharp

Евгений Гришуль eugeny.grishul at gmail.com
Sun Dec 27 11:24:46 EST 2009


>Two way exception handling.
It's not issue - it's NObjective's feature. NObjective supports it on
both Intel and PPC platforms. And do it better than another bridge coz
NObjective's author is familiar with PPC and x86 assembler %)

>A reusable tool for wrapping other Objective-C libraries.
NObjective proxies generated from 2 XML files.
One of them (http://nobjective.googlecode.com/svn/trunk/ProxyGenerator/Profiles/10.5/runtime_dump.xml)
generated by dumping runtime information(
http://code.google.com/p/nobjective/source/browse/trunk/ProxyGenerator/RuntimeDumper.cs
)
Another one (http://nobjective.googlecode.com/svn/trunk/ProxyGenerator/Profiles/10.5/parsed_headers.xml)
generated by header analysis (
http://code.google.com/p/nobjective/source/browse/trunk/ProxyGenerator/HeaderAnalyzer.cs
)
Also you can modify these XMLs manually if modifying
http://code.google.com/p/nobjective/source/browse/trunk/ProxyGenerator/Profiles/10.5/dumper_settings.xml
didn't meet your needs.

>Being able to do proper subclassing.
You able to do proper subclassing, see HierarchyBase/HierarchyDerived:
http://code.google.com/p/nobjective/source/browse/trunk/tests/RegistrationTest.cs
Mono breaks value-type inheritance in 2.4/2.6 version and current
(0.9.6) version of NObjective not depends on such funny behaviour (and
eats slightly more disk space).

>Preserving original Objective-C method names so docs can be
leveraged directly.
See ECMA-334. Original selectors can be preserved only on IL level,
but such code will be unusable with C# coz colon ':' is not valid
identifier character. NObjective use following conversion scheme:
"someAction:someArg::" --> "someAction_someArg__"

I dunno why some programmers prefer Mobjc over NObjective, maybe Jesse
pay them %)

WBR,
Eugeny Grishul


More information about the Mono-osx mailing list