2008-10-15 3 views
8

Я заинтересован в том, чтобы получить код Python с некоторым кодом Ruby на Windows, Linux и, возможно, на других платформах. Конкретно я хотел бы получить доступ к классам в Ruby из Python и вызвать их методы, получить доступ к их данным, создать новые экземпляры и так далее.Ruby to Python bridge

Очевидный способ сделать это через что-то вроде XML-RPC или, возможно, CORBA, но меня бы интересовали любые другие подходы.

Что сделали другие люди, чтобы получить код из Python и Ruby, обменивающийся друг с другом, либо локально в той же системе, либо удаленно по сети?

Заранее спасибо.

+1

Мне хотелось бы, чтобы некоторые мотивации или объяснения, почему вы должны это делать. – Jonke 2008-10-16 20:25:52

ответ

4

Ну, вы могли бы попробовать named pipes или что-то подобное, но я действительно считаю, что XML-RPC будет самым головоломным способом.

3

Пожалуйста, имейте в виду, что я не говорю из личного опыта здесь, но я полагаю, что JRuby и Jython (реализации Ruby и python в JVM) смогут легко разговаривать друг с другом, а также Java-код , Вы можете посмотреть на это.

+0

Это звучит интересно, есть ли у кого-нибудь опыт? – monkut 2008-10-16 08:52:00

+0

Да, мне нравится идея всего, что работает в одном и том же jvm и как таковой «родной» мост между ними. Интересное предложение Немо, спасибо. – QAZ 2008-10-16 10:19:18

1

Выставляйте свои классы Ruby в виде веб-сервисов, используя Sinatra, Rails или обычную старую стойку.

Предоставляйте свои классы Python в виде веб-сервисов, используя web.py, flask, Django или App Engine.

Используйте HTTParty для Ruby для создания API в своих классах Python.

Используйте библиотеку REST для Python для создания API в своих классах Ruby.