TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Writing that changed how I think about programming languages

462 点作者 r4um9 天前

14 条评论

sph9 天前
I love this! I have done a lot of CS research lately, and some of these I haven’t come across yet.<p>Let me share some of my favourites not listed here, off the top of my head:<p>- Ian Piumarta’s “Open, Extensible Object Models” (<a href="https:&#x2F;&#x2F;www.piumarta.com&#x2F;software&#x2F;id-objmodel&#x2F;objmodel2.pdf" rel="nofollow">https:&#x2F;&#x2F;www.piumarta.com&#x2F;software&#x2F;id-objmodel&#x2F;objmodel2.pdf</a>) is about creating the most minimal object-oriented metaobject system that allows the maximum amount of freedom for the programmer. It basically only defines a message send operation, everything else can be changed at runtime. The practical counterpart to the dense “Art of the Metaobject Protocol” book.<p>- John Ousterhout “Scripting: Higher-Level Programming for the 21st Century” (<a href="https:&#x2F;&#x2F;web.stanford.edu&#x2F;~ouster&#x2F;cgi-bin&#x2F;papers&#x2F;scripting.pdf" rel="nofollow">https:&#x2F;&#x2F;web.stanford.edu&#x2F;~ouster&#x2F;cgi-bin&#x2F;papers&#x2F;scripting.pd...</a>) - not really a paper, but an article from the creator of Tcl about the dichotomy between systems programming languages and scripting languages. Obvious at first sight, the lessons therein have wide ramifications IMO. We always seek the perfect multi-paradigm language that can do anything at high performance with the most productivity, while perhaps it is best to have compiled, fast, clunky systems languages paired with ergonomic, flexible interpreted frontend. Often all you need is C+Tcl in the same app. A must-read for anyone writing <i>yet</i> another programming language.<p>- Niklaus Wirth&#x27;s Project Oberon (<a href="https:&#x2F;&#x2F;people.inf.ethz.ch&#x2F;wirth&#x2F;ProjectOberon&#x2F;" rel="nofollow">https:&#x2F;&#x2F;people.inf.ethz.ch&#x2F;wirth&#x2F;ProjectOberon&#x2F;</a>) is the implementation of an entire computer system, from the high-level UI down to kernel, compiler, and a RISC-like CPU architecture. He wrote the seminal &quot;plea for lean software&quot; and actually walked the walk. A long lost art in the era of dependency hell and towering abstractions from mediocre coders.
评论 #43983431 未加载
评论 #43984169 未加载
kierangill9 天前
Love this post. Writing on programming languages has changed how I think about _programming_ in general.<p>I often think about this quote from TAPL. This framing of “safety” changed how I design systems.<p>&gt; Informally, though, safe languages can be defined as ones that make it impossible to shoot yourself in the foot while programming.<p>&gt; Refining this intuition a little, we could say that a safe language _is one that protects its own abstractions_.<p>&gt; Safety refers to the language&#x27;s ability to guarantee the integrity of these abstractions and of higher-level abstractions introduced by the programmer using the definitional facilities of the language. For example, a language may provide arrays, with access and update operations, as an abstraction of the underlying memory. A programmer using this language then expects that an array can be changed only by using the update operation on it explicitly—and not, for example, by writing past the end of some other data structure.<p><a href="https:&#x2F;&#x2F;www.cis.upenn.edu&#x2F;~bcpierce&#x2F;tapl&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.cis.upenn.edu&#x2F;~bcpierce&#x2F;tapl&#x2F;</a>
7thaccount9 天前
Regarding weird development methods of interest...Aaron Hsu of APL fame writes a lot of code in calligraphy with fountain pens when trying to organize his thoughts. I do something kind of similar, but in print with a crummy bic pen and a flow chart of Python objects (kind of like poor man&#x27;s UML).
评论 #43984804 未加载
评论 #43986476 未加载
jwr9 天前
I would also highly recommend watching one of Rich Hickey&#x27;s talks (especially the earlier ones). Watching those certainly changed how I thought about programming in general.
评论 #43983234 未加载
评论 #43990470 未加载
titzer9 天前
It&#x27;s a shame that Abdulaziz went quiet after moving back to Kuwait. He was our intern on Maxine VM back in 2009. A super nice guy and that paper is a gem!
评论 #43983874 未加载
stevekemp9 天前
There was a nice post here recently about speeding up interpreters via closure-based interpreter:<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=43595283">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=43595283</a><p>I hacked up a toy brainfuck interpreter using that technique and it was pretty fast. Not sure I&#x27;d get the chance to use it elsewhere, but experimenting with it was useful regardless:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;skx&#x2F;closure-based-brainfuck-vm">https:&#x2F;&#x2F;github.com&#x2F;skx&#x2F;closure-based-brainfuck-vm</a>
评论 #43987190 未加载
almostgotcaught9 天前
I like this guy, so nothing against him, but none of these are about PL and all about these are about compilers (except for the one about GC). Which is fine (I like compilers) but they&#x27;re just not in any way about PL.
评论 #43983889 未加载
deanebarker9 天前
I wish someone would write this for higher-level languages: JavaScript or .NET. I&#x27;m sure this person is brilliant, but they&#x27;re operating at a much lower (higher?) level than most of us.
AlphaGeekZulu9 天前
For micrograd: is there more documentation available than just the source code in the Github repo?
评论 #43981600 未加载
zem7 天前
pytype is based in part upon byterun <a href="https:&#x2F;&#x2F;github.com&#x2F;google&#x2F;pytype&#x2F;blob&#x2F;main&#x2F;docs&#x2F;developers&#x2F;index.md">https:&#x2F;&#x2F;github.com&#x2F;google&#x2F;pytype&#x2F;blob&#x2F;main&#x2F;docs&#x2F;developers&#x2F;i...</a><p>I learnt a lot about bytecode interpreters from working on it, and it helped me understand the cpython source code a lot more easily from having played with a python translation of it first.
e-topy9 天前
Damn, his other blog posts are stellar as well, nice!
creativehubspac9 天前
Awesome. Thanks.
kreelman9 天前
Neat. Thanks.
EGreg9 天前
don&#x27;t you mean bernstainbear?<p><a href="https:&#x2F;&#x2F;www.cosmopolitan.com&#x2F;lifestyle&#x2F;a7664693&#x2F;mandela-effect-examples&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.cosmopolitan.com&#x2F;lifestyle&#x2F;a7664693&#x2F;mandela-effe...</a>