Domain: sange.fi
Stories and comments across the archive that link to sange.fi.
Comments · 9
-
Re:its a step in the right direction
Python might not exist in five years, or may become obsolete in five years.
Since the code is freely available, Python will continue to exist one way or the other. That's one of the upsides of open source. Also, Python is closer to bleeding edge than obsolete right now.
The reason I think they specify a language is that otherwise you'll see code switched to whitespace or brainfuck before being submitted to ensure maximum confusion. Remember than most organizations who are required to disclose something do so with the intent of obfuscating that legally required information as much as humanly possible.
-
Re:junk genes was a junk idea
I think your understanding is a little naive... There *are* magic genes that do X. There are also pseudo-random sequences that we have found a use for, and there are, further, sequences we carry around that are malicious, or do exactly nothing. But we carry all these genes around anyway, because the cost of doing so is negligible, and the chance for quick modification is beneficial in a population crisis. To get an idea of the tasks geneticists face, familiarize yourself with the Brainfuck programming language (which is hilarious) and an uncommented sample program.
Now, imagine that -- over the course of MANY, MANY years -- we have evolved a usable Office Suite, circulating it on media with little or no error correction. There are no versions -- If yours doesn't do what you need, you toss it out and get a copy from somewhere else, or you try to randomly merge a friend's copy with your own using a little utility inside the software. The source code is over 8GB, and nobody knows what everything does. No individual programmer or team, at this point, can change much of anything because the chances of screwing up badly outweigh the benefits of any expected improvement -- but we are trying to gain the understanding to work with it. Exacerbating the problem, random copy errors exist, and have become functional and necessary, in every remaining copy of the program. People do research to try and find out how feature "X" works, but at some point, the code accepts a memory address from user input and jumps to it. Now, we have to find out where the input came from, and track down the code that created it.
Certainly, there will be parts of the program that do only one very specific thing, and there will be parts of the code that behave differently depending on state. There will be parts of the program that do nothing, and there will be parts that are seemingly random but just happen to contain instructions that do something useful under certain circumstances, or can serve as / generate useful input in others. There will be sequences with stable output, and those that vary wildly on input. Just because someone is looking for feature "X" doesn't mean that they will find it, or that it won't be an emergent property of the system -- some code written into memory by random-looking source scattered throughout the program. But it also doesn't mean there are no encapsulated features to be found.
At the stage we're in, we look for highly correlated output from the system, or at least easily-measured output, and try to track down any parts of the code that seem to affect it. Sometimes, there will be a clearly delineated subroutine, or portions of the output will occur literally in the code. Sometimes, the feature we seek will be a side effect of otherwise unrelated code, or the result of an error in code that originally did something else (and otherwise still would, except for the error). But you can't assert "There is no magic gene." any more than a geneticist can blindly assert that there is.
-
BrainfuckWho are these humans that read code?
Of course
/. lameness filter does not allow posting of BF code! See http://esoteric.sange.fi/brainfuck/bf-source/src-b f/hello.b -
Re:Excellent!
No matter what you throw at me, Brainfuck is worse
http://www.muppetlabs.com/~breadbox/bf/
Some of the intercal stuff is pretty nasty, but the gnarliness of this program to calculate Pi trumps all
Fun times! -
Re:Best. Excerpt. Ever.
Heheh you gotta be kidding me
-
The Brainfuck implementation was left off the list
See the Brainfuck solution here.
It begins like (lameness filter prevents a longer excerpt, just click the link):
The first stack frame (0 0 0 0 0 0 0 0)
is used to abort the recursion
>>>>>>>>
These are the parameters for the program
(1 4 1 0 'a 'b 'c 3)
+>++++>+>>
>>>>++++++++[-]+>+>-]++>+++>+++>
And so on. -
Re:How to improve C++
I guess you havent seen brainfuck yet then
:)
Here's (supposedly) the hello world version:
http://esoteric.sange.fi/brainfuck/bf-source/prog/ HELLOBF.BF
(I'd post it inline, but it complained about junk characters. Whatever that means...) -
Re:Will it enforce readable code?
not true, here is a sample brainfuck program :
hello world
I would include it in this body but it fails the lameness filter for having too many 'junk' characters, but its a program.... ;)
as you are not allowed comments and none of the operations are particularly obvious because of the lack of verbosity, its very hard to understand what it does even if you know brainfuck.
it prints out 'Hello World' by the way.
things are even worse when programming in machine code, because the commands' binary syntax is not very human readable, although at least you can put comments in machine code.
In short, some languages are better than others for promoting code readability, but I think the exact opposite of your statement is true : you can write unreadable code in any language.
I for one think Perl suffers from write-only tendancies, mainly due to the horrible mess that is called array access. Good clear types really help maintainability, and the last time I saw Perl's collection type(s) it was neither good nor clear.
I was happy to move over to Python mainly based on the quality of its type system, not that this was the only strength. But I must confess to being fully able to produce unreadable bits of Python that could make some Perl fragments look like angels. -
The lightest language of all
Brainfuck
Here is a program: