The OpenNET Project / Index page

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



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

"Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от opennews (ok), 07-Мрт-25, 10:35 
Опубликован выпуск проекта Tinygo 0.36, развивающего компилятор для языка Go. Компилятор подходит для генерации компактных исполняемых файлов для маломощных систем, таких как микроконтроллеры  и встраиваемые устройства, программы для которых должны минимально потреблять  память и вычислительные ресурсы.  Компиляция для поддерживаемых целевых платформ реализована при помощи LLVM, а  библиотеки функций заимствованы из основного инструментария проекта Go.  Код распространяется под лицензией BSD...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=62844

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

Оглавление

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


1. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от u235 (ok), 07-Мрт-25, 10:35 
Ого, даже для Atmega328 можно скомпилять. Надо попробовать.
Ответить | Правка | Наверх | Cообщить модератору

2. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от Смузихлеб забывший пароль (?), 07-Мрт-25, 10:43 
скомпилять-то можно, но вот сколько кода туда влезет
Ответить | Правка | Наверх | Cообщить модератору

16. "Выпуск Tinygo 0.36, компилятора для языка Go"  +1 +/
Сообщение от Аноним (16), 07-Мрт-25, 12:18 
При гошной статической линковке всего, пожалуй, собственно полезного кода и не влезет ни строчки в эти 20 кбайт.
Ответить | Правка | Наверх | Cообщить модератору

18. "Выпуск Tinygo 0.36, компилятора для языка Go"  +3 +/
Сообщение от Аноним (18), 07-Мрт-25, 12:23 
за то немножко телеметрии влезет, все вперед!
Ответить | Правка | Наверх | Cообщить модератору

41. "Выпуск Tinygo 0.36, компилятора для языка Go"  +1 +/
Сообщение от Аноним (41), 07-Мрт-25, 22:31 
Я конечно не игого-люб, но телеметрия вроде пихается в компилятор от гугла, в сам бинарь вроде ничего (говорят) не пихают.
Ответить | Правка | Наверх | Cообщить модератору

42. "Выпуск Tinygo 0.36, компилятора для языка Go"  +3 +/
Сообщение от Аноним (42), 08-Мрт-25, 00:54 
А в сишочке-то для микроконтроллеров динамически линуют, да. Особая сишная магия.
Ответить | Правка | К родителю #16 | Наверх | Cообщить модератору

28. "Выпуск Tinygo 0.36, компилятора для языка Go"  +1 +/
Сообщение от зомбированный (?), 07-Мрт-25, 17:39 
Под Atmega328 лучше AVR Studio 4.19 ничего не существует
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

35. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от u235 (ok), 07-Мрт-25, 18:22 
> Под Atmega328 лучше AVR Studio 4.19 ничего не существует

Это точно! И симулятор там зачётный!

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

39. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от Аноним (39), 07-Мрт-25, 21:46 
он только под винду?
Ответить | Правка | К родителю #28 | Наверх | Cообщить модератору

51. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от Смузихлеб забывший пароль (?), 08-Мрт-25, 18:02 
Была же ещё гораздо более продвинутая Atmel Studio( ныне Микрочип студио ) - по сути, частично переделанная VS, года, эдак, 2015-го
Ответить | Правка | К родителю #28 | Наверх | Cообщить модератору

57. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от зомбированный (?), 08-Мрт-25, 21:47 
так она более тяжелая - а  эта просто идеально
Ответить | Правка | Наверх | Cообщить модератору

3. "Выпуск Tinygo 0.36, компилятора для языка Go"  –3 +/
Сообщение от Facemakeremail (?), 07-Мрт-25, 10:55 
Еретический проект. Одна из (немногих) сильных сторон Go — то, что его создатели отринули зависимость от LLVM и развивают собственный переносимый ассемблер.
Ответить | Правка | Наверх | Cообщить модератору

5. "Выпуск Tinygo 0.36, компилятора для языка Go"  +2 +/
Сообщение от Аноним (5), 07-Мрт-25, 11:14 
А чем плох LLVM?
Ответить | Правка | Наверх | Cообщить модератору

9. "Выпуск Tinygo 0.36, компилятора для языка Go"  –2 +/
Сообщение от Facemakeremail (?), 07-Мрт-25, 11:23 
>А чем плох LLVM?

Огромный переусложнённый проект на C++. Подозрительно!

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

17. "Выпуск Tinygo 0.36, компилятора для языка Go"  +2 +/
Сообщение от Аноним (16), 07-Мрт-25, 12:21 
А главное, что у него сомнительные кураторы.
Ответить | Правка | Наверх | Cообщить модератору

21. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от anonymous (??), 07-Мрт-25, 14:58 
А у Go прямо вот несомнительные совсем.
Ответить | Правка | Наверх | Cообщить модератору

34. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от Аноним (16), 07-Мрт-25, 18:13 
Я этого не утверждал.
Ответить | Правка | Наверх | Cообщить модератору

19. "Выпуск Tinygo 0.36, компилятора для языка Go"  +1 +/
Сообщение от Bottle (?), 07-Мрт-25, 13:52 
Тем, что его написал не Facemaker.
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

26. "Выпуск Tinygo 0.36, компилятора для языка Go"  +1 +/
Сообщение от laindono (ok), 07-Мрт-25, 17:30 
LLVM кушает много памяти и много проца. Но при этом генерирует более быстрый код.

Golang получает несколько более медленный код, но при этом компиляция происходит быстрее.

За счёт того, что golang достаточно простой язык сам по себе, он не очень много может дать дополнительной информации для оптимизатора. Соответственно выигрыш от LLVM для golang будет меньше, чем для Rust или C++.

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

44. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от funny.falcon (?), 08-Мрт-25, 09:42 
Кроме скорости компиляции, компилятор Go может размечать стеки и регистры для точного сборщика мусора. А у LLVM с этим проблемы.
Ответить | Правка | Наверх | Cообщить модератору

6. "Выпуск Tinygo 0.36, компилятора для языка Go"  –2 +/
Сообщение от pavel_simple. (?), 07-Мрт-25, 11:16 
> Еретический проект. Одна из (немногих) сильных сторон Go — то, что его
> создатели отринули зависимость от LLVM и развивают собственный переносимый ассемблер.

поэтому гугловой гошки никогда не будет ни на ембедовке ни на wasm'е

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

8. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от Facemakeremail (?), 07-Мрт-25, 11:22 
>поэтому гугловой гошки никогда не будет ни на ембедовке ни на wasm'е

Естественно. Не для этого оно.

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

10. "Выпуск Tinygo 0.36, компилятора для языка Go"  +1 +/
Сообщение от Аноним (10), 07-Мрт-25, 11:26 
Дык есть же на wasm'е вроде
GOOS=js GOARCH=wasm go build -o main.wasm
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

11. "Выпуск Tinygo 0.36, компилятора для языка Go"  –1 +/
Сообщение от Facemakeremail (?), 07-Мрт-25, 11:32 
>Дык есть же на wasm'е вроде

Только им никто не пользуется: кому нужен wasm со сборщиком мусора внутри.

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

12. "Выпуск Tinygo 0.36, компилятора для языка Go"  –3 +/
Сообщение от pavel_simple. (?), 07-Мрт-25, 11:42 
>>Дык есть же на wasm'е вроде
> Только им никто не пользуется: кому нужен wasm со сборщиком мусора внутри.

им никто не пользуется потому-что хер дождёшся пока оно в бравзер загрузится на гигабитной скорости с сжатием zstd/brotli

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

15. "Выпуск Tinygo 0.36, компилятора для языка Go"  +1 +/
Сообщение от Самый Лучший Гусь (?), 07-Мрт-25, 12:14 
Так кому нужно те и пользуются. Вон люди и питон и джаву запускают в васме и радуются производительности пока не которые думают.
Ответить | Правка | К родителю #11 | Наверх | Cообщить модератору

22. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от Аноним (22), 07-Мрт-25, 15:28 
гусь тоже думал, да в суп попал
Ответить | Правка | Наверх | Cообщить модератору

14. "Выпуск Tinygo 0.36, компилятора для языка Go"  –1 +/
Сообщение от Соль земли (?), 07-Мрт-25, 12:12 
Очередной лунапарк...
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

47. "Выпуск Tinygo 0.36, компилятора для языка Go"  –1 +/
Сообщение от Аноним (-), 08-Мрт-25, 10:33 
> создатели отринули зависимость от LLVM и развивают собственный переносимый ассемблер.

Пока не очень получилось - переносимый асм с неотключаемым GC это полнейший фэйспалмище. Фуксики проверяли - планы по захвату мира обламываются на отличненько!


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

7. "Выпуск Tinygo 0.36, компилятора для языка Go"  –1 +/
Сообщение от YetAnotherOnanym (ok), 07-Мрт-25, 11:17 
> c использованием сборщика мусора

И пусть весь мир подождёт

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

13. "Выпуск Tinygo 0.36, компилятора для языка Go"  –1 +/
Сообщение от pavel_simple. (?), 07-Мрт-25, 11:48 
>> c использованием сборщика мусора
> И пусть весь мир подождёт

не читай, сразу на амбразуру кидайся, главное рожу пострешнее сделать

>-gc=leaking disables the garbage collector, which can sometimes have a large effect >(especially on WebAssembly). Of course, memory will never be freed so this is only >appropriate for very short-lived programs.

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

20. "Выпуск Tinygo 0.36, компилятора для языка Go"  +2 +/
Сообщение от 12yoexpert (ok), 07-Мрт-25, 14:16 
ну да, на МК же все проги short-lived
Ответить | Правка | Наверх | Cообщить модератору

29. "Выпуск Tinygo 0.36, компилятора для языка Go"  +2 +/
Сообщение от _ (??), 07-Мрт-25, 17:55 
В Go очень быстрый gc даже по понятиям Java - быстрый.
Но это на моих многоголовых дракон^W серверах.
На МК - да, наверное это больно... Ну дык вроде классический Go туда и не суют?

А если кто и засунул ... ну и кто злейший враг Буратины ? :)

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

36. "Выпуск Tinygo 0.36, компилятора для языка Go"  –2 +/
Сообщение от Аноним (41), 07-Мрт-25, 18:27 
> Ну дык вроде классический Go туда и не суют?

Хех, классический... Языку "без году неделя"... ладно 15 лет, а уже успел стать классическим.

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

52. "Выпуск Tinygo 0.36, компилятора для языка Go"  +3 +/
Сообщение от _ (??), 08-Мрт-25, 19:13 
По делам их судите!(С)

Go за это время стал чуть ли не основным языком в облаках. Только полностью и беспрекословно волшебные на всю голову это оспаривают :-р
И что характерно - на нём конечно есть немного "проект XYZ но на Go"(C) - ну как же совсем без этого! :) - но всё же в основном что то новое ... в отличии отЪ :-Р

А слово "классический" я применил к Go раздаваемому отседа: https://go.dev/? да и то - только для того чтобы как то отличать его от Go раздаваемого отседа: https://tinygo.org/ ...

Раз такое нужно объяснять ... будем завидовать(С) что некоторые сюда пишут уже употребляя Ылитный пивасик(С) :-)


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

45. "Выпуск Tinygo 0.36, компилятора для языка Go"  +1 +/
Сообщение от funny.falcon (?), 08-Мрт-25, 10:02 
В tinygo не такой же GC, как в классическом Go. Он не может быть таким же по многим причинам, одна из которых - LLVM.

Garbage collection generally works fine, but may work not as well on very small chips (AVR) and on WebAssembly. It is also a lot slower than the usual Go garbage collector.

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

53. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от _ (??), 08-Мрт-25, 19:18 
Ну дык и я ох.. ох.. ох и удивился! вот! что его на MK пиарят! :)
Правда тут существует два НО(С):
- НО для некоторых и Raspberry 5 - MK! 8-)
- НО пистон же к примеру на MK прут! А чего бы и Go не попереть? Как по мне оба там "как седло на корове"(С) - но ведь упираются люди, ПРУТ! ... значит это кому то надо(С) :)

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

48. "Выпуск Tinygo 0.36, компилятора для языка Go"  –1 +/
Сообщение от Аноним (-), 08-Мрт-25, 10:36 
> В Go очень быстрый gc даже по понятиям Java - быстрый.

В мк нет такого понятия как быстро или медленно. Там есть гарантированное успевание в реалтайм. И - все остальное. И вот ГАРАНТИИ - они какие? Не, реальный мир не ждет пока там кто-то мусор собирает и проч. Ему похрен. И в мк профаченый дедлайн довольно чреватая штука.

> На МК - да, наверное это больно... Ну дык вроде классический Go
> туда и не суют?

Так вот же - сабж тоже с gc вроде. А на серверах так то - хруст игогошку теснит в хайлоаде. Вот как раз поэтому.

> А если кто и засунул ... ну и кто злейший враг Буратины? :)

Сабж!

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

54. "Выпуск Tinygo 0.36, компилятора для языка Go"  +1 +/
Сообщение от _ (??), 08-Мрт-25, 19:41 
> В мк нет такого понятия как быстро или медленно. Там есть гарантированное успевание в реалтайм. И - все остальное.

Тебя послушать так авиация - это только гиперзвуковые квази-космические стЭлсы! И - все остальное. (С) :)
А в 21 веке MK даже в рамке с фоткой твоего кота стоит - логично подумать что --> cмотря для чего! Если ты МК-хой не обмотки в актуаторах щелкаешь, а к примеру температуру на люму выводишь - тебе тоже RT нужен? Наверное вот для такого Tiny-пистоны и TinyGo и делаются...

Ну логика _наверное_ такая:
ну не тратить же целый день спеца чтоб на асме всё это сделать, вон дай пистон \ Го жуниору студенту, он за неделю напишет и даже будет работать :)
У нас 32-bit STM можно за 21 цент/штука купить (самый низ), приличный - где то 70 центов. Один день работы спеца будет сильно влиять на цену проекта :)


> Так вот же - сабж тоже с gc вроде.

НЯП - сделать Go совсем без gc ... ну скажем - соооовсем не тривиально :)

> А на серверах так то - хруст игогошку теснит в хайлоаде. Вот как раз поэтому.

В теории - да, у ржавчика есть такое приимушество...
А вот на практике... На практике - пока не встречал. :)
Они обещают много но ... ео уже я суперстар - я к примеру помню как в этот мир приходила Java :-)  --> мы в цЫрке не смеёмся (C) :-)

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

61. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от Аноним (61), 09-Мрт-25, 17:14 
> В Go очень быстрый gc даже по понятиям Java - быстрый.

да на самом деле все быстрее чем JVM из коробки, пока не пропишешь 100+ аргументов:)

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

30. "Выпуск Tinygo 0.36, компилятора для языка Go"  +4 +/
Сообщение от Аноним (30), 07-Мрт-25, 18:00 
Да мне так-то без разницы начнётся полив в парнике ровно в 7:30 или на сто миллисекунд позже. Мне надо написать по быстрому, залить герметиком и пусть там гниёт следующие лет пять. Правда, я для этой цели взял питон, но суть ясна. Я не боинг строю, я просто утром люблю и не люблю когда огурчики горчат.
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

31. Скрыто модератором  +/
Сообщение от Аноним (30), 07-Мрт-25, 18:00 
Ответить | Правка | Наверх | Cообщить модератору

59. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от _ (??), 08-Мрт-25, 23:09 
Ну тогда для тебя наверное...
У них на сайте стрипнутый хеловрот ~10KB - если в твой MK влазиит ... дык и присунь ;-)
Ответить | Правка | К родителю #30 | Наверх | Cообщить модератору

23. "Выпуск Tinygo 0.36, компилятора для языка Go"  +1 +/
Сообщение от Аноним (23), 07-Мрт-25, 15:40 
Ну здесь хоть альтернативный компиль развивают. Для языка от корпов, на минуточку!
А у другого корпязычка даже такого нет. Делайте выводы.
Ответить | Правка | Наверх | Cообщить модератору

32. "Выпуск Tinygo 0.36, компилятора для языка Go"  –1 +/
Сообщение от _ (??), 07-Мрт-25, 18:05 
Ух дождешься - они Tinygo на Ём начнут переписывать! :-р
Ответить | Правка | Наверх | Cообщить модератору

46. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от funny.falcon (?), 08-Мрт-25, 10:04 
Если ты про Rust, то уже есть реализация в GCC.

Так же есть mrust.

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

55. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от _ (??), 08-Мрт-25, 19:44 
В мире много чего есть, мой друг Горацио(С) Шык_с_Пир

А толку? :)

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

24. "Выпуск Tinygo 0.36, компилятора для языка Go"  –1 +/
Сообщение от Ддд (?), 07-Мрт-25, 16:40 
С сетью не работает так что смысла в нем не больше бейсика
Ответить | Правка | Наверх | Cообщить модератору

33. "Выпуск Tinygo 0.36, компилятора для языка Go"  +1 +/
Сообщение от _ (??), 07-Мрт-25, 18:10 
Для Ддд***ов :
1) Бейсик работает с сетю так же как (к примеру) Си или <вписать ваш любимый ЁзыгЪ>
2) Дааааалееееекоооо не на всех МК есть Ethernet или WiFi ... там иногда вообще мало что есть :)


Домохозяйки от ИТ доставляли, доставляют и будут доставлять! Я сказал! :)

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

56. "Выпуск Tinygo 0.36, компилятора для языка Go"  +1 +/
Сообщение от Брат Анон (ok), 08-Мрт-25, 20:12 
Т.е. на их сайт ты не заходил, по факту поддержку сети (соответственно) не видел, но осуждаешь. Ясно, понятно.
Ответить | Правка | К родителю #24 | Наверх | Cообщить модератору

25. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от Аноним (25), 07-Мрт-25, 17:00 
> Обеспечена совместимость с новыми ветками Ubuntu

А что там в убунту накостылили, что нужно для нее отдельно делать совместимость?

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

27. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от Аноним (27), 07-Мрт-25, 17:33 
Зато если им компилировать для linux, то со старта hello world сжирает 1 Гб виртуальной памяти, а если её нет, то падает. Hello world!
Ответить | Правка | Наверх | Cообщить модератору

49. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от Аноним (49), 08-Мрт-25, 15:02 
> а если её нет, то падает

Ты зачем overcommit выключил?

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

50. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от Аноним (27), 08-Мрт-25, 16:09 
>Ты зачем overcommit выключил?

Ограничение размера виртуальной памяти - первый шаг для обработки OOM.

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

43. "Выпуск Tinygo 0.36, компилятора для языка Go"  –1 +/
Сообщение от Аноним (-), 08-Мрт-25, 08:44 
> Компилятор подходит для генерации компактных исполняемых файлов для маломощных систем, таких как микроконтроллеры и встраиваемые устройства

Уже есть Nim. Для всего.

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

58. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от _ (??), 08-Мрт-25, 23:03 
Хороший анек бро! :)

А по факту - для хоть чего бы :)
Не надо в доказательство перечислять все три васяноподелки на нём, я в курсе. У него всё было, чтобы взлететь... но не судьба. Не расстраивайся бро - вон целый D не взлетел, а уж тут то...

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

60. "Выпуск Tinygo 0.36, компилятора для языка Go"  +/
Сообщение от Аноним (60), 08-Мрт-25, 23:52 
Основная проблема tinygo в первую очередь в отсутствии нативной поддержки многопоточности используя горутины. Это ощутимо при работе с многоядерными микроконтроллерами (как например raspberry pico).
Ответить | Правка | Наверх | Cообщить модератору

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

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




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

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