Долго думал в какую тему поместить этот вопрос, в результате решил разбить вопрос на два. Один в эту тему, другой в Общие Вопросы по КП.
В общем имеем следующую общую задачу:
Есть некая программа-сервер. При взаимодействии с клиентом используется некое множество алгоритмов/формул которые должны быть на клиенте и сервере идентичными. С течением времени, по мере развития программы-сервера, алгоритмы и формулы меняются, соответственно необходимо чтобы с минимальными усилиями можно было переносить это в программы-клиенты. Программы-клиенты пишутся в т.ч. и третьими сторонами, используя самые различные технологии. Например сервер писан может быть под jvm, клиенты же могут под jvm, .net, ну и на каком-нибудь С++, соответственно нативный код.
Естественно возникает желание это самое множество алгоритмов-формул реализовать на неком языке существующем как под jvm, так и под .net и непосредственно какой-нибудь x86. Писатель клиента просто берет последние исходники оных алгоритмов-формул на этом языке и собирает себе либу под jvm/.net/x86/или что там у него. У него в результате получается абсолютно родная (с т.з. его инструментария) библиотека. Зависимостей от библиотек у этих алгоритмов-формул нет никаких, супер-пупер абстракций тоже нет, так что, теоретически, проблем быть не должно, если получится выбрать нужный язык.
Т.о. имеем проблему выбора языка. Производительность не критична. Но, однако, не хочется использовать языки с динамической типизацией, ибо надежность важна.
Из всего многообразия языков, что я пересмотрел, только Component Pascal существует для .net/jvm/x86 одновременно.
Для .net/jvm можно использовать gpcp, для jvm я проверил -- генерируются вполне приличные class-файлы, которые могут легко быть использованы из java. .net я ещё не щупал, но проблем тоже быть не должно, но в плане x86 у меня есть сомнения (см тему
viewtopic.php?f=1&t=2401).