code logs -> 2010 -> Mon, 31 May 2010< code.20100530.log - code.20100601.log >
--- Log opened Mon May 31 00:00:19 2010
00:01 AnnoDomini [annodomini@Nightstar-27f6a003.adsl.tpnet.pl] has quit [[NS] Quit: leaving]
00:10
<@ToxicFrog>
It's a puzzle game! It's a turing machine! It's both! http://www.kongregate.com/games/PleasingFungus/manufactoria
00:18
<@Finerty>
It's also impossible to tell what's going on before the machine actually starts!
00:24 Reiv[Graduate] [orthianz@Nightstar-68f5ba25.xnet.co.nz] has quit [Client closed the connection]
00:30 Reiv[Graduate] [orthianz@Nightstar-68f5ba25.xnet.co.nz] has joined #code
00:33 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has joined #code
00:50
<@ToxicFrog>
Finerty: ?
00:52
<@Finerty>
I couldn't figure out what program the robot was running -- or what direction the robot was going to walk -- before I started the machine.
00:57
<@ToxicFrog>
...are we playing the same game?
00:57
<@ToxicFrog>
The robot is inanimate.
00:57
<@ToxicFrog>
It doesn't run any program.
00:57
<@ToxicFrog>
It enters your machine from the northmost hatch, headed south, and after that it's up to your machine to move it around and ultimately accept/reject it.
01:00 You're now known as TheWatcher[T-2]
01:01
<@Finerty>
So what's the program for? And I had no idea at all whether the robot was going to head south or east or west, or whether it was going to continue, or any of that.
01:01
<@Finerty>
And so I was flying pretty much completely blind.
01:02
<@ToxicFrog>
You should have gotten a little mini-tutorial when the game started up explaining this stuff
01:02
<@Finerty>
I got a litle mini-tutorial.
01:02
<@ToxicFrog>
The robot has a program. The job of your machine is to read the program and determine if it meets the criteria given on the left.
01:02
<@ToxicFrog>
For example, "contains at least three blues" or "ends with a red"
01:02
<@Finerty>
It said nothing about any of these things.
01:03
<@ToxicFrog>
If the machine accepts, it is to deposit the robot into the hatch against the south wall.
01:03
<@ToxicFrog>
If it rejects, it is to dump the robot onto the floor anywhere else.
01:04 You're now known as TheWatcher[zZzZ]
01:05
<@Finerty>
These are things that I was not aware of - all I got from the tutorial is that I was supposed to get the robot to the hatch. I had no idea what a robot does when it hits an empty cell.
01:05
<@ToxicFrog>
Dumping the robot on the floor is a reject, and I am damn sure the tutorial mentioned this
01:05
<@ToxicFrog>
About the only things I can think of offhand that I didn't know after watching it, but wished I did, are:
01:05
<@Finerty>
I also didn't know that that was "the floor" as opposed to, I don't know, a table.
01:06
<@ToxicFrog>
- what direction the robot exits the hatch (south)
01:06
<@Finerty>
I sat there completely clueless as to what I was supposed to do.
01:06
<@ToxicFrog>
- whether you can push a robot into a switch from any direction (yes)
01:06
<@ToxicFrog>
- that you can make over/under conveyor belts (by holding shift).
01:07
<@ToxicFrog>
Looking over the tutorial again, it still makes perfect sense.
01:08
<@ToxicFrog>
Hell, you can even figure out which way the robot enters the room by looking at the sample machines given.
01:34 Reiv[Graduate] [orthianz@Nightstar-68f5ba25.xnet.co.nz] has quit [Connection reset by peer]
01:41 Reiv[Graduate] [orthianz@Nightstar-68f5ba25.xnet.co.nz] has joined #code
01:43
<@Finerty>
now that I actually know what's going on, this isn't so hard.
01:44
<@Finerty>
Well. Up until this one. Some number of blue, and then the /same/ number of red?
01:44
<@ToxicFrog>
^.^
01:45
<@ToxicFrog>
I just solved 'n blue, n red, n blue' and 'twice as many blue as red'
01:48
<@Finerty>
well, okay, I think I can do it if it's finite...
01:48
<@ToxicFrog>
All inputs are guaranteed to be finite, yes.
01:48
<@Finerty>
or, rather, very finite.
01:48
<@ToxicFrog>
Upper bound on length is 50.
01:49
<@ToxicFrog>
Or probably something like 45 in practice so you have some space to work with.
01:49
<@ToxicFrog>
Argh. It's the ones that require modifying the string that give me trouble.
01:49
<@ToxicFrog>
I'm stuck on "put a yellow in the middle. All inputs are guaranteed to be even-lengthed."
01:55
<@Finerty>
okay that one sounds mean.
01:55
<@ToxicFrog>
I think I have it figured out
01:56
< celticminstrel>
What is this, anyway?
01:56
< Namegduf>
I've done multipass ones before.
01:57
< Namegduf>
I did one horrible solution that involved deleting a blue, red pair, then simply echoing what it read until it got to a start marker.
01:57
< Namegduf>
Then looping to the start.
01:58
< Namegduf>
And never exiting until it failed to find a pair, at which point I forget what success criteria were.
01:58
< Namegduf>
Maybe "empty"
01:58
<@ToxicFrog>
Namegduf: yeah, I use that approach a lot
01:58 * Finerty is stuck on n blue n red.
01:58
< Namegduf>
Finerty: That thing I just said might be a solution. >_>
01:58
<@ToxicFrog>
For this one...put a yellow at the front, and a green at the end. Then map (Y x) -> (x Y), (x G) -> (G x), (Y G) -> (Y, ACCEPT)
01:59
<@ToxicFrog>
I think that'll work
01:59
<@ToxicFrog>
celticminstrel: http://www.kongregate.com/games/PleasingFungus/manufactoria
02:01
< celticminstrel>
I was hoping for more of a description, but I guess this'll do.
02:13
<@Finerty>
No, this one eludes me.
02:16 gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has quit [[NS] Quit: Z?]
02:17
<@ToxicFrog>
Finerty: want hints, or just thinking out loud?
02:19
<@Finerty>
I think I need a hint.
02:21
<@ToxicFrog>
Do you have write heads for this puzzle? I don't recall.
02:27
<@Finerty>
I have all four write heads and both conditionals.
02:29
<@ToxicFrog>
Ok. In that case, try splitting it into two functions: one that confirms that all of the blues come before any reds, and then a second one that confirms there are equal amounts of both.
02:30
<@Finerty>
It's that second part that has me stumped.
02:32
<@ToxicFrog>
Try constructing an automaton that eats the first blue and the first red it sees and passes the rest through unchanged.
02:33
<@Finerty>
...ahaaaaaa
02:33
<@Finerty>
then if it ever gets to a point where the first blue expecter gets a red instead, it's a fail, and so forth...
02:33
<@ToxicFrog>
Bingo.
02:44 * ToxicFrog solves "put a yellow in the middle"!
02:45
<@Finerty>
"swap b/r" is pretty damn easy.
02:45
<@ToxicFrog>
Yeah.
02:46
<@ToxicFrog>
Ow. My current choices are:
02:46
<@ToxicFrog>
- reverse the input
02:46
<@ToxicFrog>
- even-length strings that repeat
02:46
<@ToxicFrog>
- let blue=1, red=0; add 1 to the input
02:48
<@Finerty>
The last doesn't sound hard.
02:48
<@Finerty>
Locate the last red, swap it to blue, swap everything after that to red.
02:49
<@ToxicFrog>
Yeah, it's "locate the last red" that's giving me trouble.
02:55
<@ToxicFrog>
Hmm. I think I have it.
02:57 * Finerty is now in "move the last symbol to the front.
02:58
<@ToxicFrog>
Replace (B $) with (G $), (B G) with (G G); on seeing (R $) or (R G), emit (B G) and deliver it to an automaton that turns G into R.
02:58
<@ToxicFrog>
I don't remember how I solved that one.
02:58
< celticminstrel>
It was really easy actually...
02:59
<@Finerty>
It doesn't look too hard.
03:01
<@ToxicFrog>
...it took me 61 parts to solve it, but I think I just thought of a better way.
03:08
< celticminstrel>
I was referring to "move the last symbol to the front"... except I got it mixed up with "move the first symbol to the end". Oops.
03:09
<@ToxicFrog>
Yes, so was I.
03:11
<@Finerty>
All I have to do is append G and then replace RG or BG with GR and GB, respectively, then cycle it around so the G gets popped off.
03:19
<@ToxicFrog>
Yeah.
03:20
<@ToxicFrog>
That's the better way.
03:22
<@ToxicFrog>
44 parts, just as fast as the 61-part version.
03:24
<@Finerty>
21 parts.
03:25
<@Finerty>
(14, 7, 5)
03:28
<@Finerty>
...multiply by 8? Honestly? Child's play.
03:35
<@ToxicFrog>
Yeah.
03:36
<@Finerty>
"an equal number of blue and red, in any order."
03:36
<@Finerty>
This one is probably a little tricky.
03:53 Reiv[Graduate] [orthianz@Nightstar-68f5ba25.xnet.co.nz] has quit [Client closed the connection]
03:59 Reiv[Graduate] [orthianz@Nightstar-68f5ba25.xnet.co.nz] has joined #code
04:04
<@Finerty>
ew, 43 parts
04:04
<@Finerty>
...put a yellow in the middle of the string.
04:23
<@ToxicFrog>
That one took me a while.
04:24 Searh [Z@26ECB6.A4B64C.298B52.D80DA0] has joined #code
04:26 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has quit [Ping timeout: 121 seconds]
04:28 Searh [Z@26ECB6.A4B64C.298B52.D80DA0] has quit [Ping timeout: 121 seconds]
04:53 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has joined #code
05:05 * Finerty tries to figure out how to even /put/ something at the beginning.
05:05
<@Finerty>
oh, right.
05:05
< Namegduf>
Write something and copy the rest.
05:06
<@Finerty>
Yeah.
05:07 Reiv[Graduate] [orthianz@Nightstar-68f5ba25.xnet.co.nz] has quit [Client closed the connection]
05:15 Reiv[Graduate] [orthianz@Nightstar-68f5ba25.xnet.co.nz] has joined #code
05:29 Finerty is now known as Vornicus
05:35
<@Vornicus>
Oh that one's horrible horrible.
05:59 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has quit [Ping timeout: 121 seconds]
06:04
<@Vornicus>
Hm. Okay, I now have a thing that will locate the correct location -- but now it skips over GY because it always sees ?G first.
06:11
<@Vornicus>
There's that bit, now...
06:12
<@Vornicus>
How to put it in /the middle/.
06:18
<@Vornicus>
need a terminate code.
06:18 celticminstrel [celticminstre@Nightstar-f8b608eb.cable.rogers.com] has quit [[NS] Quit: *whistles* Did you hear something?]
06:22
<@Vornicus>
oh, very clever. Horrible, but still. Very clever.
06:27 Attilla [Attilla@Nightstar-cf8b2de7.threembb.co.uk] has quit [[NS] Quit: ]
06:34
<@Vornicus>
...no, that's still wrong.
06:38
<@Vornicus>
Gotcha.
06:40
<@Vornicus>
106 parts.
06:51 Derakon is now known as Derakon[AFK]
07:35 Reiv[Graduate] is now known as Reivthia
07:40 * Vornicus works on "Move all blues to the front"
07:47 * Vornicus runs out of space a couple of times.
08:00 AnnoDomini [annodomini@Nightstar-27f6a003.adsl.tpnet.pl] has joined #code
08:00 mode/#code [+o AnnoDomini] by Reiver
08:13 Reivthia [orthianz@Nightstar-68f5ba25.xnet.co.nz] has quit [Client closed the connection]
08:19 * Vornicus args, gives up. Gotta be an easier way.
08:29 Reiv[Graduate] [orthianz@Nightstar-68f5ba25.xnet.co.nz] has joined #code
08:34 Rhamphoryncus [rhamph@Nightstar-bbc709c4.abhsia.telus.net] has joined #code
08:42 gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has joined #code
09:15 Reiv[Graduate] is now known as Reivthia
09:23 Reivthia [orthianz@Nightstar-68f5ba25.xnet.co.nz] has quit [Connection reset by peer]
09:30 Reiv[Graduate] [orthianz@Nightstar-68f5ba25.xnet.co.nz] has joined #code
09:58 Reiv[Graduate] is now known as Reivthia
10:55 Zed [Zed@Nightstar-e4835f03.or.comcast.net] has joined #code
11:06 Attilla [Attilla@Nightstar-9681c994.threembb.co.uk] has joined #code
11:06 mode/#code [+o Attilla] by Reiver
11:12 Vornicus is now known as Vornicus-Latens
11:15 Rhamphoryncus [rhamph@Nightstar-bbc709c4.abhsia.telus.net] has quit [Client exited]
11:16 You're now known as TheWatcher
12:12
< gnolam>
ToxicFrog: Damn you.
12:12
< gnolam>
I've now lost /hours/ to that bloody Manufactoria game.
12:46 RichardBarrell [mycatverbs@Nightstar-58acb782.cable.virginmedia.com] has joined #code
12:52 RichardBarrell [mycatverbs@Nightstar-58acb782.cable.virginmedia.com] has quit [Connection reset by peer]
13:12 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has quit [Connection closed]
13:23 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has joined #code
13:25 Reivthia [orthianz@Nightstar-68f5ba25.xnet.co.nz] has quit [Connection reset by peer]
14:20 Gruber [lenin@Nightstar-38637aa0.priv.bahnhof.se] has joined #code
14:20 Netsplit *.net <-> *.split quits: Namegduf, EvilDarkLord, gnolam, Serah, @McMartin, PinkFreud
14:21 Netsplit over, joins: PinkFreud, @McMartin, Namegduf, gnolam, EvilDarkLord, Serah
14:21 gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has quit [Ping timeout: 121 seconds]
14:21 Alek is now known as NSGuest43896
14:25 Reiv[Graduate] [orthianz@Nightstar-daf2bc97.xnet.co.nz] has joined #code
14:29 Netsplit *.net <-> *.split quits: Namegduf, EvilDarkLord, Serah, @McMartin, PinkFreud
14:30 Netsplit over, joins: PinkFreud, @McMartin, Namegduf, EvilDarkLord, Serah
14:31 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has quit [[NS] Quit: If the world didn't suck, we'd all fall off.]
14:31 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has joined #code
15:15 celticminstrel [celticminstre@Nightstar-f8b608eb.cable.rogers.com] has joined #code
15:18 Gruber is now known as gnolam
17:06
<@ToxicFrog>
gnolam: :D
17:47 RichardBarrell [mycatverbs@Nightstar-58acb782.cable.virginmedia.com] has joined #code
17:58 Reiv[Graduate] [orthianz@Nightstar-daf2bc97.xnet.co.nz] has quit [Client closed the connection]
18:09 AnnoDomini [annodomini@Nightstar-27f6a003.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds]
18:11 AnnoDomini [annodomini@Nightstar-a012b5c8.adsl.tpnet.pl] has joined #code
18:11 mode/#code [+o AnnoDomini] by Reiver
18:13 Reiv[Graduate] [orthianz@Nightstar-daf2bc97.xnet.co.nz] has joined #code
18:33 Reiv[Graduate] [orthianz@Nightstar-daf2bc97.xnet.co.nz] has quit [Connection reset by peer]
18:35 NSGuest43896 is now known as Alek
18:39 Reiv[Graduate] [orthianz@Nightstar-daf2bc97.xnet.co.nz] has joined #code
18:45 Reiv[Graduate] [orthianz@Nightstar-daf2bc97.xnet.co.nz] has quit [Client closed the connection]
18:52 Reiv[Graduate] [orthianz@Nightstar-daf2bc97.xnet.co.nz] has joined #code
18:58 Reiv[Graduate] [orthianz@Nightstar-daf2bc97.xnet.co.nz] has quit [Client closed the connection]
19:02
< gnolam>
ToxicFrog:
19:02
< gnolam>
[20:00] <X-G> You've completely ruined my evening now, by the way.
19:02
< gnolam>
[20:01] <gnolam> Manufactoria? :)
19:02
< gnolam>
[20:01] <X-G> Yes. >:(
19:04 Reiv[Graduate] [orthianz@Nightstar-daf2bc97.xnet.co.nz] has joined #code
19:08
<@ToxicFrog>
gnolam: yes, hence the :D
19:08
<@ToxicFrog>
Oh, I see
19:08
<@ToxicFrog>
Excellent
19:13 Attilla [Attilla@Nightstar-9681c994.threembb.co.uk] has quit [[NS] Quit: ]
19:19
< Alek>
damn you guys.
19:35
<@ToxicFrog>
^.^
19:35
<@ToxicFrog>
I thought it might catch on here~
19:36
<@ToxicFrog>
(it was written by a colleague of a friend of mine for a theory of computation course)
19:49 Netsplit *.net <-> *.split quits: Namegduf, EvilDarkLord, celticminstrel, @McMartin, PinkFreud
19:51 Netsplit over, joins: PinkFreud, @McMartin, celticminstrel, Namegduf, EvilDarkLord
19:58 aoanla [AndChat@Nightstar-d8d88c12.range86-147.btcentralplus.com] has joined #code
20:15
<@Kazriko>
Is it possible to save your state in this game? I'd hate to have to redo all of the levels again, or save them individually.
20:16
<@ToxicFrog>
It autosaves.
20:16
<@Kazriko>
do you need to sign in?
20:16
<@Vornicus-Latens>
If you're logged in to Kongregate it autosaves, anyway. Dunno if not.
20:16
<@ToxicFrog>
No. It uses whatever Flash has for storing data locally.
20:16 * ToxicFrog has no Kongregate account and it saves fine.
20:17
<@ToxicFrog>
Still trying to get it working offline, though :
20:17
<@Kazriko>
ok. I've finished most of what I can on the bottom branch, didn't know if I wanted to work on the top branch or not.
20:17
<@ToxicFrog>
Oh, hey!
20:17
<@ToxicFrog>
I have it working offline now, but it didn't remember my saves
20:17
<@Kazriko>
Not sure what to do with rocket planes yet, need to think of it...
20:18
<@Vornicus-Latens>
Rocket Planes is a doozy.
20:18
<@Kazriko>
Yeah.
20:18
<@Kazriko>
Almost have to count the number of reds using the structure of the map...
20:19
<@Kazriko>
that seems inefficient though. :(
20:19
<@Kazriko>
ahh.
20:19
<@Kazriko>
hmm.
20:19
<@ToxicFrog>
Which one is Rocket Planes?
20:19
<@Vornicus-Latens>
But Police (put a yellow in the middle of the string) took me 106 pieces.
20:19
<@Vornicus-Latens>
ROcket Planes is Move All Blues To The Front
20:19
<@ToxicFrog>
Oh
20:19
<@Kazriko>
or find a way to iterate through...
20:19 * ToxicFrog solved that with an incredibly perverse version of bubble sort
20:19
<@Kazriko>
hmm.
20:19
<@Kazriko>
yeah, that's what I was thinking.
20:19
<@Kazriko>
ugh.
20:20
<@Vornicus-Latens>
I kept running out of room, and then I still had issues where it wouldn't get there in time.
20:20
<@ToxicFrog>
+ a correctness checker
20:20
<@Kazriko>
run through it until there are no blues after reds.
20:20
<@ToxicFrog>
"in time"?
20:20
<@Vornicus-Latens>
Uh. I had a marker passing through it, so that it would run through the stuff a certain number of times...
20:20
<@ToxicFrog>
My solution for Police used 88 parts, looks like.
20:21
<@Vornicus-Latens>
But if there was a blue right at the end, it wouldn't start moving till very late.
20:21
<@ToxicFrog>
(create a marker at start and end, then on each iteration move the start marker right and the end marker left. If you see the markers adjacent, replace them with one and accept)
20:21
<@ToxicFrog>
Ok, but why is that a problem?
20:22
<@ToxicFrog>
Set it to 50x, have some tea.
20:22
<@Vornicus-Latens>
Because then shortly after that my movement marker would hit my eof marker, and terminate.
20:22
<@ToxicFrog>
Aah.
20:24
<@Vornicus-Latens>
POlice was horrible particularly because I had to come up with /three/ markers.
20:25
<@ToxicFrog>
Same here, but I was able to get away with using the same colour for two of them
20:26
<@Kazriko>
I know I violated the spirit of that test, but it passed so I'm happy. :)
20:26
<@ToxicFrog>
Kazriko: rocket planes?
20:26
<@Kazriko>
no, the robo bugs one.
20:26
<@Kazriko>
certain strings could fail even if they meet the criteria, but the test didn't use any of those.
20:26
<@ToxicFrog>
Aah.
20:26 * ToxicFrog baps Kazriko
20:27
<@Vornicus-Latens>
Robobugs was easy.
20:27
<@Kazriko>
yeah, I noticed the bug while I watched it run, but didn't feel like fixing it. wouldn't be hard to fix.
20:30
< gnolam>
ToxicFrog: Hah, you too? My running time for Rocket Planes was absolutely /obscene/, but then again... it's bubble sort.
20:32
<@ToxicFrog>
Playing it again, my solutions for the earlier ones are way more efficient.
20:32
<@ToxicFrog>
Then again, I know about bridges and that you can feed conditionals from any direction no.
20:32
<@ToxicFrog>
*now.
20:34
<@Kazriko>
Yeah, :)
20:34 * Kazriko enjoyed robo bears...
20:36 * Kazriko posts it up on his bookmark site...
20:36
<@Kazriko>
http://socia.arkaic.com/bookmarks/
20:37
< gnolam>
But even with bridges, the actual routing is a big part of each problem.
20:38
< gnolam>
It's not enough to figure out a solution to the problem, you have to figure out a sane layout to synthesize it to as well. :)
20:39
<@ToxicFrog>
Woo, milidogs in 8 parts
20:40 * Vornicus-Latens slightly improves RoboCoffee, from 5 parts to 3.
20:40 aoanla [AndChat@Nightstar-d8d88c12.range86-147.btcentralplus.com] has quit [[NS] Quit: ]
20:41 * Vornicus-Latens eyes the 8-part solution to milidogs.
20:41
<@Vornicus-Latens>
I don't think that works on a blank tape.
20:42
<@Vornicus-Latens>
Yep, fail.
20:43
< gnolam>
Ah, but this is TDD. It just has to pass all the tests to qualify. ;)
20:43
<@ToxicFrog>
Hmm. _should_ it reject a blank tape?
20:43
<@Kazriko>
Heh. Need more tests...
20:44
<@Kazriko>
yeah, since a blank tape isn't odd.
20:44
< gnolam>
One could say that a blank tape is undefined.
20:44
< gnolam>
An actual /zero/ should be represented by a red.
20:48
< gnolam>
That said, I just modified my previous 8-part solution to a different 8-part solution that rejects blank tapes. :)
20:48
<@ToxicFrog>
Nice
20:48
<@Vornicus-Latens>
ooh, I wanna see that one.
20:49
<@ToxicFrog>
I think I have it
20:49
<@ToxicFrog>
>
20:49
<@ToxicFrog>
VV
20:49
<@ToxicFrog>
Add conveyors as needed.
20:49
<@Vornicus-Latens>
There's an "export to string" function
20:49
<@Vornicus-Latens>
(press the floppy disk)
20:50
<@ToxicFrog>
?lvl=11&code=p12:7f3;p13:7f3;c12:8f3;c12:9f3;c11:7f2;c14:7f0;c12:5f3;p12:6f2;
20:51
< gnolam>
Interesting. I did
20:51
< gnolam>
?lvl=11&code=c11:5f2;c14:5f0;p12:5f7;c13:6f3;c13:7f3;c13:8f3;c13:9f3;c13:10f0;p1 3:5f7;
20:52
<@ToxicFrog>
!?
20:52
<@ToxicFrog>
How did you mirror the switches like that?
20:52
<@Vornicus-Latens>
Space.
20:52
<@ToxicFrog>
Huh.
20:52
<@Vornicus-Latens>
And that's 9 parts
20:52
<@ToxicFrog>
Well, that will make some of my solutions a lot more compact.
20:53
<@Vornicus-Latens>
And, in fact, it is my original solution, mirrored.
20:53
< gnolam>
Oh, right
20:53
< gnolam>
It just shows the minimum you've solved it with in the overview.
20:53
< gnolam>
Too lazy to count myself.
21:11
< gnolam>
There. 8-part, 2 conditional solution that discards blank tapes: ?lvl=11&code=c12:5f2;c13:5f3;c13:6f3;c13:7f3;c12:9f3;p13:8f4;c13:10f1;p13:9f4;
21:11
<@Vornicus-Latens>
oh, clever.
21:15 * Vornicus-Latens determines that if you really wanted to, you could make the code considerably shorter.
21:25
<@Kazriko>
I wish they had actually offered the theory of computation class at my college. They had it on the list, but they canceled it every year due to too few students signing up.
21:27
<@ToxicFrog>
It was mandatory here.
21:28 Reiv[Graduate] [orthianz@Nightstar-daf2bc97.xnet.co.nz] has quit [Ping timeout: 121 seconds]
21:28
<@Kazriko>
I wish it was here. You could pick between it and the theory of algorithms here, and most everyone chose the latter.
21:32
<@ToxicFrog>
What is the content of theory of algorithms?
21:32
<@ToxicFrog>
If that's design and analysis of algorithms, that's also mandatory here
21:35
<@ToxicFrog>
(if you're following the spec, you take Analysis & Design of Algorithms in semester 4 and Theory of Computation in semester 5. Compiler Design & Implementation is encouraged but not mandatory.)
22:00 Reiv[Graduate] [orthianz@Nightstar-daf2bc97.xnet.co.nz] has joined #code
22:08
<@Kazriko>
I'm not fond of my college, they tended to do everything a bit on the basic side. As I said before, everything I use professionally I learned outside of my classes aside from the Database class.
22:14
<@ToxicFrog>
I think the CIS program here has some serious flaws, especially starting out (C and Java as starting languages? Ick), but once you get into third/fourth year, it gets pretty awesome
22:15
<@Kazriko>
They started with C++ here, later on adding Java, perl, delphi... It's been 8 years since I was there though.
22:16
< celticminstrel>
My university starts with Python, then moves to Java and C.
22:16
<@ToxicFrog>
There's a nice mix of theory, practice, and...not sure what to call it, skills that will be useful in a professional setting like group coordination
22:16
< celticminstrel>
At the same time, even. (Well, potentially at the same time, anyway.)
22:16
<@Kazriko>
It would have been nice to use python early on...
22:16
<@ToxicFrog>
And the further in you get, the more relaxed they get about what languages you can use.
22:16
<@Kazriko>
ToxicFrog, we had a "software engineering" class that was essentially group coordinatoin.
22:16
<@ToxicFrog>
Python gets introduced in third semester, IIRC
22:17
<@Kazriko>
along with writing to specifications, etc.
22:17
<@ToxicFrog>
By the time you hit fourth year you can use pretty much anything you like - I ended up doing C + Lua for Compilers, someone else did theirs in Haskell
22:17
< celticminstrel>
When they were teaching us about data structures like queues and trees and stuff, we used Python dictionaries rather than classes.
22:17
<@ToxicFrog>
I also used Erlang for the distributed systems course, which is arguably not at all in the spirit of the course~
22:17
< celticminstrel>
Which seemed a bit odd, but whatever.
22:17
<@Kazriko>
Yeah, we did our data structures class in C++...
22:17
<@Kazriko>
hah.
22:17
<@ToxicFrog>
C here.
22:17
<@Kazriko>
Oh, used Lisp for the AI class.
22:18
<@Kazriko>
Common lisp...
22:18
<@ToxicFrog>
AI is a free for all.
22:18
<@ToxicFrog>
I did mine in a mix of Lua and Haskell; I also saw Lisp, C/++, Java and Python in use.
22:18
< gnolam>
They start us on either Scheme or Common Lisp. It's a good way to break people out of old habits.
22:18 * Kazriko has finally ended up using C++ professionally, but it took 6 years of working in the field before he found a use for it.
22:19
<@ToxicFrog>
gnolam: yeah, I wish it started on Scheme here
22:19
<@ToxicFrog>
Or failing that some other HLL like Python
22:19
<@Kazriko>
nod. Scheme and Python would be a good combo to start...
22:20
< gnolam>
And when everyone's finally gotten used to functional programming, they throw an Ada course at us, heh.
22:20
<@Kazriko>
scheme for teaching good practices and such, python for something more practical.
22:20
<@ToxicFrog>
It would make the co-op students unhappy, but oh well, they can take Scheme first semester and C or Java second semester
22:20
< gnolam>
Then, in the OOP course, there's mandatory Java, Python and Smalltalk.
22:20
<@ToxicFrog>
That sounds so much more awesome than our first two years :/
22:20
<@ToxicFrog>
Where is this?
22:21
< gnolam>
LiTH. Linköping, Sweden.
22:22
<@ToxicFrog>
Aah.
22:22
< gnolam>
After that (year 2+), courses don't tend to have hard language requirements.
22:23
< gnolam>
Well, except the OS course. Which is in C(99).
22:25 * ToxicFrog checks his
22:25
<@ToxicFrog>
C and Java first year, ASM and Python second, third year and onwards is a free for all with a few exceptions
22:26
< gnolam>
I don't really count ASM. It's an integral part of any computer architecture course. :)
22:26
<@ToxicFrog>
...none of which I can think of offhand, so maybe there aren't.
22:27
<@Kazriko>
we had two asm classes, computer architecture which taught ASM as an abstract thing, and the actual asm class where you wrote entire dos applications in assembler...
22:28
<@ToxicFrog>
Here the ASM class is CIS*2030, structure and application of microprocessors; when I took it they were using MC68ks.
22:28
<@ToxicFrog>
s/microprocessors/microcomputers/
22:28
<@ToxicFrog>
Home time!
22:33
< celticminstrel>
I think my university uses 68k emulators for teaching assembly.
22:35
< celticminstrel>
...I seem to rely on short-circuiting and/or a lot.
22:37 Rhamphoryncus [rhamph@Nightstar-bbc709c4.abhsia.telus.net] has joined #code
22:41 Derakon[AFK] is now known as Derakon
22:43 AnnoDomini [annodomini@Nightstar-a012b5c8.adsl.tpnet.pl] has quit [[NS] Quit: leaving]
22:46
<@Kazriko>
Hmm. someone posted a solution to "android" called "android the shortest" which would fail some tests if they had put the right tests in. :(
22:47
<@Kazriko>
game desperately needs more tests. :)
22:48 Reiv[Graduate] [orthianz@Nightstar-daf2bc97.xnet.co.nz] has quit [Ping timeout: 121 seconds]
22:50
<@Kazriko>
that solution tests that there are blues followed by reds, and that the total number of them is even, not that there are the same number of them.
23:01
< gnolam>
Yup. I shortened mine to a version of that. :)
23:16
<@ToxicFrog>
celticminstrel: we had emulators, but we also had physical boards
23:19
<@Derakon>
Celticminstrel: making use of short-circuiting is downright standard in boolean logic.
23:20
<@Derakon>
"if easyToComputeAndProbablyFalse() and hardToCompute()"
23:27
<@Kazriko>
56 parts on android. I wonder if I could trim that red loop down...
23:29
<@Kazriko>
ok, 54. heh
23:29
<@Kazriko>
enough for today.
23:32
<@Kazriko>
46...
23:32 * Kazriko really should stop...
23:34
<@Kazriko>
40, and I think I've trimmed all the fat out now...
23:34 Attilla [Attilla@Nightstar-39d02957.threembb.co.uk] has joined #code
23:34 mode/#code [+o Attilla] by Reiver
23:37
<@Kazriko>
39. one more conveyor gone. heh
23:39
< Tarinaky>
~>>which clitoris
23:39
< Tarinaky>
which: no clitoris in $PATH
23:39
< Tarinaky>
Is it wrong that I find this hilarious? :/
23:40
< Tarinaky>
For the curious, my system can't locate it either.
23:42
<@Kazriko>
36...
23:42
<@Kazriko>
it's beginning to look like an entry in the obfuscated code contest though.
23:43
< Tarinaky>
Job security!
23:46
<@Kazriko>
?lvl=17&code=q11:11f3;r8:5f3;c8:6f3;p8:7f3;q8:8f3;p9:5f7;c9:6f2;r9:7f0;g9:8f2;c1 0:6f3;c10:7f3;p10:8f2;b10:9f1;b11:6f0;g11:7f3;q11:8f2;c11:9f3;p11:10f7;p12:6f5;r 12:7f1;g12:8f1;b12:10f2;r13:6f0;r13:7f2;q13:8f1;y13:10f2;p14:10f2;b14:11f1;p14:7 f6;c14:8f0;c14:9f1;g12:4f0;y11:4f0;c9:4f3;c10:4f0;b10:5f0;
23:47 You're now known as TheWatcher[T-2]
23:48
<@Kazriko>
I can only see one more change to make, and I don't think it would decrease the part count at all.
23:48
<@Kazriko>
just replace parts for conveyors.
23:50
<@Kazriko>
35. heh.
23:52
<@Kazriko>
34. I really really should stop...
23:53 You're now known as TheWatcher[zZzZ]
--- Log closed Tue Jun 01 00:00:20 2010
code logs -> 2010 -> Mon, 31 May 2010< code.20100530.log - code.20100601.log >