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

科技回声

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

GitHubTwitter

首页

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

资源链接

HackerNews API原版 HackerNewsNext.js

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

Lisp Is the Linux of Languages

19 点作者 jrberendt大约 2 年前

7 条评论

KingOfCoders大约 2 年前
From &quot;Why most of us won&#x27;t be inventing little languages&quot;, 2004 [0]<p>&quot;It&#x27;s quite possible that languages like Lisp failed to become popular (beyond a small community) partially because they encourage programmers to write domain-specific languages. This has a tendency to fragment the community into groups that have trouble communicating (a &quot;tower of babel&quot; effect).&quot;<p>[0] <a href="http:&#x2F;&#x2F;slesinsky.org&#x2F;brian&#x2F;code&#x2F;little_languages.html" rel="nofollow">http:&#x2F;&#x2F;slesinsky.org&#x2F;brian&#x2F;code&#x2F;little_languages.html</a>
hguant大约 2 年前
&gt;Although C and C++ are also built like this, Lisp is different: the implementations of Lisp are often much different than each other, and one implementation can offer plenty of different features not seen in another.<p>The author clearly has not spent much time developing modern C&#x2F;C++ - the various pragmas, implementation details, and &quot;here be dragons&quot; quirks of undefined behaviour in msvc, gcc, and clang differ _greatly_.<p>I would argue that C is the Linux of Languages - a behemoth in the industry that every other contender is measured against, one that has large numbers of detractors and advocates, and that runs the majority of modern computing by an unholy trifecta of sheer inertia, the first mover advantage, and at their core, a really powerful tool.
评论 #35620900 未加载
评论 #35610355 未加载
charcircuit大约 2 年前
Creating multiple implementations reduces network effects, spreads the already limited resources thin, and can potentially fragment the community and ecosystem.
rektide大约 2 年前
Linux has the &quot;small pieces loosely coupled thing down&quot; in a way that LISP is no where near at all.<p>LISP could be this awesome. It has the bones to be flexible. Yes Lisp has a very cute creative re-use &amp; some well tread stdlib.<p>But *nix&#x2F;Linux keep evolving &amp; changing &amp; growing &amp; LISP has been stuck forever with vaguely 1970&#x27;s stdlib, with lurching attempts to become more that only ever semi-materialize. Linux kept levelling up, kept growing it&#x27;s capabilities &amp; systems, but LISP keeps being defined by it&#x27;s core, and a robust capable evolving stdlib keeps being an illusory changing aspect.<p>There has been so much detesting of JS for being fickle &amp; changing, but honestly, there&#x27;s been a somewhat clear trajectory forward, vectors of growth where things happen &amp; eventually sense is made &amp; it gets adopted. I am not a LISP expert but my distant sense is that LISP continues to be a good bit more of a free for all, continues to have all the power, where &quot;different implementations can focus on different needs of programmers, and can develop these features without affecting other implementations of the language,&quot; but there is almost never a real forward vector, nothing ever gets turned into an expected capability. Linux grew. It kept growing. In spite of the protests, it has kept refinining &amp; iterating (systemd, wayland, &amp; slow-but-growing new useful options for the base cli utils), and by compare I see LISP&#x27;s &quot;different needs&quot; as it&#x27;s core weakness, alas, it&#x27;s inability to ever pick good ways forward, rather than it&#x27;s strength.
Netch大约 2 年前
Every time I see a yet next inventor designs its own configuration language and foolhardily crosses a rake field of syntax conflicts, design errors, and subtle logic bugs, I recall LISP with its S-expressions. The two last cases were CMake and BitBake.<p>Being a kind of divergent multiverse base is not bad, provided a common spirit is still shared and abidden between implementations. For LISP, having e.g. Scheme and Guile as a minimal working base, and Common LISP as an &quot;all batteries included&quot;, it not that bad even despite their miscompatibility.
zabzonk大约 2 年前
&gt; There shouldn’t be a single place where all the development happens.<p>well, there isn&#x27;t, for any widely used languages. actually, there probably <i>are</i> many single teams (or single persons) working on niche lisp-likes.
deafpolygon大约 2 年前
&gt; Programming languages should be built like this. There shouldn’t be a single place where all the development happens. Different implementations can focus on different needs of programmers, and can develop these features without affecting other implementations of the language.<p>I&#x27;m reminded of the XKCD comic of competing standards. This is precisely what has held LISP back. You need standardization, you need a common place for all developers to work from or you can&#x27;t make forward progress.<p>&gt; This makes it easy for programmers to switch between different environments without having to learn tons of new skills.<p>Honestly... if every LISP developer has its own flavor and idea of how the language should work, how should continued development and progress on LISP as a language move forward?