Ответ 1
Не совсем то, что вы ищете, я думаю, но вы взглянули на mruby? Рубиновая версия, специально предназначенная для встраивания в C-код. С этим может быть проще работать, чем с полным интерпретатором рубинов МРТ.
Я ищу всеобъемлющий онлайн-ресурс документации по внедрению интерпретатора Ruby в программы на C или С++ и API для этой цели.
Раздел, посвященный этому в книге Pickaxe, неплох, но моя версия относится к Ruby 1.8, и меня интересует диапазон текущих рубиновых версий, т.е. 1.8.x, 1.9.x и 2.0, и есть число различий между обработкой встраивания в этот диапазон версий.
Для справки интерпретатор Ruby, о котором идет речь, является основным интерпретатором Ruby из http://www.ruby-lang.org/en/
Я нашел в stackoverflow ряд конкретных вопросов, связанных с аспектами этой (обработка ошибок) (state reset) (С++): то, что я ищу, - это документация, если таковая имеется, из которой были получены такие ответы!
Существует также рубиновый 1.8 и Unix-ориентированный .
Имеется документация для C API Ruby, используемая для написания расширений, а также для внедрения. Это можно найти на github (ruby 2.0) и (ruby 1.9 ), но обработка вариаций в версии кажется читателю.
Глава расширяющая рубин в книге Pickaxe теперь доступна в Интернете в формате PDF.
Не совсем то, что вы ищете, я думаю, но вы взглянули на mruby? Рубиновая версия, специально предназначенная для встраивания в C-код. С этим может быть проще работать, чем с полным интерпретатором рубинов МРТ.
К сожалению, это была и остается серьезной проблемой для Ruby. Японские разработчики очень плохо знают по-английски и поэтому не любят писать документы. Лучшая документация доступна только на японском языке.
Много изменений для Ruby 2.0, и нам нужно подождать, пока кто-нибудь не напишет об этом книгу. Но это больше не финансируется ни одной издательской компанией (им нужен быстрый начальный уровень или научные/учебные книги).
Мне нужно сдержать, чтобы не добавить политическую напыщенность о том, почему у нас сейчас такая ужасная ситуация в разработке программного обеспечения.