Remix.run Logo
▲ banannaise 5 hours ago

The problem here is that AI is consistently one of the four things: hardworking. This makes it very efficient at transforming "stupid and lazy" inputs into "stupid and hardworking" outputs.

Now instead of 90% stupid and lazy (harmless, useful for grunt work) you have 90% stupid and hardworking (aggressively causing damage).

▲djmips 4 hours ago | parent | next [-]

And another corollary is the formerly golden lazy and clever are also transformed into lazy and productive because they no longer need to apply their cleverness to get results...

▲conmod278 4 hours ago | parent | prev | next [-]

We developed languages that removed GOTO so that developers don't shoot themselves in the foot. We will surely develop harnesses that will ensure that majorly occurring problems are solved before they hit production.

▲DanielHB 4 hours ago | parent | next [-]

Since the output of human software work is code and AI software work is _also_ code they are both liable to shoot themselves in the foot in the same manner.

You see this already, LLMs are a lot more reliable in statically typed languages with strong memory guarantees (like typescript or rust) than in weaker languages.

IMO the only way LLM code can avoid most of the pitfalls of human code is if we make new programming languages targeted at being used by LLMs exclusively. Think of languages with very strong methods for formal proofing and stuff like that.

The problem is that even if said language was invented, it would still fail catastrophically when integrated with systems not made in said language. We are very lucky that relational databases already provide a somewhat high level of formal proofing in this regard.

Said language would be impossible to parse by humans, kinda like assembly where you can parse what an isolated piece of assembly code is doing, but if you can't comprehend a somewhat large pure-assembly codebase as a whole.

▲monkpit 3 hours ago | parent | next [-]

> You see this already, LLMs are a lot more reliable in statically typed languages with strong memory guarantees (like typescript or rust) than in weaker languages.

It’s common advice to wire in deterministic feedback to your workflow with LLMs - static languages aren’t inherently better for LLMs, it’s that LLMs produce better code when given deterministic feedback, such as compiler results.

▲leptons 3 hours ago | parent | prev [-]

I've written very large assembly codebases, it's no different than writing in any other language. You have functions you call with inputs and outputs - though usually those are pointers to memory locations. The program is not one long function, you can split it up into different files and folders and keep everything very well organized and easy to understand and reason about.

▲datsci_est_2015 4 hours ago | parent | prev | next [-]

Good thing GOTO was the only footgun that was ever invented in a formal programming language.

▲danlitt 4 hours ago | parent | prev | next [-]

> We solved [trivial problem]. We will surely solve [incomparably harder problem].

Based on what? This will not happen!

▲pphysch 4 hours ago | parent | prev [-]

Goto is a syntax feature that can be trivially removed. Good luck removing "fundamental architectural flaws".

▲automatic6131 5 hours ago | parent | prev | next [-]

I'm going to have to remember this, gold comment

▲esafak 3 hours ago | parent | prev [-]

https://en.wikipedia.org/wiki/Kurt_von_Hammerstein-Equord#Cl...