Hacker Newsnew | past | comments | ask | show | jobs | submit | sriku's commentslogin

This looks to me like partly a false dichotomy. We can design languages and write libraries. Some would even argue that some kinds of "libraries" could be viewed as languages themselves, as much as some languages might as well have been written as libraries in another language.

Also often, the language doesn't live isolated from its implementation (compiler or interpreter). While theory looks at languages via its semantics, in practice as the OP notes it is about the quality of the implementation and what can be reasonably done with the language.

A recent [1] case is Julia. I think it has hit a kind of sweet spot for language design where new performant code tends to get written in Julia rather than in some other language and bound to it. At its core, it is a simple "call functions, passing data in and getting results out" kind of language, but what the functions ("methods") mean and how the compiler does just-ahead-of-time compilation with deep type specialized code means you can write high level code that optimizes very well. Those mechanics operate under the hood though, which makes for a pleasant programming experience ... and there are loads of cutting edge packages being written in Julia. It is less interesting to look at Julia as "just the language".

[1] recent in programming languages is perhaps anything <= 15 years? .. because it takes time to discover a language's potential.


> This looks to me like partly a false dichotomy

Wasn't that the point of the article? That you need both?


Yes, but most of the commenters didn't read the article.

Yup, articles like this where the title is the opposite of the article's message is a trap to reveal that.

i^i isn't unique right? The "let x = π/2" could very well have been "let x = π(4k+1)/2" for any integer k.

I find it hard to think of code as being the output of programming. I keep re-reading Naur's "Programming as theory building" paper and it still feels relevant and closer to how the activity feels to me, AI or no AI.

https://pages.cs.wisc.edu/~remzi/Naur.pdf


The frame set by the OP completely out me off and dissuaded me from reading the rest of the article beyond the first paragraph. Didn't feel like much throught was given to what was being said.

A quote shared by a close friend and mentor -

Apparently an elderly Irish musician said this as he was tuni g his instrument - "I've learnt that the secret to being happy is to not get personally involved in your own life."


I quite like Dafny, despite my first run up with it (verification aspect) being frustrating. The language is well designed for this. Also, it looks like it is a great candidate as a code generation target for LLMs because you can generate the proof of correctness and run a feedback loop with Dafny's checker.

Try writing a^b in integers and proving its correctness. The simple version works (based on a x a^(b-1)). But if you write an "optimised one" using (with handwaved details) (a^(b/2))^2 .... pulled some serious hair trying to prove this function works.


Am working on rewriting an imperative programming course to use Dafny to present verified algorithms and data structures.


Please post HN when you finish.


In a discussion I was in recently, a participant mentioned "culture eats strategy for breakfast" .. which perhaps makes sense in this context. Be bold enough to do what makes the team and the product thrive.


Wouldn't "The Age of Em" be relevant to this paper? Was surprised to not find a reference to it in the preprint.


Rgd the "14 lb 5 oz" point in the article, the simpler explanation than the hypothesis there that it back calculated the weight is that there seems to be a space between 14 and 5 - i.e. It reads more like "14 5" than "145"?


Impressive performance, yes but is the article giving more credit than due?


The article says it was created to write audio software but I'm unable to find any first sources for that. Pointers?


See the first example in Andrew's introduction: https://andrewkelley.me/post/intro-to-zig.html


I've had a soft spot for Forth and am toying with a silly Forth-like interpreter for web programming ... if not for actual use, at least for some fun time. One concept it adds is the notion of a "current selection" which can define the available vocabulary to use and is used to select and work with DOM elements. Just experimenting.

https://github.com/srikumarks/pjs

Edit: As a kid, I disliked BASIC as a language though it let me do fun stuff. So I made an interpreter in BASIC for a language I'd like and it turned out Forth-like (and I didn't know about Forth at that time). I guess I'm still that kid some 35 years later.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: