The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"В кодовую базу LLVM приняты биндинги для языка Go"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от opennews (ok) on 27-Окт-14, 15:27 
В состав проекта LLVM принят (http://llvmweekly.org/issue/42) начальный набор биндингов (http://reviews.llvm.org/rL219976) для обеспечения поддержки развиваемого компанией Google языка программирования Go (http://golang.org/), который позиционируется как гибридное решение, сочетающее высокую производительность компилируемых языков с такими достоинствами скриптовых языков, как лёгкость написания кода, быстрота разработки и защищённость от ошибок. Принятый код основан на наработках проекта LLVM Go (https://github.com/go-llvm/llvm), разработчики которого согласились перелицензировать код под лицензией LLVM и предложили (http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-October/0776...) свою работу для включения в основной состав LLVM.

Включение биндингов в состав LLVM является необходимым условием дальнейшей интеграции в LLVM фронтэнда с компилятором для языка Go (llgo (https://github.com/go-llvm/llgo)), который построен с использованием данных биндингов.  Ожидается, что поддержка языка Go войдёт в состав следующего выпуска  LLVM 3.6. Поддержка языка Go в GCC была добавлена (https://www.opennet.ru/opennews/art.shtml?num=30035) весной 2011 года.

URL: http://llvmweekly.org/issue/42
Новость: https://www.opennet.ru/opennews/art.shtml?num=40936

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по ответам | RSS]

1. "В кодовую базу LLVM приняты биндинги для языка Go"  +1 +/
Сообщение от vitalif email(ok) on 27-Окт-14, 15:27 
И 0 комментариев. Всем пофиг?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "В кодовую базу LLVM приняты биндинги для языка Go"  +2 +/
Сообщение от Стержень on 27-Окт-14, 15:49 
да
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

4. "В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от BratSinot (ok) on 27-Окт-14, 15:50 
А что еще говорить?
gccgo пока не нужен, т.к. там не работают goroutine и работает он только под *nix (ну или только под GNU/Linux).

Что касается llgo, то ничего сказать не могу, т.к. не работал с ним.

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

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

5. "В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от Анотим on 27-Окт-14, 19:05 
>gccgo пока не нужен

Чувствуется эксперт. gccgo умеет линковаться с динамическими библиотеками, в отличие от официального компилятора.
>только под *nix

Остальные системы не нужны.
>активно работают и улучшают

gccgo с небольшим запаздыванием включает все фичи. Goroutine доступны с линковщиком gold.

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от Анотим on 27-Окт-14, 19:08 
>защищённость от ошибок

Громко сказано. Не от всех ведь ошибок? Даже в описании Rust сказано "защищённость от распространённых ошибок".

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от Аноним (??) on 27-Окт-14, 19:12 
имеются ввиду сборка мусора и bounds checking
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от Аноним (??) on 27-Окт-14, 19:48 
> gccgo умеет линковаться с динамическими библиотеками, в отличие от официального компилятора.

Ты так говоришь, как будто это что-то хорошее

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

9. "В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от nc (ok) on 27-Окт-14, 20:47 
Отличная новость!
Интересно, а в чем заключается поддержка Go со стороны LLVM? Иными словами что такого есть в Go, что недостаточно стандартных возможностей LLVM и нужно делать какие-то биндинги? Для Rust есть аналогичная "поддержка со стороны LLVM"?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

10. "В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от Доктор Звездулькин on 27-Окт-14, 21:54 
>там не работают goroutine

Работают вполне.

>работает он только под *nix (ну или только под GNU/Linux)

Ну, чего поделаешь. Однако чаще всего на Go пишут серверные приложения, которые запускают под *nix.

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

11. "В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от Доктор Звездулькин on 27-Окт-14, 21:58 
> Иными словами что такого есть в Go, что недостаточно стандартных возможностей LLVM и
> нужно делать какие-то биндинги?

Ну, во-первых, llgo написан на Go, и ему хотелось бы как-то вызывать библиотеки LLVM. Конструктор байт-кода, например.

Хотя, конечно, я думаю, теоретически, может быть, наверное, он мог бы выплевывать LLVM IR самостоятельно, а потом просто вызывать llc.

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

13. "В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от BratSinot (ok) on 28-Окт-14, 15:11 
> Чувствуется эксперт. gccgo умеет линковаться с динамическими библиотеками, в отличие от официального компилятора.

В офф. компиляторе этого нет, потому-что в Go изначально этого нет.
Да и потом, с чего это нет? import "C" даст вам все что угодно. Я так SSE через ассемблерные вставки использовал.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

14. "В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от BratSinot (ok) on 28-Окт-14, 15:16 
> Работают вполне.

Ну уж извините, я бедный, у меня нет золота.

> Ну, чего поделаешь. Однако чаще всего на Go пишут серверные приложения, которые
> запускают под *nix.

Ну я на нем только клиентские писал. Хотя была одна серверная, но нужно было учитывать возможность поднятия под Windows.

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

15. "В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от BratSinot (ok) on 28-Окт-14, 15:18 
Да и потом, лично мне Go нравится из-за статичной линковки. А так, я соберу у себя программу с помощью gccgo, а на другой машине будет другая версия gccgo (или не будет), у которой ABI поломано.
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

16. "В кодовую базу LLVM приняты биндинги для языка Go"  +/
Сообщение от Андрей (??) on 29-Окт-14, 20:14 
> Ожидается, что поддержка языка Go войдёт в состав следующего выпуска LLVM 3.6.

Только взялись интегрировать, и уже в следующем релизе! Это радует.

Вот бы они так с openmp поступили. А то говорят уже более года, а успеть и до 3.6 под большим вопросом.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру