Hi!

Thanks a lot for the information.


/anders

Antonello Provenzano skrev:
> Anders,
>
> IKVM doesn't support the javax.transactions package.
>
> In fact, the main difference pointed out by neo4j between java and
> .NET is the lack of support for X/Open XA resource management: this is
> possible only by calling an "interop" OLEDB component, which is
> non-native .NET, which should be implemented in C++ and deployed to
> the host machine separately. Naturally, OLE development is forbidden
> in Linux machines, which makes things tougher.
>
> While under .NET framework (since the 2.0 specifications there's the
> inclusion of System.Transactions) it is provided a mechanism for
> transactions, architecturally different from the X/Open specifications
> (implemented with quite fidelity by javax.transactions), it is not
> provided a mechanism to handle MTS or two-phase commits.
>
> Since in neo4j one of the main aspects it's the XAResource
> implementation for persisting and retrieving data, the "port" is also
> conceptually difficult.
>
>
> Cheers.
> Antonello
>
>
> On Sun, May 3, 2009 at 9:59 AM, Anders Nawroth <and...@neotechnology.com> 
> wrote:
>   
>> Hi!
>>
>> Have you tried using IKVM.NET?
>> http://www.ikvm.net/
>>
>>
>> /anders
>>
>> Antonello Provenzano skrev:
>>     
>>> Emil,
>>>
>>> I'm a good expert on .NET architecture and technology, having
>>> contributed for years to the development of Mono and being a
>>> recognized developer and architect in this domain.
>>>
>>> Last week I tried to implement a port version of neo4j for .NET,
>>> applying the same concepts you implemented, not always plain porting
>>> the code: Java and C# themselves are pretty different seen from
>>> inside, and when you put in the middle also some architectural issues
>>> like transactions and such (eg. the NIO extension), the things become
>>> much less straight-forward.
>>>
>>> Although at the beginning my plan was to port in short time neo4j to
>>> .NET, once I analyzed the full source code I've been aware of the
>>> impossibility to accomplish this goal in small time: in fact, I
>>> decided to start the implemenation of a brand new project based on the
>>> concepts, rather than the actual code, of neo4j. This, as you can
>>> guess, requires additional work for the architectural design,
>>> prototyping and implementation, plus testing.
>>>
>>> In the short-medium term then, the best way will be to use a REST
>>> solution, as you suggested (but I've already considered, in case of
>>> not existence of native .NET solutions), which is not optimal by the
>>> way, although viable for the bootstrap of the project.
>>>
>>> I hope we will keep in touch anyway, in case i would need your and
>>> Neo's team assistance during the implementation of the .NET solution.
>>>
>>> Cheers!
>>> Antonello
>>>
>>>
>>>
>>> On Sun, May 3, 2009 at 4:11 AM, Emil Eifrem <e...@neotechnology.com> wrote:
>>>
>>>       
>>>> On Sun, May 3, 2009 at 03:55, Antonello Provenzano <antone...@deveel.com> 
>>>> wrote:
>>>>
>>>>         
>>>>> I've found that neo4j would be perfect for my scope: unfortunately, it
>>>>> is purely written in Java code and it's not portable to .NET, because
>>>>> of the massive differences between the two architectures.
>>>>>
>>>>> Can you tell me if is it there any language binding or any port of
>>>>> neo4j for .NET/Mono?
>>>>>
>>>>>           
>>>> Hi Antonello,
>>>>
>>>> There's no port and no language binding at the time. I agree with you
>>>> that porting Neo4j to .NET would probably be require a substantial
>>>> investment, although I'm certainly no expert at .NET.
>>>>
>>>> As for bindings, I don't know how hard that would be. Neo4j currently
>>>> has bindings for a number of languages (Python, Jython, Ruby, Clojure)
>>>> and sometimes they've been fairly easy to roll. The conceptual
>>>> impedance between Java and C# is certainly close to zero, so maybe
>>>> adding .NET bindings is not that hard. You're certainly welcome to
>>>> give it a shot!
>>>>
>>>> Another thought: Would it work if you implemented your graph algos in
>>>> Java using Neo4j, then wrapped them in a thin REST layer and used that
>>>> as a backend to the rest of your app written in .NET?
>>>>
>>>> Cheers,
>>>>
>>>> --
>>>> Emil Eifrém, CEO [e...@neotechnology.com]
>>>> Neo Technology, www.neotechnology.com
>>>> Cell: +46 733 462 271 | US: 206 403 8808
>>>> http://twitter.com/emileifrem
>>>> _______________________________________________
>>>> Neo mailing list
>>>> User@lists.neo4j.org
>>>> https://lists.neo4j.org/mailman/listinfo/user
>>>>
>>>>
>>>>         
>>> _______________________________________________
>>> Neo mailing list
>>> User@lists.neo4j.org
>>> https://lists.neo4j.org/mailman/listinfo/user
>>>
>>>       
>> --
>> Anders Nawroth [and...@neotechnology.com]
>> GTalk, Skype: anders.nawroth
>> Phone: +46 737 894 163
>> http://twitter.com/nawroth
>> http://blog.nawroth.com/
>>
>> _______________________________________________
>> Neo mailing list
>> User@lists.neo4j.org
>> https://lists.neo4j.org/mailman/listinfo/user
>>
>>     
> _______________________________________________
> Neo mailing list
> User@lists.neo4j.org
> https://lists.neo4j.org/mailman/listinfo/user
>   


-- 
Anders Nawroth [and...@neotechnology.com]
GTalk, Skype: anders.nawroth
Phone: +46 737 894 163
http://twitter.com/nawroth
http://blog.nawroth.com/

_______________________________________________
Neo mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to