code logs -> 2015 -> Mon, 06 Jul 2015< code.20150705.log - code.20150707.log >
--- Log opened Mon Jul 06 00:00:15 2015
01:11 catalyst [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has quit [[NS] Quit: ]
01:11 catadroid [catalyst@Nightstar-pdeqr7.dab.02.net] has joined #code
02:18 VirusJTG_ [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has quit [[NS] Quit: Leaving]
02:18 VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has joined #code
02:52 celticminstrel [celticminst@Nightstar-3mpo5q.dsl.bell.ca] has joined #code
02:52 mode/#code [+o celticminstrel] by ChanServ
03:23 VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has quit [Connection closed]
03:49 catadroid` [catalyst@Nightstar-pdeqr7.dab.02.net] has joined #code
03:49 catadroid [catalyst@Nightstar-pdeqr7.dab.02.net] has quit [Connection closed]
04:43 catadroid [catalyst@Nightstar-2c6129.dab.02.net] has joined #code
04:46 catadroid` [catalyst@Nightstar-pdeqr7.dab.02.net] has quit [Ping timeout: 121 seconds]
04:56 Derakon is now known as Derakon[AFK]
05:00 celticminstrel [celticminst@Nightstar-3mpo5q.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
05:51 Checkmate [Z@Nightstar-pdi1tp.customer.tdc.net] has quit [Ping timeout: 121 seconds]
05:58 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection closed]
06:28 mac is now known as macdjord
06:45 Kindamoody[zZz] is now known as Kindamoody
07:38
< abudhabi>
Anybody know anything about jQuery Mobile?
07:39
< abudhabi>
What kind of software do I need to run tests? Because I don't have a smartphone handy. I figure I'd need some sort of virtual thingy.
07:40 Kindamoody [Kindamoody@Nightstar-180u8i.tbcn.telia.com] has quit [Ping timeout: 121 seconds]
07:40 Kindamoody|autojoin [Kindamoody@Nightstar-180u8i.tbcn.telia.com] has joined #code
07:40 mode/#code [+o Kindamoody|autojoin] by ChanServ
07:40 Kindamoody|autojoin is now known as Kindamoody
08:15 GreenGuy [GreenGuy@Nightstar-fik25i.gnomino.eu] has joined #code
08:19 kourbou [kourbou@Nightstar-deqg8j.fbx.proxad.net] has joined #code
08:36 Meatyhandbag [sebastianfe@Nightstar-v3t.j75.73.97.IP] has joined #code
09:36 catadroid [catalyst@Nightstar-2c6129.dab.02.net] has quit [Ping timeout: 121 seconds]
09:39 GreenGuy [GreenGuy@Nightstar-fik25i.gnomino.eu] has quit [Connection closed]
10:03 GreenGuy [GreenGuy@Nightstar-fik25i.gnomino.eu] has joined #code
10:11 GreenGuy [GreenGuy@Nightstar-fik25i.gnomino.eu] has quit [Operation timed out]
10:13 GreenGuy [GreenGuy@Nightstar-fik25i.gnomino.eu] has joined #code
10:16 catadroid [catalyst@Nightstar-sg8r5k.dab.02.net] has joined #code
11:10 VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has joined #code
13:07 GreenGuy [GreenGuy@Nightstar-fik25i.gnomino.eu] has quit [Connection closed]
13:21 GreenGuy [GreenGuy@Nightstar-fik25i.gnomino.eu] has joined #code
13:21
<&ToxicFrog>
abudhabi: Chrome has a mobile emulation mode in the developer tools, or you could run an Android emulator
13:21
<&ToxicFrog>
If you need to test on iOS Safari (or whatever it uses) I have NFI, though
13:26
< abudhabi>
I installed some kind of custom VM called Andy.
13:26
< abudhabi>
It seems to work well enough.
13:56 celticminstrel [celticminst@Nightstar-3mpo5q.dsl.bell.ca] has joined #code
13:56 mode/#code [+o celticminstrel] by ChanServ
14:25 Kindamoody is now known as Kindamoody|afk
14:29 Reiv [NSwebIRC@Nightstar-q8avec.kinect.net.nz] has quit [Ping timeout: 121 seconds]
15:28 kourbou [kourbou@Nightstar-deqg8j.fbx.proxad.net] has quit [Connection reset by peer]
15:57 VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has quit [Connection closed]
15:58 Kindamoody|afk [Kindamoody@Nightstar-180u8i.tbcn.telia.com] has quit [Connection reset by peer]
15:59 Kindamoody|autojoin [Kindamoody@Nightstar-180u8i.tbcn.telia.com] has joined #code
15:59 mode/#code [+o Kindamoody|autojoin] by ChanServ
16:03
<@celticminstrel>
Hmm... I wonder if there's an easy way to open a GIF and extract the comment...
16:06 catadroid` [catalyst@Nightstar-5i0o3o.dab.02.net] has joined #code
16:08 catadroid [catalyst@Nightstar-sg8r5k.dab.02.net] has quit [Ping timeout: 121 seconds]
16:08
<@celticminstrel>
Looks like it can be identified by <0x21><0xFE>, the only difficulty is that it seems to go at the end of the file.
16:10
<@celticminstrel>
Maybe I'm wrong about that.
16:12
<@celticminstrel>
Oh, looks like it can go either before or after.
16:14 Checkmate [Z@Nightstar-ev6.6um.94.83.IP] has joined #code
16:14 mode/#code [+o Checkmate] by ChanServ
16:17 GreenGuy [GreenGuy@Nightstar-fik25i.gnomino.eu] has quit [Connection closed]
16:20 GreenGuy [GreenGuy@Nightstar-fik25i.gnomino.eu] has joined #code
16:34
<@celticminstrel>
Short answer: No easy way. Only way is "read and skip stuff until found".
16:45 catadroid` is now known as catadroid
17:04 GreenGuy [GreenGuy@Nightstar-fik25i.gnomino.eu] has quit [Operation timed out]
17:06 starkruzr [jtd@Nightstar-qbtq3s.fios.verizon.net] has joined #code
17:07 GreenGuy [GreenGuy@Nightstar-fik25i.gnomino.eu] has joined #code
17:44 starkruzr [jtd@Nightstar-qbtq3s.fios.verizon.net] has quit [Ping timeout: 121 seconds]
17:46 starkruzr [jtd@Nightstar-qbtq3s.fios.verizon.net] has joined #code
17:48 catadroid` [catalyst@Nightstar-3na0e8.dab.02.net] has joined #code
17:48 catadroid [catalyst@Nightstar-5i0o3o.dab.02.net] has quit [Connection closed]
18:17 catadroid [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has joined #code
18:19 catadroid` [catalyst@Nightstar-3na0e8.dab.02.net] has quit [Ping timeout: 121 seconds]
18:26 catadroid [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has quit [[NS] Quit: Bye]
18:26 catalyst [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has joined #code
19:02 GreenGuy [GreenGuy@Nightstar-fik25i.gnomino.eu] has quit [Connection closed]
20:25 ErikMesoy [Erik@Nightstar-ki97ss.customer.cdi.no] has quit [Ping timeout: 121 seconds]
20:30 ErikMesoy [Erik@Nightstar-ki97ss.customer.cdi.no] has joined #code
20:30 mode/#code [+o ErikMesoy] by ChanServ
20:30 gizmore [kvirc@Nightstar-s1hvmi.dip0.t-ipconnect.de] has joined #code
20:32 kourbou_ [kourbou@Nightstar-deqg8j.fbx.proxad.net] has joined #code
20:32 kourbou_ is now known as kourbou
21:09 celticminstrel [celticminst@Nightstar-3mpo5q.dsl.bell.ca] has quit [[NS] Quit: KABOOM! It seems that I have exploded. Please wait while I reinstall the universe.]
21:09 celticminstrel [celticminst@Nightstar-3mpo5q.dsl.bell.ca] has joined #code
21:09 mode/#code [+o celticminstrel] by ChanServ
21:12 VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has joined #code
21:28 gizmore [kvirc@Nightstar-s1hvmi.dip0.t-ipconnect.de] has quit [[NS] Quit: KVIrc 4.3.1 Aria http://www.kvirc.net/]
21:56 kourbou [kourbou@Nightstar-deqg8j.fbx.proxad.net] has quit [[NS] Quit: Snuggles Hydrattler before sleeping off.]
22:11 Reiv [NSwebIRC@Nightstar-q8avec.kinect.net.nz] has joined #code
22:11 mode/#code [+o Reiv] by ChanServ
22:15
< starkruzr>
thing I am learning quickly: PHP makes it very easy to be super lazy at first and then have no idea what the hell you did a month later
22:15
<@celticminstrel>
How so?
22:16
<@ErikMesoy>
to what extent is this a special case of "not documenting your code makes it very easy to etc" ?
22:18
<&ToxicFrog>
ErikMesoy: PHP lets you get away with all kinds of shit (especially around types) that most civilized languages don't.
22:18
<&ToxicFrog>
So there is a lot of stuff that you shouldn't need to document, like whether == is transitive or not in this context.
22:19
<@celticminstrel>
...when is == nontransitive?
22:21
<@ErikMesoy>
in PHP. ;)
22:25
<@ErikMesoy>
http://se2.php.net/manual/en/types.comparisons.php Scroll down to the table "Loose comparisons with ==".
22:27
<@ErikMesoy>
Pay special attention to the various comparisons involving 0, "0", empty string, false, and null. All sorts of nontransitive relations lurking here.
22:27
<@celticminstrel>
I'm guessing ths means it's not unique to PHP, then.
22:30
<&ToxicFrog>
There are probably other languages that feature it, yes, although I can't think of any offhand.
22:31
<&ToxicFrog>
I'm pretty confident saying that PHP is the most widely used language featuring non-transitive equality, though.
22:31
<&ToxicFrog>
(I'm also not sure what in this conversation led you to make that guess)
22:31
<@celticminstrel>
I can't spot any on that table though.
22:33
<&ToxicFrog>
celticminstrel: you can't? For example, 0 == NULL == "", and "0" == 0, but "0" is not equal to either NULL or "".
22:34
<@celticminstrel>
Well, I gave up pretty quickly. It's not a format conducive to easily spotting them. :/
22:34
<&ToxicFrog>
There are some other funtimes like == implicitly coercing strings to numbers.
22:35
<@celticminstrel>
And these semantics also make me think of JavaScript, though I think it's a bit different and I'm not sure if it's actually nontransitive.
22:37
<@ErikMesoy>
Perhaps it makes more sense to think of PHP's == operator to mean resemblance. Resemblance is not necessarily transitive - I can look like my dad, and he can look like his dad, without me looking much like my grandad.
22:37
<&ToxicFrog>
Anyways. This is just one example; my broader point is that PHP is a goddamn minefield.
22:38
<&jeroud>
Yeah, PHP is pretty horrible like that.
22:38
<&jeroud>
It's made entirely out of special cases.
22:40
<&jeroud>
(Literally. The implementation is full of copy/paste code where some copies have had bugs fixed and others haven't.)
22:41
<@celticminstrel>
...uh. Have they never heard of functions. :|
22:42
<@Alek>
obviously not :P
22:42
<&jeroud>
celticminstrel: To be fair, some of this stuff isn't trivial to generalise.
22:42
<&jeroud>
But that's a really poor excuse.
22:43
<&ToxicFrog>
celticminstrel: the (in)famous fractal article describes PHP as "the blind leading the blind" and that's a pretty accurate description from what I've seen of both the language and the people working on it
22:43
<@celticminstrel>
Fractal?
22:43
<&ToxicFrog>
(he surmises that this is because PHP developers, upon attaining some degree of experience and competence, immediately jump ship to other programming languages)
22:44
<&ToxicFrog>
"PHP: A Fractal of Bad Design"
22:44
<&ToxicFrog>
http://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/
22:44
<@Reiv>
ToxicFrog: So PHP is only developed by people who don't pay enough attention to other languages?
22:44
<&ToxicFrog>
Reiv: if you have a better theory, I'm all ears~
22:44
<@celticminstrel>
Or too much attention.
22:44
<@Reiv>
celticminstrel: Too much attention to other languages feature blogs, maybe
22:45
<@celticminstrel>
Yeah that.
22:45
<@Reiv>
"Ooh, that function looks really cool, let's chuck it into PHP too so we've got feature parity!"
22:46
<@ErikMesoy>
Also someone made a PHP double-clawed hammer for kicks. http://blog.codinghorror.com/content/images/uploads/2012/06/6a0120a85dcdae970b01 7742d249d5970d-800wi.jpg
22:46
<&ToxicFrog>
Possibly the answer is "too much attention to feature lists and too little attention to the actual design or implementation of those features"
22:47
<&jeroud>
This is a language where obvious bugs remain unfixed because "backwards compatibility", but every point release breaks things.
22:49
<@ErikMesoy>
Second to the fractal article is perhaps the carpentry comparison: http://weblogs.asp.net/alex_papadimoulis/408925 "A client has asked me to build and install a custom shelving system. I'm at the point where I need to nail it, but I'm not sure what to use to pound the nails in. Should I use an old shoe or a glass bottle?"
22:54
<&ToxicFrog>
ErikMesoy: he's right, but he's also an asshole about it.
22:57 Kindamoody|autojoin is now known as Kindamoody
22:57
<&ToxicFrog>
Reiv: the choice in what features to appropriate is also kind of disconcerting, e.g. PHP's error handling largely consists of ON ERROR RESUME NEXT turned up to 11
22:58
<&ToxicFrog>
Or perhaps "11whatthefuckareyoudoing", the two are == in PHP.
22:59 Turaiel [Brandon@Nightstar-8lr.ml4.192.12.IP] has quit [Ping timeout: 121 seconds]
23:00 Turaiel [Brandon@Nightstar-8lr.ml4.192.12.IP] has joined #code
23:03 Reiv_ [NSwebIRC@Nightstar-q8avec.kinect.net.nz] has joined #code
23:03 Reiv [NSwebIRC@Nightstar-q8avec.kinect.net.nz] has quit [Ping timeout: 121 seconds]
23:07 Reiv_ [NSwebIRC@Nightstar-q8avec.kinect.net.nz] has quit [Ping timeout: 121 seconds]
23:11 Kindamoody is now known as Kindamoody[zZz]
23:14 Reiv [NSwebIRC@Nightstar-q8avec.kinect.net.nz] has joined #code
23:14 mode/#code [+o Reiv] by ChanServ
23:14
<@celticminstrel>
I don't quite get the ?: example.
23:19
<&ToxicFrog>
celticminstrel: in C (and most -- all? -- other languages that have ?:), it's right-associative; foo ? x : bar ? y : z is eqv to (foo ? x : (bar ? y : z))
23:20
<&ToxicFrog>
In other words, if (foo) { x } else { if (bar) { y } else { z } }
23:20
<@celticminstrel>
So left associative means... (foo ? x : bar) ? y : z?
23:20
<&ToxicFrog>
In PHP, it's left-associative, so that becomes (foo ? x : bar) ? y : z
23:20
<@celticminstrel>
...okay then.
23:21
<&ToxicFrog>
It's really common to use ?: as a sort of neutered cond, which is what the "vehicle" example on that page looks like
23:21
<&ToxicFrog>
And in not-PHP, arg == 'T', so it would print 'train'
23:21 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code
23:21 mode/#code [+qo Vornicus Vornicus] by ChanServ
23:22 * celticminstrel pastes the code into the JS console, gets "train" as the output.
23:22
<&ToxicFrog>
You'd get the same thing in C, or in Lua (replacing ? and : with and and or)
23:23
< catalyst>
Lua's logic for that can occasionally end badly for you
23:23
<&ToxicFrog>
But in PHP, it's left-associative, so you end up with (...a bunch of ?: clauses that, ultimately, evaluate to true) ? 'horse' : 'feet'
23:23
<&ToxicFrog>
Boom, horse.
23:25
<&ToxicFrog>
catalyst: as in, (true and false or 1) is 1, while it would be false in, say, C?
23:25
<&ToxicFrog>
Yeah, it requires a bit more care than "true" ?:. But it's still convenient.
23:26
< catalyst>
I've been caught out in commercial products with that before :)
23:27 * ToxicFrog nods
23:27
<&ToxicFrog>
My typical use for it is "x = x or default_value", where x is some function argument where treating nil and false as eqv is a non-issue
23:29
<@celticminstrel>
PHP has closures?
23:31 Meatyhandbag [sebastianfe@Nightstar-v3t.j75.73.97.IP] has quit [Ping timeout: 121 seconds]
23:32
<&ToxicFrog>
celticminstrel: I've never used them, but apparently
23:33
<&ToxicFrog>
catalyst: lua has its share of warts, but it's one of my favourite languages and probably what I'm going to write DredmorRL in, if I ever get around to writing it.
23:33
<@celticminstrel>
C++ also requires you to explicitly name the variables, sort of.
23:33
<&ToxicFrog>
...C++ has closures?
23:33
<@celticminstrel>
But you can also just tell it to use all variables.
23:33
<@celticminstrel>
Yes, since C++11.
23:33
< catalyst>
Lua has a lot of very nice characteristics
23:34
< catalyst>
C++ has remarkably handy closures
23:34 Meatyhandbag [sebastianfe@Nightstar-v3t.j75.73.97.IP] has joined #code
23:34
<&ToxicFrog>
I know C++11 introduced anonymous functions, I didn't realize it introduced closures too.
23:34
<@celticminstrel>
Eh?
23:34
< catalyst>
aye, they're closures that can optionally take values or references
23:34
<@celticminstrel>
That's the same thing, right?
23:34
<&ToxicFrog>
.....noooooo
23:34
<@celticminstrel>
At least, in C++.
23:34
<@celticminstrel>
Same syntax, I mean.
23:34
< catalyst>
they basically let you elide most of the syntax in functors
23:34
< catalyst>
int a; [a]{ return a+1; } // By value
23:35
<@celticminstrel>
Like an anonymous function starts with [] and a closure starts with [stuff].
23:35
< catalyst>
int a; [&a]{ a++; return a; } // By reference
23:35
<&ToxicFrog>
celticminstrel: I thought the [stuff] were arguments?
23:35
<@celticminstrel>
No, the [] gives the contents of the closure.
23:35
<&ToxicFrog>
(disclaimer: I have not used most C++11 functions, including this one)
23:35
< catalyst>
[captured variables](args){body}
23:35
<&ToxicFrog>
Aah.
23:35
<@celticminstrel>
Arguments are in parentheses.
23:35
< catalyst>
[captured variables](args) -> returntype {body}
23:36
< catalyst>
you can elide the args and the return type
23:36
<@ErikMesoy>
DredmorRL?
23:36
<@celticminstrel>
Eh? Elide the args? ...oh, if it's a no-args function?
23:36
< catalyst>
yeah
23:36
< catalyst>
[]{};
23:36
< catalyst>
is a valid line of C++
23:36
< catalyst>
xD
23:36
<@ErikMesoy>
(I know of Dungeons Of Dredmor and KeeperRL. Hated the former with a passion. Latter seemed like a great idea but I couldn't get the hang of good base building.)
23:36
< catalyst>
[]{[]{[]{[]{[]{[]{[]{[]{[]{}();}();}();}();}();}();}();}();}();
23:37
< catalyst>
is a no-op
23:37
< catalyst>
:D
23:37
<&ToxicFrog>
ErikMesoy: I have a design for a "demake" of Dredmor, using the tty and completely overhauling inventory and crafting while keeping the skill system and most of level generation.
23:38
<@ErikMesoy>
Good. Reverting to teletype sounds like a great thing for Dredmor to do.
23:38 * ErikMesoy still remembers that the turn-based Dredmor managed to OVERHEAT HIS LAPTOP WHILE MINIMIZED.
23:38
<&ToxicFrog>
Honestly I think it would work just as well in tiles, I'm just lazy.
23:39
<@ErikMesoy>
I expect anything running in tty wouldn't do this.
23:41
<&ToxicFrog>
If that's the bug I'm thinking of, it was caused by dredmor assuming that vsync is on and relying on the GPU to limit the framerate
23:41
<&ToxicFrog>
Which, if it's off, means it ends up running a billion frames per second
23:41
<&ToxicFrog>
It was fixed a long time ago with the addition of a built-in frame limiter, IIRC.
23:50
<&ToxicFrog>
Anyways. My gripes with Dredmor have nothing to do with the framerate and everything to do with the fact that the shops and crafting system encourage you to hoover up every random piece of crap in the dungeon, while the inventory UI is hopelessly inadequate.
23:51
<@ErikMesoy>
That was one of mine too!
23:51
<&ToxicFrog>
The skill system, on the other hand, is really need and not something I've seen in any other roguelike.
23:51
<&ToxicFrog>
*really neat.
23:51
<@ErikMesoy>
Also poor collision detection.
23:51
<&ToxicFrog>
So my plan is basically to completely redesign how the inventory, crafting, fisking, and the pocket dimension work, while porting the skill trees across unchanged.
23:52
<@ErikMesoy>
I'd have a couple of monsters chase me to a chokepoint, attempt to stab adjacent monster, instead walk into monster's tile. Monster and its neighbors all get free hits. Walk back to previous tile. Monster gets another free hit. Resume stabbing.
23:52
<&ToxicFrog>
(mostly unchanged. Smithing, Wandcrafting, and Alchemy are due for some violence)
23:52
<&ToxicFrog>
That is 100% a bug but also one I have never, ever seen in person, and if you could consistently repro it I sure hope you filed a bug report with saves and logs
23:53
<&ToxicFrog>
Because it happens unbelievably rarely and last I heard Gaslamp had basically given up on tracking it down
23:53
<@ErikMesoy>
I could not get it to consistently happen in any given situation, but I did have it happen to me enough times that I mentally filed it under "recurring nuisance about game" rather than "one-off random crap, must have been a cosmic ray".
23:54
<@celticminstrel>
Uh. Someone clearly doesn't know C, https://bugs.php.net/bug.php?id=13756
23:54
<&ToxicFrog>
It happened to my wife once in 350 hours of Dredmor, so
23:56
<@ErikMesoy>
Also maybe you can put in either an actual identify system, or make the descriptions of items more clear
23:56
<&ToxicFrog>
...everything is pre-identified, I'm not sure what "an actual identify system" would add
23:56
<@ErikMesoy>
One that turns cryptic descriptions into full honest descriptions
23:57
<@ErikMesoy>
They're not *fully* identified in Dredmor, as I learned the hard way when reading a scroll whose description gave me no clue that it would damage and piss off the nearby shopkeeper
23:57
<@ErikMesoy>
("warning: this will piss off a shopkeeper" and such sanity checks might also be nice)
23:57
<&ToxicFrog>
...dredmor doesn't have scrolls
23:58
<@ErikMesoy>
Scroll-alike. I don't remember all the INCREDIBLY HILARIOUS REINVENTIONS of everything it had.
23:58
<&ToxicFrog>
It doesn't have anything remotely like scrolls.
23:59
<@ErikMesoy>
It has magical consumables.
23:59
<&ToxicFrog>
I guess you could argue that mushrooms are "like scrolls", but they're equally like potions which dredmor actually has
23:59 * ErikMesoy goes browse item list
--- Log closed Tue Jul 07 00:00:13 2015
code logs -> 2015 -> Mon, 06 Jul 2015< code.20150705.log - code.20150707.log >

[ Latest log file ]