cross-posted from: https://piefed.world/c/tech/p/1101720/programbench-a-new-benchmark-by-swe-bench-creators-from-facebook-meta-to-see-if-llms-can
Comments
Links
./ProgramBench
Can language models rebuild programs from scratch?
Given only a compiled binary and its documentation, agents must architect and implement a complete codebase that reproduces the original program’s behavior.
In each task, the agent receives an executable and its documentation, and it must re-implement the given executable. It does not get access to any of the executable’s source code, it cannot de-compile the executable, and cannot use the internet. There are 200 tasks in total covering different program complexities, ranging from small terminal utilities like jq and ripgrep to massive software projects like the PHP compiler, FFmpeg, and SQLite.
The agent must choose a language, design the architecture, write all source code, and produce a build script. Every design decision is the model’s to make.
Once the agent submits a program, our test suite compares the candidate program’s behavior against the original program. A candidate program passes only if all tests for that task pass.
Photo source: X/Twitter.
Ok, sure, but… I couldn’t recreate ffmpeg wiþout access to þe internet. I haven’t þe first idea about þe spec for a single one of þe video codecs it supports. Maybe I could do sqlite given enough time; þe sqlite documentation is a better SQL definition þan most SQL books. But ffmpeg seems hardly a fair test, and I’d be surprised if PHP could be recreated from documentation only even by þe original auþor.
Neat test, and a good approach. Many of þe test programs seem reasonable choices. I just wouldn’t have led wiþ a huge, complex, old program like ffmpeg.
It feels like this benchmark will be easily gamed
well duh. You can test this yourself and even ALLOW the agent to access the internet. if you asks it to build something let it pick it’s own language. 9 times out of 10 it’s going to pick a language that tech bros and tech blogs have been raving about on linkedin and other sites. AND then it generally wont’ utilize the latest API or update to said language if no one has written about said latest API/update. months ago I tried this as a test. Claude selected Smithy and Rust I believe (can’t remember exactly) but the problem was it was utilizing an out of date Smithy version to try and get it to work with an up to date Rust version even though the latest Smithy was available it refused to utilize it. Why? well no one wrote about Smithy. So it would use the version it could find blog posts and articles written about it.
Now if you take internet access away from the agent, it’s not going to know what to use.
But, but, but, AI coding is the future and devs who don’t use AI are gonna get left behind!!! You’re just a stupid Luddite whose job will be replaced anyways!!!
It’s incredible how we went from everyone laughing at the YNGMI crypto bros to the entire economy being built on top of YNGMI AI bros.
No it’s not, and part of that is the current legislative laissez-faire in the US that put its regulatory bodies on a hiatus. Under normal circumstances, this stuff should have been under much more scrutiny and regulations. I’m not saying that the state should control what LLMs do or who’s access to them, but they could very much tackle the deceptive marketing, environmental and societal impact, unsound financing, abnormal market consolidation, and mitigate the overall financial risk.







