Add BLAKE2S crypto hash support.
Start BLE services in one go.
Improve BLE resource management.
Add 'close' to the BLE adapter.
Fix RMT on esp32s3 (and other variants).
https://t.co/zk7x4ehsl4
Add 'toit pkg' and 'toit snapshot' commands.
Don't use tasks to wait for services to appear.
Handle 'werror' when doing 'toit.compile --analyze'.
Stream JSON and YAML output onto a Writer.
Change close-X to mark-closed on io.Reader and io.Writer.
https://t.co/zoqciBBdmP
Introduce new io library.
Optimize getting size of builtin collections.
Avoid spinning up too many native threads on host platforms.
Avoid lock contention on scavenge on host platforms.
Start to bring back the toit executable.
Roll esp-idf to latest v5.0.
https://t.co/U1GS6ZpCl4
Compare the simple and wrong syntax with the correct but verbose syntax:
a = [[]] * 4
b = [ [] for _ in range(4) ]
In Toit you pass a block (small fn introduced with a colon) to the List constructor.
c := List 4: []
Took an immense amount of self discipline and focus, so yesterday ends(at 1am today) with an esp32 running a @toitlang container with capacitive moisture sensor sending moisture levels every 3 seconds to a local mqtt broker on a raspberry Pi which I can look at through my phone.
New version of @toitlang's pixel_display library is getting sliders. We have PNG support, but no PNGs were used here, just gradients like the ones we know from the web.
Our friends from @toitlang have just released a new tutorial for Walter, our powerful ESP32-S3 development board with LTE-M, NB-IoT, and GNSS. https://t.co/LpksrOm3Uz
Going to launch soon on @crowd_supply. 🙌https://t.co/bzDbtgvMbl💪 #Walter#IoT#Toit#IoTDevelopment
In the Toit weak map proposal the lifetime of the key is not relevant, so it can be a string or an int, but the value can be automatically removed from the map if it is not otherwise reachable and we need the memory.
Looks like I'm getting weak maps, but not with the JavaScript semantics.
In JavaScript WeakMap the key keeps the value alive, but when the key is collected by the GC, the key-value pair are removed from the map, and the value may become GC-able.
I decided I needed a weakly retaining hash map for my latest #toitlang project. It can be used to cache values that can be recalculated. The values can be nulled out during GC if the objects are not reachable in other ways and there is memory pressure.
https://t.co/9MCzuPxp9B