E-- 是一种旨在将大语言模型(LLM)的创造性灵活性与确定性代码的可靠性相结合的编程语言。它采用两阶段流水线:首先是一个可选的、由大模型驱动的“标准化器”,将自由格式的英语转换为标准格式;随后是一个严格的确定性解析器,将该标准代码转译为标准的 Python 代码。 主要特性包括: * **确定性执行:** 一旦代码进入“标准 E--”格式,大模型便不再参与运行。生成的 Python 代码纯粹、可复现且易于调试。 * **大模型集成:** 用户可以插入 `{{ ... }}` 插槽,由大模型生成特定的值或代码片段。这些内容在转译时仅解析一次并进行缓存,确保后续构建在离线状态下也能保持确定性。 * **安全与透明:** E-- 使用明确的分隔符(如函数调用使用的 `[[ ]]`)来消除歧义。由于编译器是标准的非概率性编译器,生成的 Python 代码简洁且不受特定项目许可证的限制。 E-- 非常适合希望通过自然语言编写代码,同时又不愿牺牲传统确定性软件稳定性、可审计性和速度的开发者。它是开源的,可嵌入,并可通过 PyPI 获取。
在 1996 年的文章《反 Mac 界面》(The Anti-Mac Interface)中,唐·根特纳(Don Gentner)与雅各布·尼尔森(Jakob Nielsen)通过质疑麦金塔(Macintosh)人机界面指南的基本原则,挑战了 WIMP(窗口、图标、菜单、指针)模式的统治地位。作者在承认 Mac 使计算变得易于新手上手的同时,也指出这些设计限制——如僵化的隐喻、直接操纵和完全的用户控制——束缚了创新,并阻碍了资深用户的效率。
为了超越这种“停滞”的范式,作者提出了一个专为网络化、专家驱动的未来而设计的“反 Mac”界面。该模型倾向于使用语言交互(描述与命令)而非单纯的指向操作,偏好深层的面向对象表示而非静态图标,并主张在用户与智能代理之间共享控制权。通过摒弃对持续、显式用户输入及“感知稳定性”的必要性,他们构想了一个计算机会主动充当合作伙伴的界面。
归根结底,作者并非主张敌视或抛弃图形界面,而是将其作为一种激发全新设计范式的理论练习。他们认为,随着计算能力和用户专业知识的增长,界面必须从“模仿办公室”演变为能够利用语言、自动化以及丰富分布式数据环境的系统。