Standard programming languages, including complete C and C++ are often too large for micro-controllers. But programming in macro assembly language is slow.
free book:
Programming with MicroPython: Open Source Conference | O’Reilly OSCON
"MicroPython, the re-implementation of Python 3 for microcontrollers and embedded systems."
MicroPython on four typical devices: PyBoard, the micro:bit, Adafruit's Circuit Playground Express, and ESP8266/ESP32 boardsMicroPython - Python for microcontrollers
MicroPython on Unicorn
ziutek/emgo: Emgo: Bare metal Go (language for programming embedded systems)