阿里云飞天发布时刻,领先大模型限免,超7000万 tokens免费体验 了解详情
写点什么

现年 80 岁的 Unix 大神还在修复 AWK 代码

  • 2022-08-24
    北京
  • 本文字数:888 字

    阅读完需:约 3 分钟

现年80岁的Unix大神还在修复AWK代码

AWK是一种用于分析文本文件的编程语言,是 Unix 操作系统的核心部分,包括 Linux、所有 BSD 和其他系统。而对于被认为符合 POSIX 标准的操作系统,它必须包含 AWK。AWK 首次出现在 1977 年,并在 1979 年被放进第 7 版 UNIX 中——这是贝尔实验室的最后一版 UNIX,后面 AT&T 就把它变成了商业产品。


如今,这款工具终于能支持 Unicode,但在这件事上,更引起大家注意的是工具背后的传奇人物,加拿大计算机科学家Brian Kernighan。AWK 里面的“K”指代的便是他的名字。


Brian Kernighan 曾就职于贝尔实验室,目前为普林斯顿大学教授,参与 Unix 的研发,也是 AMPL 与 AWK 的共同创造者之一,他和 Dennis Ritchie 共同写作了 C 语言的第一本著作《C 程序设计语言》,在这之后,他的名字开始为人所熟知。Kernighan 教授也是“K&R C”中的“K”。


虽然 AWK 有不同版本,但这是原始版本,被称为“One True AWK”(有时被称为 nawk)。今年 5 月下旬,Kernighan 教授给一位老朋友发了邮件,他在里面提到自己还在琢磨为 AWK 添加 Unicode 支持,并分享了进展(现在已能使用,除了测试不足),他还谦虚地说:


一旦我弄清楚了如何(并做更多检查,我将尝试提交拉取请求。我希望我能更好地理解 git。尽管有你的帮助,我仍没有做到正确理解,所以这可能还需要一段时间。


关于 Unicode 支持的代码变更实际上是在几个月前就发生,但由于刚刚发布的关于 Kernighan 教授的采访,这件事才被更广泛的圈子注意到。


“AWK 只适用于 ASCII 或 8 位输入,但它根本不能真正处理 Unicode,这一直是一个尴尬,”Kernighan 教授在视频中告诉采访主持 David Brailsford 教授。“几个月前,我花了一些时间使用(笑)一个非常古老的程序。我现在拥有它,它实际上可以处理 UTF-8 输入和输出,这样你就可以有正则表达式,你知道,选择日文字符之类的。”


右边为 Brian Kernighan


如今已经 80 岁的 Kernighan 教授在采访中不经意地提到,他还修补了一些问题,比如让 AWK 处理 CSV 文件。


参考链接:

https://arstechnica.com/gadgets/2022/08/unix-legend-who-owes-us-nothing-keeps-fixing-foundational-awk-code/

https://www.theregister.com/2022/08/23/universal_unix_tool_awk_gets/?td=rt-3a

2022-08-24 18:3313572
用户头像
罗燕珊 AI practitioner | Tech media

发布了 537 篇内容, 共 398.9 次阅读, 收获喜欢 847 次。

关注

评论 2 条评论

发布
用户头像
👍
2022-08-28 16:06 · 浙江
回复
用户头像
烈士暮年壮心不已
2022-08-25 08:23 · 浙江
回复
没有更多了
发现更多内容

aigo发布“国民好物合创工程” 携京东、HICOOL助力中小微企业走向科技发展之路

ToB行业头条

LLM 大模型框架 LangChain 可观测性最佳实践

观测云

LLM #LangChain

活动报名|AutoMQ x 阿里云云原生创新论坛(2024.03.09)见证“新一代云原生 Kafka ”重磅发布!

AutoMQ

kafka 阿里云 云原生 论坛

融合低代码平台,实现政企业务快速高效加载

鲸品堂

低代码 企业号 3 月 PK 榜

搭个ChatGPT算法模型,离Java程序员有多远?

京东科技开发者

架构设计常见原则

凌晞

架构设计 架构设计原则

ChatGPT 新增朗读功能;微软 Win11 鼠标悬停自动打开 Copilot 丨 RTE 开发者日报 Vol.158

声网

Starknet 最好的钱包是什么?

BlockChain先知

技术管理者如何避免被裁掉(2)

芃篙君

管理

Shopify 性能优化探索与落地

飞书深诺技术团队

性能优化 前端 建站 Shopify

【教程】uni-app iOS打包解决profile文件与私钥证书不匹配问题

NFTScan :什么是 ERC-404?深入解读 NFT 协议的未来

NFT Research

ERC20 NFT ERC721 NFTScan

上云还是下云,最大挑战是什么?对话章文嵩、毕玄、王小瑞

AutoMQ

阿里云 云原生 上云 云上架构

面试官:说说微服务灰度发布的底层实现?

王磊

Java 面试题

简单、透明、安全、高度集成!龙蜥可信 SBOM 能力探索与实践

OpenAnolis小助手

开源 安全 操作系统 龙蜥社区 SBOM

GreptimeDB v0.7 发布 — 全面支持云原生监控场景

Greptime 格睿科技

数据库 开源 云原生 版本 时序数据

StarkNet新手入门教程:教你用bitget 钱包入门

股市老人

喜报|3DCAT成为国内首批适配Vision Pro内容开发者

3DCAT实时渲染

实时云渲染

《操作系统导论》PDF

程序员李木子

2024上海国际智能机器人展览会

AIOTE智博会

工业机器人展会 机器人展

和鲸科技受邀参与湖南省气象信息中心开展人工智能研究型业务支撑平台学术交流

ModelWhale

人工智能 机器学习 大数据 气象 地球科学

StarkNet新手入门教程:教你用bitget 钱包入门

石头财经

更无缝地管理 API 访问

Gingxing

kong API网关 Kong 网关 消息网关 Kong Gateway

【鸿蒙开发】在ArkTS线程中通过napi创建的C++线程返回处理结果

贺公子之数据科学与艺术

小程序管理平台,企业研发效能提升利器

FinFish

小程序管理平台 小程序管理 小程序开发平台

Java 枚举(Enums)解析:提高代码可读性与易维护性

小万哥

Java 程序人生 编程语言 软件工程 后端开发

马斯克和OpenAI:分手,不要体面

脑极体

AI

现年80岁的Unix大神还在修复AWK代码_语言 & 开发_罗燕珊_InfoQ精选文章