TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Eolang, an Experimental Object-Oriented Programming Language Based on 𝜑-Calculus

69 pointsby abd-nhover 3 years ago

9 comments

Joker_vDover 3 years ago
&gt; EO is based on 𝜑-calculus (if you want to see its description, join this Telegram chat: @polystat_org).<p>Because putting this description into a doc&#x2F;MATHS.md file inside the repo itself is too easy.<p>Also, a tip for anyone who decides to put out there a programming language with highly exotic operational semantics: please don&#x27;t forget to put a quick overview of that semantics in the &quot;Tutorial&quot; section. I suspect most people would be puzzled why output is performed by &quot;making a copy of the abstract object stdout with a single argument &quot;Hello world!&quot;.
评论 #28436452 未加载
评论 #28434624 未加载
评论 #28438386 未加载
评论 #28438150 未加载
scrubsover 3 years ago
Re: No mutability<p>Algo 101 (hash, skip list, btree, merge sort) is a thing. Doing so cache friendly is a thing. Knowing that for small N a linear scan may be faster than a AVL&#x2F;Redblack tree is a thing. How is one seriously going to skirt this? Containers need mutability.<p>Re: Atomicity failure:<p>Starting with Hoare, popularized by Meyers, combined with aspects of specification side by side with code (ADA, Spark, Frama) failure atomicity is better construed as: post-conditions cannot be met because pre-conditions were not met. Failing to meet pre-conditions is undefined behavior. Going the other way, programmers who don&#x27;t have a function &#x2F; class &#x2F; scope contract have failed to even engage the issue. Claiming no mutation I think is a bit broad, and a bit tangential in the same way that exceptions can be in this context.
ncmncmover 3 years ago
Any language built around one idea to the exclusion of others is necessarily a toy.<p>This is not to say that there is anything wrong with toys, as such. Toys can be educational, some very. Just don&#x27;t confuse it with something that is, or may become, a generally useful tool.<p>This is why &quot;pure object-oriented&quot;, &quot;pure lambda calculus&quot;, &quot;pure category theory&quot;, and &quot;pure logic&quot; languages flop. The world does not consult your language for what kind of problems it should present. The world, instead, presents all kinds of problems. Any big problem will turn out to be made of lots of smaller problems, of all different kinds generally unrelated to the sort the big problem seems like.<p>A useful language has what you need to address all kinds of problems. Useful languages are usually accused of being &quot;impure&quot; or &quot;too complicated&quot;. They can&#x27;t be summarized in a line, or a page. But there are reasons why those are the ones we use.
eurasiantigerover 3 years ago
This looks really promisi—wait, <i>maven?!</i><p><i>^W</i>
评论 #28436897 未加载
评论 #28438486 未加载
pharmakomover 3 years ago
I wonder how far this is from clojure in practice? Seems to have very similar principles.
Fellshardover 3 years ago
Hmm. I&#x27;m intrigued what they come up with. The creator is something of a firebrand, who tends to &#x27;no true scotsmen&#x27; other OOP languages. His ideas are interesting, but often seem impractical in other languages. If he comes up with something effective, I suspect it will indeed feel similar to lisp, and not in a bad way. Even what he&#x27;s showing right now feels similar to Wisp-syntax with an OO twist.
评论 #28436021 未加载
评论 #28439956 未加载
abeppuover 3 years ago
In the &quot;Things we don&#x27;t tolerate&quot; list, for &quot;classes&quot; they link to a short post which describes a simple use of prototypes with &quot;types&quot; but not &quot;classes&quot; and ends with &quot;Why not?&quot;<p>Building something can show that an approach is possible, but not why you think it&#x27;s preferable.
scrubsover 3 years ago
Surely even a functional or OO purist must tolerate mutable containers?
nobody0over 3 years ago
Why does this title take up extra line height?
评论 #28434176 未加载