【AICon】探索RAG 技术在实际应用中遇到的挑战及应对策略!AICon精华内容已上线73%>>> 了解详情
写点什么

吐槽物联网开发难搞,一群工程师搞了个 Toit 语言并宣布开源,其与 Python 类似

  • 2021-11-24
  • 本文字数:1681 字

    阅读完需:约 6 分钟

吐槽物联网开发难搞,一群工程师搞了个Toit 语言并宣布开源,其与Python类似

Toit 编程语言宣布开源

 

近日,Toit 编程语言团队宣布将项目开源。但其实很多开发者对 Toit 并不熟悉,Toit 究竟是什么?

 

Toit 是由 Google Chrome V8 团队开发的,创立于 2018 年,旨在为物联网设备构建一个通用固件,以取代传统的开发流程。它们提供了一套全新的功能,甚至是一种专为物联网开发的类似 Python 的新编程语言。

 

Toit 是一种用于物联网(IoT,Internet of Things)的面向对象的编程语言,这也是它与其他用于嵌入式系统的编程语言最大的不同之处。它集成了语法高亮、goto-definitions 和自动补全等先进的编辑器功能。根据官方文档显示,Toit 在 IoT 设备上能够实现数秒级别的快速代码部署。

 

借助 Toit 这个专门用于物联网的语言,可以实现更好的电源管理,这对物联网这类采用电池供电的设备十分重要。Toit 还具有一个自动内存管理系统,有助于优化内存使用,使设备能长期稳定运行避免崩溃。新语言还带有垃圾收集器,同样有助于内存管理系统。像上述这样的功能在传统的编程语言中通常是不具备的。

对物联网感到沮丧,一群工程师决定“搞点事情”

 

对于开源 Toit 编程语言的初心,Toit 团队表示,几年前,一群软件工程师对物联网 (IoT) 的状态感到非常沮丧。物联网能够将我们周围的所有设备变得更加智能:我们的家用电器、工业机器和建筑物将被连接起来,并且能够像普通计算机一样交互、共享数据和拥有复杂的逻辑。

 

但这个未来还没有到来,因为为物联网编写软件真的很难。

 

虽然现代软件开发是由持续交付、迭代和实验驱动的,但物联网却像是一个“怪物”,与上述法则格格不入。

 

物联网之所以“难搞”,主要有以下四个原因:

 

  • 首先,由于功耗过大,典型的物联网芯片资源过于有限,无法运行 Linux。因此,人们要么直接在设备(所谓的裸机)上编写代码,要么在非常有限的任务调度程序上编写代码,这两者都没有为开发者提供出能够在其他平台上获得的抽象机制或支持。

 

  • 其次,软件是特定于芯片的,你将与第一批芯片设备制造商捆绑在一起。

 

  • 第三,一旦你有了硬件并编写了软件,你会发现更新设备真的很困难:唯一的方法就是全部刷新,这意味着你要删除设备上的所有软件,重新安装它,然后祈祷它能重新上线。一旦失败,例如你的代码中某处存在错误,那么你的设备也就跟着“完蛋”了。

 

  • 最后,管理多个设备很复杂:在现代软件开发中,一个常见的策略是逐渐向越来越多的用户推出新版本。物联网设备无法做到这一点。

 

凭借在 Google 为 Flutter 构建 V8 JavaScript 引擎Dart 语言的丰富经验,Toit 团队着手开发最佳平台,为连接到互联网的嵌入式设备构建、部署和维护软件。

 

在开发 Toit 时,也并非一帆风顺。据研发团队称:

 

当我们开始构建平台时,我们很快意识到我们需要一种高效的高级编程语言,专门为满足物联网的需求而设计。但是它不存在。于是我们研究了 Python 和 JavaScript,但在微控制器上,这两种语言的编写速度不够快,我们不愿意受到性能不佳的阻碍。

 

我们不得不解决一些棘手的技术问题,但在 2021 年初,我们有了一个工作平台,我们开始让开发人员能够为他们的微控制器构建高质量的功能。如今,我们有世界各地的客户在Toit 平台上构建他们的产品。

 

据该团队介绍,Toit 在 ESP32 上执行代码的速度比 MicroPython 快 30 倍以上,它与 Python 非常相似,Python 开发人员可以在几个小时内学会该门语言。

 

之所以开源这门语言,Toit 研发团队表示:

 

我们从一开始就知道 Toit 语言在某个时候必须是开源的。所有主要的编程语言都是开源的,你可以从开源中获得充满活力的生态系统,才能大规模采用一种语言。

 

经过多次迭代和在实际环境中使用 Toit 的大量经验,我们现在知道 Toit 语言是为微控制器编写强大软件时非常有用的工具,我们希望更多的开发人员能够从中受益。我们等待这一天已经有一段时间了,但我们很高兴地分享我们已经开源了 Toit 语言和我们的实现,并通过 GitHub 提供了它。

 

Toit 项目地址:https://github.com/toitlang/toit

 

参考链接:

 

https://blog.toit.io/the-toit-language-is-now-open-source-14bdcb1604d9?gi=d83cbb7f93f8

 

https://www.oschina.net/news/170259/toit-language-open-source

公众号推荐:

2024 年 1 月,InfoQ 研究中心重磅发布《大语言模型综合能力测评报告 2024》,揭示了 10 个大模型在语义理解、文学创作、知识问答等领域的卓越表现。ChatGPT-4、文心一言等领先模型在编程、逻辑推理等方面展现出惊人的进步,预示着大模型将在 2024 年迎来更广泛的应用和创新。关注公众号「AI 前线」,回复「大模型报告」免费获取电子版研究报告。

AI 前线公众号
2021-11-24 14:002106
用户头像
李冬梅 加V:busulishang4668

发布了 788 篇内容, 共 364.1 次阅读, 收获喜欢 991 次。

关注

评论

发布
暂无评论
发现更多内容

认证鉴权对于 API 网关的重要性

API7.ai 技术团队

认证授权 API Gateway APISIX 网关

我们是如何构建自己的可观测性的

观测云

云计算 可观测性 云服务 观测云

数据也能开口说话?这次汇报,老板疯狂给我点赞

图灵教育

数据分析 可视化 图表

从全球顶级数据库大会 SIGMOD 看数据库发展趋势

NebulaGraph

数据库 图数据库 技术演变

华为云桌面,助力企业灵活、高效办公

清欢科技

华为云桌面携手伙伴共建繁荣生态

清欢科技

哈啰出行高质量故障复盘法:“3+5+3”(附模板)

TakinTalks稳定性社区

数据也能开口说话?这次汇报,老板疯狂给我点赞

图灵社区

数据分析 可视化 图表

未来智安XDR荣膺ISC 2022创新能力百强

未来智安XDR SEC

什么样的技术,能让黄河开口说话?

白洞计划

华为云桌面的安全,到底是怎么做到的?

清欢科技

欧盟森林砍伐法规和合规性:使用 Dimitra 技术解决森林砍伐问题

股市老人

库存积压营销差?不妨尝试华为云大数据BI

科技说

南开大学团队采用全场景AI框架昇思MindSpore,打造“皮肤病大规模可信综合辅助诊断系统”

Geek_2d6073

天花板级别ZooKeeper+Dubbo笔记,通俗易懂,颠覆认知

小小怪下士

Java zookeeper dubbo

教你用JavaScript实现鼠标特效

小院里的霍大侠

JavaScript 编程开发 初学者 入门实战

作业2:微信朋友圈的高性能复杂度

白杨

基于Netty的IM聊天加密技术学习:一文理清常见的加密概念、术语等

JackJiang

Netty 即时通讯 即时通讯IM SSL/TLS

当 Amazon Lambda 遇上 Apache APISIX 可以擦出什么火花?

API7.ai 技术团队

微服务 AWS API Gateway APISIX 网关

数据治理:数据集成架构的演进

用友BIP

智能勘探 | AIRIOT智慧油田管理解决方案

AIRIOT

物联网 智慧油田

Go Ubuntu 安装 gvm:Go 版本管理工具

非晓为骁

Go ubuntu 版本管理工具 gvm

华为云大数据BI,助力企业挖掘信息数据潜在价值

科技说

【附下载】政企数智办公平台研究报告,何以数智化?

融云 RongCloud

数智化 百幄

Wallys/MIMO/Industrial-grade/2x 2 900M high powerRadio /902-928Mhz/AR9223/ AR9582/AR9531/AR9344/

Cindy-wallys

学习无代码开发工具有什么用?

间隔

微信小程序 无代码开发

为什么 APISIX Ingress 是比 Traefik 更好的选择?

API7.ai 技术团队

云原生 APISIX Ingress Controller Kubernetes Serverless

华为云桌面,数字化时代便捷、安全的办公选择

清欢科技

华为云大数据BI解决方案,助力企业实现数字化转型

科技说

阿里云斩获2022全球分布式云大会两项大奖

云布道师

阿里云

国产时序数据库TDengines学习调研及总结

李草凯

吐槽物联网开发难搞,一群工程师搞了个Toit 语言并宣布开源,其与Python类似_AI&大模型_李冬梅_InfoQ精选文章