Go to bottom

How about a good size-coding compo revival...

category: code [glöplog]
maybe "most compressable shader code" compo? :)
added on the 2009-04-19 10:01:20 by loaderror loaderror
A couple of years ago, I was designing a stack-oriented virtual machine where the main design principles would be an extreme code density and a zero overhead in program length. The initial plan was to introduce the machine at the esoteric programming language competition of Alternative Party 2007, but I didn't manage to finish it in time, so I kind of forgot it.

If people are interested, I'd like to revive this project.

A quick summary of some features:

A dual-stack machine superficially similar to Forth.

Instruction lengths are counted in bits instead of bytes. The final lengths will be chosen by statistical means based on a "corpus" consisting of implementations of classical demo effects.

Almost any combination of bits, when run as a program, produces some kind of visual output. The shortest program that produces visual output is zero bits long.

The simplest programs can be thought of as subroutines conceptually similar to pixel-shader programs. These are run by the VM in an endless time:y:x loop.

Sound output and data input (i.e. keyboard interaction) will also be supported.
And yes, I was also planning a 128-bit demo competition that would be held after releasing a working VM that implements the final version of the binary instruction set.
The shortest program that produces visual output is zero bits long.

Damn. Beats my virtual machine. Setting bit 1 produces visual output of FR-08. Setting bit 2 produces visual output of FR-019 etc :)
added on the 2009-04-19 11:16:08 by Mtl Mtl
Sounds interesting. And the instructions will be compressed using a Huffman code?
added on the 2009-04-19 11:34:45 by Adok Adok
I has six toes!!
added on the 2009-04-19 12:25:35 by ferris ferris
Adok: What the ...!?
added on the 2009-04-19 12:58:04 by decipher decipher
Decipher > he just pretends to be smart by inserting random technical buzz here and there, no worry nobody's fouled :p
Adok: something like Huffman will be used to determine the instruction lengths, but that'll be a static mapping. The overall complexity of the machine will be relatively low, so you won't get any dynamic compression libraries, 3D engines, raytracers or the like integrated into the system :)

I'll put some detailed info on-line at some later point of time.
well there isnt anything so special about making VMs, even I did one... what the ***..
added on the 2009-04-19 15:12:32 by nystep nystep
my 2pworth.

BP size coding compo (4k) was awesome. Each of the top three entries had someone involved who works on compressors. At least two of them used non-public obfuscators and or compressors - ie its not off the shelf size coding. Those compressors have taken years to develop. Two incredible 4k synths and an unbelieveable 1k synth. All three involved assembler coding where suitable/necessary - I assume good quality given the people coding and in the case of mentors 1k, 100% assembler I guess. All three had top class shaders: you cant compete today without great shader coding skills.

It all means its not just a graphics coding battle but a true intro coding one with synth, compressor, asm and shader skills all on show. You really miss the point if you think size coding is all about assembler or if you think its all about using dlls and hidden data: the two main complaints about modern size coding.

Really this was the great intro coding competition, and could be the best intro coding competition the scene has ever had.
added on the 2009-04-19 16:11:51 by auld auld
In the future, all parties worth speaking of will replace the traditional 4k + 64k compos with 1k + 16k compos.
added on the 2009-04-19 16:13:30 by kusma kusma
How about a good sized coding compo revival

Indeed, I loved the demoscene when it was about coding.
added on the 2009-04-19 16:54:56 by Calexico Calexico
How about a good-sized coding-compo revival

There, in case you did not get it the first time.
added on the 2009-04-19 17:08:59 by Calexico Calexico
I mean, come on: Nowadays the youngsters write 4K in C++. We gotta show them how we did it back then.

Open your eyes. Please.

And full ACK to what auld said.
added on the 2009-04-19 17:18:53 by las las
don't see the 4k replacement happening just yet, but replacing 64k with 16k is something we've been thinking about for bp, yes.
added on the 2009-04-19 17:25:10 by ryg ryg
ryg: I really like the idea of a 16k competition. But 64k is not dead - just wait.
added on the 2009-04-19 17:27:41 by las las
i don't really give a damn, i'll put the dagger in its back myself if i need to :)
added on the 2009-04-19 17:28:34 by ryg ryg
Go make a demo about it.
added on the 2009-04-19 17:31:53 by leblane leblane
no. make a intro instead
added on the 2009-04-19 17:34:20 by quisten quisten
yes. go make a 16k about it
added on the 2009-04-19 17:36:25 by mentor mentor
demo yes, intro no, i'm through with size optimization.
added on the 2009-04-19 17:44:06 by ryg ryg
aaaaw :/
added on the 2009-04-19 17:44:54 by Puryx Puryx
i think any compo with a sizelimit from 1 - 512 kb is interesting. different size-limits offer different possibilities - and just pushing the good old "classic" size-compos is getting boring imho, especially 64k.
(i wonder what the outcome of a 128k competition would be.)
added on the 2009-04-19 17:50:09 by red red
64k became boring because it's hard work to reach the best.
added on the 2009-04-19 18:10:16 by las las


Go to top