发布 CodeLab Adapter 4.3

我们如何制造计算机,使它们像细胞一样扩展到亿万倍? -- Alan Kay 《计算机革命尚未发生》


CodeLab Adapter 4.3 是过年前的最后一个大版本,关注可扩展性。同时也为我们正在制作的《交互计算》课程提供更友好的支持。

关于《交互计算》课程

《交互计算》是一门围绕创意实现而设计的 Python 入门课程。

我们计划在4月份发布新课程。

支持 pip 安装第三方库!

不少用户在邮件中要求 Adapter 开箱支持 pip 安装第三方库,主要有以下2个使用场景:

  • 允许用户自由引入Python社区生态数以百万计的第三方库
  • 方便Adapter的定制分发: 每个用户都可以增删内置的库,进而分发个性化的编程环境

这些场景确实都很有价值,我们花了不少时间研究这个特性,终于在 4.3 版本中完成。

以下是一个例子, 打开Adapter后,运行Jupyter插件

# 举个例子: 安装 furl
pip.main(["install", "furl"])
# 你也可以使用国内的源:
# pip.main(['install', 'furl', '-i', 'https://mirrors.aliyun.com/pypi/simple'])

关于二次分发

Adapter的完整版,目前是绿色(免装)的,这意味着,用户只需修改好自己的本地软件,直接分发给下游用户即可!当然如果商业使用的话,需要得到我们的商业授权。

这能带来什么用户价值呢? 满足个性化需求。

设想有两家公司,一家使用 Tensorflow 用于AI教学,另一家则使用 PyTorch.

它们只需在下载 Adapter 之后,在自己的Adapter版本里安装好各自的依赖环境(Tensorflow或PyTorch),直接分发本地的Adapter给用户即可!

这意味着将存在各种版本的 Adapter,它们各自服务于个性化的需求,却共有有我们维护的强大(开箱可用)内核: 连接一切的能力,以及对个人计算偏好的特性的持续支持: 消息/Linda/Scratch。

升级 codelab_adapter_client

codelab_adapter_client 升级到 4.1.3, 为了更好服务于《交互计算》课程, 使 API 更为简洁。 《交互计算》中大量使用与消息有关的 API 在 Python 和 Scratch 中 talk,所以我们把与此有关的 API 做得更为简洁。

在旧版本中:

from codelab_adapter_client.utils import run_monitor, send_simple_message

4.3 版本中:

from codelab_adapter_client import run_monitor, send_message

新插件

Overdrive

与你的朋友或人工智能来一场速度与激情的较量。

插件改进

主要的改进依然使为了服务《交互计算》课程

Python kernel

  • 避免传递复杂数据结构,只传递消息(字符串),与 Scratch 消息保持一致
  • 使得 Python Kernel 插件里的字符串积木保持Scratch风格(不带引号)

为了与 Scratch 字符串风格保持一致,改进的插件还有:

  • NetworkZero 插件
  • micro:bit Radio 插件
  • OSC 插件
  • EIM 插件

RoboMasterEP 2.0

升级 RoboMasterEP 插件版本到 2.0.1: 添加已连接提醒、连接失败提醒

参考