# Toit

> programming language

**Wikidata**: [Q105774531](https://www.wikidata.org/wiki/Q105774531)  
**Source**: https://4ort.xyz/entity/toit

## Summary
Toit is a programming language and virtual machine specifically designed for the Internet of Things (IoT). Created by Danish computer programmer Lars Bak, it serves as a system for communicating instructions to machines and connected devices. The platform is open-source, licensed under the GNU Lesser General Public License, version 2.1.

## Key Facts
- **Classification:** Toit is an instance of a programming language, a virtual machine, and a system console.
- **Primary Use:** The language is purpose-built for the Internet of Things (IoT).
- **Creator:** Toit was designed by Lars Bak, a Danish computer programmer and computer scientist born in 1965.
- **License:** The software operates under the GNU Lesser General Public License, version 2.1 (LGPL-2.1).
- **Source Code:** The repository is hosted on GitHub at `github.com/toitlang/toit`.
- **Documentation:** The user manual is available at `docs.toit.io`.
- **Release Activity:** The platform underwent rapid iteration in late 2021 and early 2022, releasing versions 0.10.5 through 1.6.0 between December 2021 and February 2022.
- **Website:** The official website is `https://toit.io`.

## FAQs
### Q: What is Toit used for?
A: Toit is used for developing applications and managing systems for the Internet of Things (IoT). It functions as a language and virtual machine for communicating instructions to embedded devices.

### Q: Who created the Toit programming language?
A: Toit was designed by Lars Bak, a Danish computer programmer and computer scientist.

### Q: Is Toit open source?
A: Yes, Toit is open-source software released under the GNU Lesser General Public License, version 2.1.

## Why It Matters
Toit matters because it attempts to solve the complexity of developing for the Internet of Things (IoT) by providing a holistic solution that includes both a high-level programming language and a virtual machine. By utilizing a virtual machine architecture, Toit allows for code to be run on embedded devices without reflashing the hardware, enabling more dynamic and flexible management of IoT infrastructure. This approach addresses the specific constraints of connected hardware, offering a modern alternative to lower-level languages typically required for such devices.

The project is significant due to the involvement of Lars Bak, a noted figure in computer science recognized for his work on virtual machines. The language's structure as a "system console" suggests it is designed not just for application logic, but for direct interaction with and control of machine hardware. Its rapid release cycle in late 2021 and early 2022 demonstrates an active effort to refine the toolchain for developers in the growing IoT market.

## Notable For
- **IoT Specialization:** Distinct from general-purpose languages, Toit is explicitly tailored for the Internet of Things.
- **Virtual Machine Architecture:** It incorporates a virtual machine, allowing for efficient execution and updates on hardware.
- **Authorship:** Designed by Lars Bak, a prominent Danish computer scientist.
- **Open Source:** It provides a free software alternative in the embedded systems space under the LGPL-2.1 license.
- **Rapid Development Cycle:** The project saw ten distinct version releases between December 20, 2021, and February 7, 2022.

## Body

### Design and Development
Toit is a programming language designed by Lars Bak, a Danish computer programmer and computer scientist. It is classified not only as a programming language but also as a virtual machine and a system console. This combination allows the language to function as a unit used to control machines, communicating instructions directly to the hardware.

The language is explicitly intended for use in the Internet of Things (IoT) sector. It is developed as an open-source project, with its source code available in a public repository.

### Technical Properties
The software is distributed under the GNU Lesser General Public License, version 2.1. The official source code repository is located at `github.com/toitlang/toit`, categorized under GitHub topics such as "toit-language." Developers can access documentation and user manuals via the dedicated site `docs.toit.io` and the main website `toit.io`.

### Version History
The development of Toit showed significant activity in the transition from 2021 to 2022. According to GitHub release records:
- **v0.10.5** was released on December 20, 2021.
- **v0.11.0** and **v0.11.1** followed on December 21 and December 22, 2021, respectively.
- **v0.12.0** was released on December 30, 2021.
- Subsequent versions, including **v0.13.1**, **v0.14.0**, **v0.15.0**, **v0.15.1**, and **v0.16.0**, were released throughout January 2022.
- The version history in this period culminated with **v1.6.0** on February 7, 2022.

## References

1. [Source](https://blog.creandum.com/the-next-big-computing-platform-is-toit-a461e1e7a5a5)
2. [Source](https://medium.com/@kasper.lund/building-for-billions-bcb48814d864)
3. [Release 0.10.5. 2021](https://github.com/toitlang/toit/releases/tag/v0.10.5)
4. [Release 0.11.0. 2021](https://github.com/toitlang/toit/releases/tag/v0.11.0)
5. [Release 0.11.1. 2021](https://github.com/toitlang/toit/releases/tag/v0.11.1)
6. [Release 0.12.0. 2021](https://github.com/toitlang/toit/releases/tag/v0.12.0)
7. [Release 0.13.1. 2022](https://github.com/toitlang/toit/releases/tag/v0.13.1)
8. [Release 0.14.0. 2022](https://github.com/toitlang/toit/releases/tag/v0.14.0)
9. [Release 0.15.0. 2022](https://github.com/toitlang/toit/releases/tag/v0.15.0)
10. [Release 0.15.1. 2022](https://github.com/toitlang/toit/releases/tag/v0.15.1)
11. [Release 0.16.0. 2022](https://github.com/toitlang/toit/releases/tag/v0.16.0)
12. [Release 1.6.0. 2022](https://github.com/toitlang/toit/releases/tag/v1.6.0)
13. [Release 1.6.1. 2022](https://github.com/toitlang/toit/releases/tag/v1.6.1)
14. [Release 1.6.2. 2022](https://github.com/toitlang/toit/releases/tag/v1.6.2)
15. [Release 1.6.3. 2022](https://github.com/toitlang/toit/releases/tag/v1.6.3)
16. [Release 1.6.4. 2022](https://github.com/toitlang/toit/releases/tag/v1.6.4)
17. [Release 1.6.6. 2022](https://github.com/toitlang/toit/releases/tag/v1.6.6)
18. [Release 1.6.7. 2022](https://github.com/toitlang/toit/releases/tag/v1.6.7)
19. [Release 1.6.8. 2022](https://github.com/toitlang/toit/releases/tag/v1.6.8)
20. [Release 1.6.10. 2022](https://github.com/toitlang/toit/releases/tag/v1.6.10)
21. [Release 1.6.11. 2022](https://github.com/toitlang/toit/releases/tag/v1.6.11)
22. [Release 1.6.14. 2022](https://github.com/toitlang/toit/releases/tag/v1.6.14)
23. [Release 1.6.15. 2022](https://github.com/toitlang/toit/releases/tag/v1.6.15)