5 ms·
Didn't find it in the readme: does anyone know what general "level" of microcontrollers are the project author(s) hoping to target? I suppose that because of th
by akavel 8y ago
Didn't find it in the readme: does anyone know what general "level" of microcontrollers are the project author(s) hoping to target? I suppose that because of the Go spec already, the minimum required architecture must be at least 32bit?
- aykevl 8y agoHi, I'm the author of the compiler. All backends supported by LLVM should be fairly easily supported by TinyGo. In fact, I've had the blinky example running on an Arduino a while back (8-bit, 2kB RAM, 32kB flash). There is nothing in the Go spec that requires a 32-bit system, just like there is nothing in the C standard that requires a 16-bit system (ints are at least 16 bits). The biggest obstacle is not the fact that it is 8-bit, but the fact that it is a Harvard-style processor with a separate address space for code and data. I've added a section to the README to explain this. Also, garbage collection is going to be painful.
- UncleEntity 8y ago> We hope that the support built into the LLVM IR is sufficient to support a broad class of garbage collected languages including Scheme, ML, Java, C#, Perl, Python, Lua, Ruby, other scripting languages, and more.[0] Maybe "and more" means there's hope for Go style garbage collection. [0]https://llvm.org/docs/GarbageCollection.html https://llvm.org/docs/GarbageCollection.html
- deleted 8y ago[deleted]
- j1elo 8y agoWatch out because the bits don't necessarily state anything about the "level" of the microcontroller... at least in some cases. I'm currently writing code for a 32-bit AVR32 UC3C family chip, and that's for sure closer to an old-school 8-bit AVR than it is to a "full fledged" 32-bit ARM