LINUX.ORG.RU

[язык Vala] вызов из C#, C++ и Java

 , , ,


0

2

Есть задача - писать некий общий код, чтобы им пользовались все. Итак, нужен современный удобный язык + возможность создания биндингов. Мне показалось, что под оба эти критерия Vala подходит идеально.

Нужен общий код, чтобы его можно было дергать из C++/Qt и из C#. Правильно ли я понимаю что тулзовая инфраструктура вокруг языка Vala позволяет все это сделать? У кого есть опыт?

Если использовать gobject бэкенд, то да, позволяет всё это сделать. Будет биндится к другим языкам подобно gtk+, то есть без каких-либо проблем. Тем более gobject уже забинден к C#, С++ и java. От вас потребуется минимум работы.

ixrws ★★★ ()
Ответ на: комментарий от CARS

Есть ощущение, что топик стартер хочет удобную замену С для написания оптимизированных частей программы, vala здесь неплох. Луа же наоборот хорош как клей или скриптовый язык. В виде клея видимо в сабже и так java или C#. Ну а скриптового языка может и не быть.

ixrws ★★★ ()

Можешь еще язык D попинать - вдруг оно живое.

dizza ★★★★★ ()
Ответ на: комментарий от ixrws

Если использовать gobject бэкенд, то да, позволяет всё это сделать. Будет биндится к другим языкам подобно gtk+, то есть без каких-либо проблем. Тем более gobject уже забинден к C#, С++ и java. От вас потребуется минимум работы.

Это интересно... А минимум работы это как? Насколько сложно создать биндинг к самостоятельно написанной библиотеке? Где посмотреть примеры? Пока вижу только вызов Vala из C.

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от ixrws

Есть ощущение, что топик стартер хочет удобную замену С для написания оптимизированных частей программы, vala здесь неплох.

Всё так и есть - надо писать общий код, но не на Си и Си++ желательно, и при этом программисты юзают и C++ и C# и другое.

I-Love-Microsoft ★★★★★ ()

Почему бы не взять для этих целей Python? Большое коммьюнити, разные биндинги (Cython, Jython, IronPython), да и в конце-концов нормальный читаемый синтаксис.

anonymous ()
Ответ на: комментарий от anonymous

Не, нафиг нафиг, важное требование - это Си-подобный синтаксис и нормальная производительность. Python пролетает.

I-Love-Microsoft ★★★★★ ()

Хардкорщики. Я бы не сказал, что Vala - это mainstream язык. Да и не скажу, что тесная интеграция кода на Vala, С++/Qt и C# - широко распространенная практика. Я думаю, что есть объективные причины полагать, что вы там намучаетесь с этим зоопарком.

Может решаемая задача дает вам возможность оформить все в виде нескольких отдельных приложений, каждый из которых написан на отдельном языке?

pathfinder ★★★ ()
Ответ на: комментарий от pathfinder

Хардкорщики.

Не, это лишь небольшое исследование по моей личной инициативе, ибо держать две ветки одного и того же на двух разных языках и платформах это слишком...

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

ибо держать две ветки одного и того же на двух разных языках и платформах это слишком...


Поэтому на второй день создатель посмотрел на эти языки и платформы и дал миру java

Karapuz ★★★★★ ()
Ответ на: комментарий от Karapuz

Поэтому на второй день создатель посмотрел на эти языки и платформы и дал миру java

вот куда тема уехала... не стоит забывать что у Java есть свой ряд проблем и недостатков и трудностей, равно как и у платформы Mono, поэтому надо искать оптимальный вариант...

I-Love-Microsoft ★★★★★ ()

Итак, нужен современный удобный язык + возможность создания биндингов. Мне показалось, что под оба эти критерия Vala подходит идеально.


Нужен общий код, чтобы его можно было дергать из C++/Qt и из C#.


Жабу можно дергать из C++ и из C#. Тема отсутствия проблем у Vala не раскрыта

Karapuz ★★★★★ ()

> Вала

Она обзавелась документацией, или всё по старинке?

tensai_cirno ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.