--- Log opened Sat Dec 17 00:00:38 2016 |
00:11 | | Vash [Vash@Nightstar-uhn82m.ct.comcast.net] has quit [Connection closed] |
00:45 | | catadroid` is now known as catadroid |
00:46 | < catadroid> | A reckless disregard for gravity? |
00:48 | <&McMartin> | for the awesome |
00:52 | <~Vornicus> | ...what |
00:53 | | * Vornicus gets the heuristic to do the right thing, ... ... ... total visited for 11-A, 196 locations. |
00:53 | < catadroid> | http://store.steampowered.com/app/15520/ |
00:54 | <~Vornicus> | Went from two and a half minutes to not-long-enough-to-be-measured |
00:55 | <&McMartin> | Vorn: The thing I plan on trying out involves cnvevat puvcf naq trarengbef ohg renfvat juvpu ryrzrag gur cnve ersref gb, which I am told cuts the search space by a factor of 5,000 |
00:58 | < RobinStamer> | I initially thought McM was having a bit of a stroke there |
00:58 | <~Vornicus> | mm. I just cut mine by, apparently, a factor of 8,282 |
00:59 | <~Vornicus> | My instincts -- that a sensible heuristic would actually work wonders -- were right, I just kept trying to be clever with the damn thing. |
01:14 | | * Vornicus suspects that the rot13'd thing may come in handy for the slightly larger one but unsure how much. it'd spend more time thrashing in dead ends but I'm not sure it's much, considering. |
01:18 | | Derakon[AFK] is now known as Derakon |
01:19 | <~Vornicus> | 6 seconds to do 11-B. |
01:24 | <~Vornicus> | (16,902 states, an 88-fold state count increase.) |
01:35 | | * Vornicus examines 12, starts writing an assembly terp, finishes writing an assembly terp, preps his dinner. |
01:50 | | * Vornicus drums his fingers waiting for 12-B. |
01:51 | <~Vornicus> | only 27 million instruction executions. |
01:54 | <~Vornicus> | oh look, it's time for aystar again. |
02:06 | <~Vornicus> | hey quick question: does your 13-A also ask that you seek to (31,39)? |
03:15 | | ion_ [Owner@Nightstar-6grqph.vs.shawcable.net] has quit [Ping timeout: 121 seconds] |
03:27 | <&McMartin> | Vornicus: There's a really funny solution for 12 |
03:27 | <&McMartin> | Vornicus: It does; 31,39 seems to be hardcoded |
03:29 | <&McMartin> | Incidentally, the funny solution for 12 is to use awk to convert the input into *actual* assembly language and then just run it |
03:29 | <~Vornicus> | That *is* a funny solution. |
03:30 | <&McMartin> | Turns out that makes 12-B more or less instantaneous~ |
03:31 | <~Vornicus> | yeah, it takes a minute & change for me in python |
03:32 | <&McMartin> | I did a hand-translation and in so doing noticed the code in the input is highly stylized and could be wildly optimized |
03:32 | <&McMartin> | There's a bunch of loops of the form inc a; dec b; jnz b -2 |
03:32 | <&McMartin> | Which is to say, a += b; b = 0; |
03:34 | <~Vornicus> | I saw those. |
04:28 | | catadroid` [catalyst@Nightstar-7n6ad2.dab.02.net] has joined #code |
04:32 | | catadroid [catalyst@Nightstar-3voi6p.dab.02.net] has quit [Ping timeout: 121 seconds] |
05:12 | | * McMartin goes 25/12 on day 17. |
05:13 | <~Vornicus> | 25/12? |
05:15 | <&McMartin> | I was the 25th and 12th solver on parts A and B, respectively |
05:16 | <&McMartin> | Also re: earlier: http://store.steampowered.com/app/15560 |
05:19 | | * Vornicus knew those |
05:19 | <~Vornicus> | was whating at his heuristic working that well |
05:20 | <~Vornicus> | https://www.youtube.com/watch?v=u6nTNO5CsUM also this. |
05:20 | <&McMartin> | I see. |
05:31 | | * Vornicus examines 14. bonkers |
05:44 | | Vornotron [Vorn@ServerAdministrator.Nightstar.Net] has joined #code |
05:46 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Operation timed out] |
06:23 | | celticminstrel [celticminst@Nightstar-h4m24u.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
06:42 | | catadroid` is now known as catadroid |
07:22 | | Derakon is now known as Derakon[AFK] |
08:48 | | Kindamoody[zZz] is now known as Kindamoody |
10:15 | | Kindamoody is now known as Kindamoody|afk |
10:16 | | * jerith finishes 17. |
10:29 | | himi [sjjf@Nightstar-v37cpe.internode.on.net] has joined #code |
10:29 | | mode/#code [+o himi] by ChanServ |
10:40 | <@abudhabi> | jeroud: Happy birthday! |
10:58 | | catadroid` [catalyst@Nightstar-2t2486.dab.02.net] has joined #code |
10:59 | | catadroid` [catalyst@Nightstar-2t2486.dab.02.net] has quit [[NS] Quit: Bye] |
11:01 | | catadroid [catalyst@Nightstar-7n6ad2.dab.02.net] has quit [Ping timeout: 121 seconds] |
11:17 | | ion_ [Owner@Nightstar-6grqph.vs.shawcable.net] has joined #code |
11:17 | | mode/#code [+o ion_] by ChanServ |
11:37 | | catalyst [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has joined #code |
11:48 | <@gnolam> | https://twitter.com/peterseibel/status/787314155615195136 |
16:17 | | celticminstrel [celticminst@Nightstar-h4m24u.dsl.bell.ca] has joined #code |
16:17 | | mode/#code [+o celticminstrel] by ChanServ |
17:26 | | Derakon[AFK] is now known as Derakon |
18:43 | <&jerith> | abudhabi: What told you it's my birthday? |
18:43 | <@Tamber> | "finishing 17", presumably~ |
18:43 | <@abudhabi> | That. :V |
18:43 | <&jerith> | Ah. |
18:43 | <&jerith> | The next age I finish will be rather higher then 17.~ |
18:44 | <@abudhabi> | Don't jinx it! |
18:44 | <@Tamber> | In which base, though? |
18:44 | <@Tamber> | :p |
18:48 | | * celticminstrel ponders how to describe strings such as xyz.pqr[1][foo].bar[baz].foo without left recursion. |
19:03 | <&McMartin> | prefix [suffix]* I think |
19:03 | <&McMartin> | suffix can be identified by starting with . or [ |
19:04 | <@celticminstrel> | And prefix is... an identifier? |
19:04 | <&McMartin> | Yeah |
19:04 | <@celticminstrel> | Hmmm. Maybe. |
19:04 | <&McMartin> | suffix looks like either DOT IDENTIFIER or OPENBRACKET string CLOSEBRACKET |
19:05 | <&McMartin> | I have some grammars like this myself for expressions; I seem to have named them AccessPath |
19:18 | <&ToxicFrog> | Lua has exactly this in its grammar, you could see what they call it~ |
19:51 | | Kindamoody|afk is now known as Kindamoody |
19:55 | <@celticminstrel> | ...apparently the Lua grammar enforces no statements after a return. |
20:02 | <@celticminstrel> | Also it appears not to allow chained assignment? |
20:05 | <&jerith> | As in "a = b = c = 5"? |
20:05 | <&jerith> | That's usually a bad idea anyway. |
20:05 | <@celticminstrel> | Is it? |
20:06 | <@celticminstrel> | It does seem simpler to not allow it though. |
20:06 | <&jerith> | In language design rather than code, I mean. |
20:06 | <@celticminstrel> | Why's that? |
20:07 | <&jerith> | It's only useful with widespread mutable state. |
20:07 | <@celticminstrel> | Ehh... |
20:08 | <&ToxicFrog> | The lua eqv is a,b,c = 5,5,5 |
20:08 | <@celticminstrel> | I just thought of that too. :P |
20:08 | <&jerith> | It encourages you to think "I'll make seventeen variables and initialise them all here, then modify them in a bunch of places through my function". |
20:09 | <@celticminstrel> | ToxicFrog: That'd be inconvenient if the rightmost is a complicated expression, though. |
20:09 | <&jerith> | It's also highly correlated with "if a = b == 7", etc. |
20:09 | <&jerith> | celticminstrel: Why would you need multiple copies of that, though? |
20:10 | <&jerith> | I've almost never seen it used for anything other than initialising things to 0 or whatever. |
20:10 | <&ToxicFrog> | And yeah, it does disallow statements after return; it's not as hardcore about dead code elimination as e.g. Java but that's a cheap and easy one to forbid. |
20:11 | <@celticminstrel> | jerith: No idea. |
20:11 | <@celticminstrel> | But if for some reason you did, in Lua you could just do a = expr; b, c = a, al I guess. |
20:11 | <&ToxicFrog> | Yes. |
20:12 | <@celticminstrel> | Whoops, I hit L instead of semicolon there. |
20:12 | <@celticminstrel> | I notice that the Lua grammar also seems to treat a semicolon as "always a null statement", rather than a separator. |
20:16 | | * celticminstrel wonders if there would be any point allowing declarations in an if statement in languages where variables don't have an assigned type; in C++ the only good use for it I know of is testing if a polymorphic object is of a particular type. |
20:42 | <&ToxicFrog> | celticminstrel: in languages with block scope (such as lua) such a declaration scopes it to the if statement. |
21:28 | < catalyst> | ^ |
21:28 | < catalyst> | Scoping is nice |
21:42 | <@celticminstrel> | Well, Lua doesn't allow it in if though, but I think I get your point. |
21:42 | | * Vornotron gives catalyst a telescope, a microscope, an oscilloscope, a stethoscope, and a horoscope. |
21:42 | <@celticminstrel> | "for x = y in z" doesn't make any sense, right. |
22:09 | | * TheWatcher ponders a logo for DELIA GLOBE SILVER |
22:54 | < catalyst> | xD |
23:40 | <&McMartin> | 12:10 <&jerith> I've almost never seen it used for anything other than |
23:40 | <&McMartin> | initialising things to 0 or whatever. |
23:41 | <&McMartin> | This is a specific way of exploiting the property "an assignment is an expression returning the value assigned", and the interesting use case is not a = b = c = 0 but rather while (c = fgetc(f)) { ... } |
23:42 | <@celticminstrel> | But assignment is not an expression in Python, and it still supports chaining assignments. |
--- Log closed Sun Dec 18 00:00:40 2016 |