Вопрос

Можно ли собирать несколько языков вместе, чтобы получить лучшее из разных языков.

Это было полезно?

Решение

Определенно возможно ссылка на сайт их вместе (если они соответствующим образом запрограммированы) после составления их отдельно, если компиляторы и линкеры совместимы. Например:

g77 -c one.f
gcc -c two.c
gcc -o together one.o two.o

Это компилирует файл Fortran, затем C -файл, затем связывает их вместе в одном исполняемом файле. together (Предполагая, что они звонят друг другу должным образом ;-) Используя набор инструментов GCC.

Microsoft .NET - это популярный способ использовать несколько языков вместе - C#, F#, Ironpython, Ironruby и так далее. Visual Studio будет обрабатывать компиляции в совместимые коды и объединение в сборах, но вы также можете сделать это «вручную», если хотите.

Если под «компилированием вместе» вы имеете в виду наличие нескольких разных языков в одном и том же файле, это также возможно, но реже - например, некоторые компиляторы C имеют расширения, позволяющие выразить «встроенный» язык сборки в одном и том же файле.

Другие советы

Да, это возможно, но многое зависит от конкретных языков. Например, вызов C -функций или классов C ++ из Python выполняется обычно.

Действительно сложно чисто обращаться с алгол-68 к C. do-cable, но я не думаю, что хочу делать это каждый день,

Платформа .NET многоязычная. Попуской отлично подходит для смешивания Perl, Python, Ruby. Что ты пытаешься сделать?

Другим хорошим примером сочетания языка является платформа Java. Вы можете Intermix Groovy, Jython, Jruby, Scala, Clojure и другие языки с Java. Различные языки требуют разных компиляторов, но вы обычно можете вызвать с одного языка на другой. Groovy и Scala особенно хорошо подходят для взаимодействия.

О, и нативный интерфейс Java (JNI) позволяет вам вызывать C, C ++, сборку и другие языки из Java.

(Платформа .NET делится эти же атрибуты, как отметили другие плакаты.)

Если вы используете .NET, вы можете компилировать свои проекты на разных языках с NetModules, а затем связать их в один DLL/EXE. Visual Studio не поддерживает это, но Msbuild делает. Самый простой способ получить компиляцию - это отредактировать копию вашего файла. Затем используйте команду «Link», чтобы связать ваши модули с окончательным EXE/DLL.

Взгляни на Сковорода. Анкет Это обертывает тебя C/C++ Код, чтобы вы могли назвать это практически на любом другом языке.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top