LINUX.ORG.RU

А есть ли замена Go в плане кросскомпиляции?

 ,


2

2

Вот смотрите, есть один говнокод. Ядро на си, расширения на питоне. Поскольку мы не профессиональные программисты, то кодим как умеем, иногда приходится под венды некоторые куски переписывать заново, gui и не только. Go может из одного кода под линуксом генерить elf, PE и mach-o. То есть очевидный профит. Но Go слишком молодой и непопулярный язык, отсюда мало батареек. Например, go-gtk никогда не закончат. Про питоновские scipy, numpy, nltk я вообще молчу.

P.S. Это не Go-тред, потому в тегах его не указывал, потому воздержитесь от срача. Спасибо за ответы :)


Ответ на: комментарий от EXL

Фича KF5 не в ношении какой-то части от KDE для его же приложений.

Фича KF5 в том, что можно взять либу из состава KDE и не тянуть ничего остального. Например вытянуть KArchive и распаковывать архивы в Qt-шном стиле на любой поддерживаемой ОС. А библиотека займет всего 600 кб.

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

Это всё хорошо звучит в теории, однако мейнтейнеры большинства дистров как тянули половину KDE, так и тянут:

Текстовые редакторы: куда валить. (комментарий)

Кста в рассылке KDE-разрабов ща идёт активное обсуждение портов Kate на Windows и OS X. Пытаются сделать редактор действительно кросс-платформенным.

EXL ★★★★★
()

А что программа выводит, рисует ? Если чтото двухмерное, то можно можно же сделать ядро программы на go с http сокетом а гуи в браузере рисовать (html+css+js, php/python, nginx/apache или nodejs). Т.е. всю секретную, сложную обработку в ядре программы скрыть, скомпилировать. А в клиентской части (фронтенде) по моему нечего скрывать. Ну увидят html с кнопками и ajax запросами и что это даст ?

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

KDE-разрабов ща идёт активное обсуждение

обсуждение

Значит, его никогда не будет. К сожалению.

Это звучит хорошо для разрабов обычного Qt-софта. Взял любую с Tier 1, они кроме голого Qt ничего не требуют. Может быть ещё парочку свободных либ, типа zlib, libbz и т.д, но это не в составе KDE.

Для KDE-софта это не удивительно, что они требуют много. Ну так подумай, что по-дефолту должно быть у каждого KDE приложения? Погляди тут http://api.kde.org/frameworks-api/frameworks5-apidocs/. Особенно в конце списка. Там ты найдёшь либы для плазмы, ввода/вывода, уведомлений, всякие сервисы, краш-хендлер. Тут твои 2/3 кеды уже и выходят.

a1batross ★★★★★
()

tcl/tk + С вставки (функция на С будет нативной для tcl) для вычислений.

кроссплатформенно elf/pe легко собирается на линуксе при помощи freewrap

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

mingw-ocaml? Представляю скольких нервов будет стоить это всё настроить. Лиспы интерпретируемы же, вроде.

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

Гуй нужен для настроек проекта, подключения расширений и просмотра графиков.

html+css+js, php/python, nginx/apache или nodejs

Б-же упаси. Я не умею верстать, будет как сайты 97 года. Лучше вообще не делать, чем сделать плохо :)

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

кроссплатформенно elf/pe легко собирается на линуксе при помощи freewrap

А для макоси можно чем-то собрать из линукса?

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

Лиспы интерпретируемы же, вроде.

Зависит от диалекта. Общелисп компилируется, Racket, на который тут некоторые с общелиспа ушли – тоже. Кложура, но она уже в виртуальные тачки jvm/.net/js. С цацкелем по любому проблем быть не должно, тем более он компилится. Вот почитай: https://ghc.haskell.org/trac/ghc/wiki/CrossCompilation

Hertz ★★★★★
()
Последнее исправление: Hertz (всего исправлений: 1)
Ответ на: комментарий от jori

исходники freewrap открыты. спишись с автором и вместе сделайте для мака

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

ASM MOS Technology 6502

Собрать приложение в виде файла *.nes, который потом можно будет кросс-платформенно запускать в эмуляторах NES на Windows/Linux/OS X. Бонусом идёт возможность запускать программу на реальном железе NES/Famicon/Dendy при наличии оранжевенького катриджа.

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

Любым кросскомпилятором любого компилируемого языка с поддержкой более чем двух платформ.

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

Нет. Clisp - это реализация генерящая байткод, к тому же без пяти минут покойник, ни то жив, ни то мёртв.
Под общелиспом следует понимать SBCL, Clozure, для jvm ABCL, или коммерческие Lispworks или Allegro.

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

ну ты пол треда пишешь о страхе декомпиляции

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

Благодарю, только я не совсем понимаю в чем там разница. Например, если я возьму https://github.com/hankhero/cl-json оно будет работать на SBCL? И есть ли какие-нибудь математические, статистические, нлп библиотеки для него?

jori
() автор топика
Последнее исправление: jori (всего исправлений: 1)
Ответ на: комментарий от jori

SBCL насколько я знаю одна из, если не самая приличная опенсорсная/свободная реализация CL.

Хотя если уж задумываться на серьёзную разработку, я бы смотрел в сторону коммерческих реализаций типа Allegro или Lispworks.

Dark_SavanT ★★★★★
()
Последнее исправление: Dark_SavanT (всего исправлений: 1)
Ответ на: комментарий от Dark_SavanT

Да я не буду на лисп переписывать, просто иногда становится интересно что в нём другие находят. Говорят text mining на нём очень удобен в плане разработки, но вот я смотрю на код quicklisp.lisp и у меня уже мозг закипает. К тому же для пользователя переход на другой яп должен остаться незаметным и совместимым со старыми пользовательскими скриптами. Я думаю олдскульный лисп имеет cffi, гуглить лень, значит придется делать прокладку на сишке к питону. Грузинский пионер, в общем - сначала создаем проблему, потом решаем. К тому же где там кросскомпиляция из линукса?

коммерческих реализаций типа Allegro или Lispworks

LispWorks 7.0 (32-bit) for x86/x86_64 Linux - Professional €1200 - Enterprise €3600 LispWorks 7.0 (64-bit) for x86_64 Linux - Professional €2400 - Enterprise €3600

Кхм. Проще купить макбук, выучить английский и работать на буржуев.

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

Ну ты сам спросил про «чем можно упарываться если не сишечкой», вот тебе один из вариантов ответа - (обще-)лисп. А уж переписывать или нет - дело хозяйское, я б не стал.

Пользовательские скрипты тебе никто точно так же не мешает из встроенного питона исполнять. То, что это в мире лисповодов могут посчитать за зашквар - дело десятое. Можно? Можно! Нужно? Дануна***!

К тому же где там кросскомпиляция из линукса?

Там Ъ-подход: ставишь виртуалку, разворачиваешь окружение и компилируешь. Вот без шуток, на мой взгляд самый правильный и наименее граблеёмкий способ.

Кхм. Проще купить макбук, выучить английский и работать на буржуев..

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

Dark_SavanT ★★★★★
()
Последнее исправление: Dark_SavanT (всего исправлений: 1)

go-gtk никогда не закончат

Есть Vala ещё (генератор в СИ), совместно с CMake можно получить законченный продукт с тестами и установщиками под венды и другие платформы. Ещё msys2.github.io помогает.

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

Ну да, но меня интересовала кросссборка из-под линя.

То, что это в мире лисповодов могут посчитать за зашквар

Я слабо представляю как 50-летний гуманитарий, еле осиливший питон, посмотрит на меня когда в один прекрасный день узнает что питон больше не котируется и нужно учить лисп. Единственное утешение, которое я мог бы ему предложить, это уважение среди анонимных лисперов, о которых он не знал до момента.

Там Ъ-подход: ставишь виртуалку, разворачиваешь окружение и компилируешь. Вот без шуток, на мой взгляд самый правильный и наименее граблеёмкий способ.

Так я около года назад научился собирать без виртуалки. Неужто не туды етить?

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

Не, это не основной доход. Да и знание разговорного недостаточно чтобы запустить версию проги для наших западных партнёров.

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

Я слабо представляю как 50-летний гуманитарий, еле осиливший питон, посмотрит на меня когда в один прекрасный день узнает что питон больше не котируется и нужно учить лисп. Единственное утешение, которое я мог бы ему предложить, это уважение среди анонимных лисперов, о которых он не знал до момента.

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

Так я около года назад научился собирать без виртуалки. Неужто не туды етить?

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

Да и знание разговорного недостаточно чтобы запустить версию проги для наших западных партнёров.

Дело твоё. Но разговорный английский ачивка полезная.

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

Ну да, но с си переписывать на vala - смысл? Под макось не собрать ведь, а под винду и так норм.

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

Не обязательно что-то переписывать, Vala без проблем использует СИ-шный код и наоборот. Vala, технически и есть СИ, только код в ООП стиле намного компактнее.

Под MacOS вроде есть Glib и GTK+, а значит не должно быть проблем. Сам не проверял, т.к. больше работаю с виртуалками в KVM на сервере, а Макось там сложно ставится.

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

что питон больше не котируется и нужно учить лисп

Чистый второй питон можно непосредствено компилировать в лисп, имея некоторые плюшки по скорости. Есть в ql такие батарейки. Но стандартная библиотека отсутсnву.n процентов на 95. Решается подключением по одной штуке аналогов из CL.

уважение среди анонимных лисперов, о которых он не знал до момента.

Ну в ql-ых батарейках за 1000 проектов написаных вполне именоваными людьми.

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

Я думаю олдскульный лисп имеет cffi,

cffi, cl-autowrap

значит придется делать прокладку на сишке к питону.

Их есть уже штуки 3, но никто за ненадобностью не знает какой из низ них работает. Про транслятор говрил уже выше.

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

Не обязательно что-то переписывать, Vala без проблем использует СИ-шный код и наоборот. Vala, технически и есть СИ, только код в ООП стиле намного компактнее.

Но в чем смысл? Я не понимат.

Под MacOS вроде есть Glib и GTK+, а значит не должно быть проблем

Ну вот если всё же взять го, то в первом посте годные ссылки для гуя. Будет кроссплатформенный код.

jori
() автор топика
Ответ на: комментарий от antares0

Чистый второй питон можно непосредствено компилировать в лисп, имея некоторые плюшки по скорости. Есть в ql такие батарейки. Но стандартная библиотека отсутсnву.n процентов на 95. Решается подключением по одной штуке аналогов из CL.

А я вот нашёл https://github.com/sbinet/go-python :)

Ну в ql-ых батарейках за 1000 проектов написаных вполне именоваными людьми.

Будто мне с ними на паспорт фотографироваться.

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

в первом посте годные ссылки для гуя.

ui не документирована от слова совсем, gxui имеет ненативный вид. Есть еще вариант использовать qml, но чаше всего делают вебморду.

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

К тому же где там кросскомпиляция из линукса?

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

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

Но в чем смысл? Я не понимат.

Ну как заявлено в теме, кроссплатформенный код с поддержкой GTK+, хорошо интегрируется с СИ-кодом, так как является генератором в последний, т.е. все преимущества проверенного временем СИ + синтаксический сахар.

Ну вот если всё же взять го, то в первом посте годные ссылки для гуя. Будет кроссплатформенный код.

Я не агитирую, просто говорю об альтернативе, на которую можно обратить внимание. Изучая Vala, можно использовать, в том числе, все прежние ссылки, применимые к Glib, GTK+, СИ.

backbone ★★★★★
()
Последнее исправление: backbone (всего исправлений: 2)
Ответ на: комментарий от jori

А я вот нашёл https://github.com/sbinet/go-python :)

Расскажешь когда и насколько оно заработает. Пока это выглядит банальным ffi, а я в цитате говрил о трнасляторе все же.

antares0 ★★★★
()

Чет вы меня совсем запутали :)

jori
() автор топика

Java, в качестве GUI использовать JavaFX

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