The OpenNET Project / Index page

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



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

Оглавление

Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM, opennews (?), 19-Июл-19, (0) [смотреть все]

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


2. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  +3 +/
Сообщение от Аноним (2), 19-Июл-19, 15:31 
Жаль поддержки ESP32 нет, а было бы просто огонь:
- хорошая поддержка веб-технологий;
- горутины (а эта железка двухъядерная).

Хотя наличие какой-нибудь простенькой RTOS не помешало бы...

> Генерация очень компактных исполняемых файлов;

Лень по ссылкам ходить, насколько компактно? Вес Hello World исчисляется не в мегабайтах? Любители Go, не минусуйте - в контексте встраиваемых систем "настольный" Go действительно весьма жирный.

> поддержка платы HiFive1 rev B на основе архитектуры RISC-V

Вот это кстати хорошо.

Немного оффтоп: лично меня печалит, что беспроводные коммуникации = проприетарные блобы. Wi-Fi (те же ESP-шки, которые впихнули в одну из RISC-V плат), Bluetooth, а уж про GSM/GPRS вспоминать страшно... Медленное, но верное рподвижение RISC-V радует, надеюсь что однажды кто-нибудь сможет родить по-настоящему свободный Wi-Fi чип.

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

3. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  +3 +/
Сообщение от Аноним (2), 19-Июл-19, 15:38 
Во что нашёл:
https://tinygo.org/faq/what-about-esp8266-esp32/
Ответить | Правка | Наверх | Cообщить модератору

18. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  +/
Сообщение от proninyaroslavemail (ok), 19-Июл-19, 18:46 
>- горутины (а эта железка двухъядерная).

И они никак не связаны с многоядерностью, асинхронность не всегда равно параллелизм. Так что не вижу тут никакого преимущества для многоядерных процах по сравнению с другими языками. К тому же по дефолту (по крайней мере так было) рутины запускаются на 1 ядре, поочерёдно переключаясь, так как работа с потоками ОС не такая уж и дешёвая вещь.

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

50. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  +2 +/
Сообщение от АноНеМаус (?), 20-Июл-19, 16:08 
По дефолту уже давно горутины запускаются не на одном ядре. И потоки ОС почти не используются (запускается столько потоков сколько ядер, а дальше уже свой планировщик)
Ответить | Правка | Наверх | Cообщить модератору

25. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  –1 +/
Сообщение от asdasd (?), 19-Июл-19, 19:49 
> Любители Go, не минусуйте - в контексте встраиваемых систем "настольный" Go действительно весьма жирный.

Любая статически скомпилированная прога будет столько весить (а микрики как раз статично собранные, ибо там не то что shared library, там ОС то нет).

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

26. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  –1 +/
Сообщение от Аноним (26), 19-Июл-19, 19:52 
Ничего подобного. Дело даже не в том, что у Go весьма жирный рантайм, а в самой «модели памяти», которую сии деятели героически пытаются протащить на МК. При малом объёме оперативки вообще кучу использовать противопоказано, не говоря уже про GC.
Ответить | Правка | Наверх | Cообщить модератору

39. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  +1 +/
Сообщение от Аноним (2), 20-Июл-19, 06:16 
> Любая статически скомпилированная прога будет столько весить

Да что вы такое говорите?

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

40. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  +/
Сообщение от Анон12345 (?), 20-Июл-19, 10:55 
frog@frog-ThinkPad-X240 /tmp> cat q.c
#include <stdio.h>
void main()
{
    printf("Hello World\n");
}
frog@frog-ThinkPad-X240 /tmp> gcc q.c -static
frog@frog-ThinkPad-X240 /tmp> ls -la a.out
-rwxrwxr-x 1 frog frog 844696 Jul 20 10:54 a.out*
frog@frog-ThinkPad-X240 /tmp>
Ответить | Правка | Наверх | Cообщить модератору

42. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  +1 +/
Сообщение от Аноним (42), 20-Июл-19, 11:15 
Не умеешь.


$ musl-gcc q.c -static
$ ls -l a.out
-rwxr-xr-x 1 user user 26064 июл 20 11:12 a.out

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

56. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  –1 +/
Сообщение от Аноним qwerty_qwerty1 (?), 21-Июл-19, 09:51 
Не бьется что то


#include <stdio.h>                                                                                                                  
int main()                                                                                                                          
{                                                                                                                                    
printf("Hello World\n");                                                                                                            
return 0;                                                                                                                            
}    

gcc q.cc -static
ls -l

844696 июл 21 09:48 a.out                                                                                  
70 июл 21 09:48 q.cc    

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

43. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  +/
Сообщение от Аноним (42), 20-Июл-19, 11:18 
Ну и для сравнения:


$ cat q.go
package main

import "fmt"

func main() {  
    fmt.Println("Hello World")
}
$ go build
$ ls -l hello
-rwxr-xr-x 1 user user 1906945 июл 20 11:16 hello


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

65. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  +/
Сообщение от Fedd (ok), 28-Июл-19, 18:26 
package main
func main() {
    print("Hello World!\n")
}
go build -ldflags -s hello.go
ls -l hello
-rwxr-xr-x 1 Unit RedstarOS 760160 Jul 28 18:16 hello
Ответить | Правка | Наверх | Cообщить модератору

44. "Выпуск Tinygo 0.7.0, компилятора языка Go на базе LLVM"  +3 +/
Сообщение от пох. (?), 20-Июл-19, 14:03 
и это он еще man strip не прочитал!

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

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

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




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

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