tinygo 0.6.0

TinyGo – це компілятор мови Go, призначений для використання в таких галузях, як мікроконтролери, WASM, а також розробки утиліт командного рядка.

TinyGo використовує утиліти та бібліотеки, написані у проекті Go, при цьому надаючи альтернативний метод компіляції програм на основі напрацювань проекту LLVM.

Завдання проекту:

  1. Забезпечити мінімальний розмір файлів, що виконуються.
  2. Підтримка найбільшої кількості мікроконтролерів.
  3. Підтримка WebAssembly.
  4. Гарна підтримка CGo.
  5. Підтримка оригінального коду Go без змін.

Приклад використання для перемикання LED на мікроконтролері:

пакет основний

імпорт (
"machine"
"час"
)

func main() {
led:=machine.LED
led.Configure(machine.PinConfig{Mode: machine.PinOutput})
for {
led.Low()
time.Sleep(time.Millisecond * 1000)

led.High()
time.Sleep(time.Millisecond * 1000)
}
}

Версія 0.6.0 містить багато змін. Основні з них відносяться до покращення підтримки CGo, js.FuncOF (Go 1.12+), а також двох нових налагоджувальних плат: Adafruit Feather M0 та Adafruit Trinket M0.

Повний список змін доступний GitHub сторінці проекту.

Джерело: linux.org.ru

Додати коментар або відгук