code logs -> 2014 -> Sat, 11 Oct 2014< code.20141010.log - code.20141012.log >
--- Log opened Sat Oct 11 00:00:36 2014
00:03 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code
00:03 mode/#code [+qo Vornicus Vornicus] by ChanServ
00:06 Derakon[AFK] is now known as Derakon
00:23 thalass [thalass@Nightstar-sbrrj9.bigpond.net.au] has joined #code
00:23 mode/#code [+o thalass] by ChanServ
01:38 himi [fow035@Nightstar-v37cpe.internode.on.net] has quit [Connection closed]
01:40 himi [fow035@Nightstar-v37cpe.internode.on.net] has joined #code
01:40 mode/#code [+o himi] by ChanServ
01:42 thalass [thalass@Nightstar-sbrrj9.bigpond.net.au] has quit [Ping timeout: 121 seconds]
04:18 thalass [thalass@Nightstar-sbrrj9.bigpond.net.au] has joined #code
04:18 mode/#code [+o thalass] by ChanServ
05:24 VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has quit [[NS] Quit: Program Shutting down]
06:09 Kindamoody[zZz] is now known as Kindamoody
06:12 Kindamoody [Kindamoody@Nightstar-180u8i.tbcn.telia.com] has quit [Connection closed]
06:12 Kindamoody|autojoin [Kindamoody@Nightstar-180u8i.tbcn.telia.com] has joined #code
06:12 mode/#code [+o Kindamoody|autojoin] by ChanServ
06:13 Kindamoody|autojoin is now known as Kindamoody
06:19 macdjord [macdjord@Nightstar-c0i1dq.cable.rogers.com] has joined #code
06:19 mode/#code [+o macdjord] by ChanServ
06:27 Harlow [harlow@Nightstar-04f.4po.201.71.IP] has joined #code
06:29 Checkmate [Z@Nightstar-g2q2tu.customer.tdc.net] has quit [Ping timeout: 121 seconds]
06:37 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving]
07:01 Kindamoody is now known as Kindamoody|afk
07:11 celticminstrel [celticminst@Nightstar-erk7nd.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
07:12 [R] [rstamer@genoce.org] has quit [[NS] Quit: No Ping reply in 180 seconds.]
07:12 [R] [rstamer@Nightstar-d7h8ki.org] has joined #code
07:52 Netsplit *.net <-> *.split quits: Xon, @Namegduf, Harlow, grindhold, @McMartin, Syka, [R], @ToxicFrog, jerith, Turaiel
07:54 Netsplit over, joins: Syka
07:57 Harlow [harlow@Nightstar-04f.4po.201.71.IP] has joined #code
07:57 Namegduf [namegduf@Nightstar-rjh.rpa.226.188.IP] has joined #code
07:57 grindhold [quassel@Nightstar-uufabm.zebra.fastwebserver.de] has joined #code
07:57 [R] [rstamer@genoce.org] has joined #code
07:57 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code
07:57 jerith [jerith@Nightstar-ip7ar2.slipgate.net] has joined #code
07:57 Turaiel [Brandon@Nightstar-vku52k.resnet.mtu.edu] has joined #code
07:57 McMartin [mcmartin@Nightstar-rpcdbf.sntcca.sbcglobal.net] has joined #code
07:57 ServerMode/#code [+oaoaoao Namegduf ToxicFrog ToxicFrog jerith jerith McMartin McMartin] by *.Nightstar.Net
07:58 Xon [Xon@Nightstar-j72.ku7.252.119.IP] has joined #code
08:29 Harlow [harlow@Nightstar-04f.4po.201.71.IP] has quit [[NS] Quit: BED]
08:42 macdjord is now known as macdjord|slep
09:36 Checkmate [Z@Nightstar-484uip.cust.comxnet.dk] has joined #code
09:36 mode/#code [+o Checkmate] by ChanServ
09:38 Red_Queen [Z@Nightstar-484uip.cust.comxnet.dk] has joined #code
09:38 mode/#code [+o Red_Queen] by ChanServ
09:40 Checkmate [Z@Nightstar-484uip.cust.comxnet.dk] has quit [Ping timeout: 121 seconds]
11:28 Red_Queen [Z@Nightstar-484uip.cust.comxnet.dk] has quit [Ping timeout: 121 seconds]
12:04 VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has joined #code
13:52 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: ZNC - http://znc.in]
13:55 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code
13:55 mode/#code [+ao ToxicFrog ToxicFrog] by ChanServ
14:42 Syka [the@Nightstar-c409v3.vividwireless.net.au] has quit [Connection reset by peer]
14:43 Syka [the@Nightstar-c409v3.vividwireless.net.au] has joined #code
15:12 thalass [thalass@Nightstar-sbrrj9.bigpond.net.au] has quit [Ping timeout: 121 seconds]
16:11
<&ToxicFrog>
Hmm.
16:12
<&ToxicFrog>
So, for a given proxied connection, I have three threads, the client thread, server thread, and proxy thread.
16:12
<&ToxicFrog>
The client and server threads are associated with the corresponding sockets. They sit in a loop reading lines from the socket and putting them on a channel.
16:13
<&ToxicFrog>
The proxy thread sits in a loop reading lines from the channel and processing them. Based on that processing, it may write to one or both of the sockets.
16:13
<&ToxicFrog>
The proxy thread is also responsible for managing the proxy state and serializing all updates to it.
16:13
<&ToxicFrog>
This all works fine.
16:13
<&ToxicFrog>
However! I want some error handling.
16:14 macdjord|slep is now known as macdjord
16:14
<&ToxicFrog>
Specifically, if either socket is closed, or if an exception is raised when reading or writing on a socket, I need to close both sockets and shut down all three threads.
16:18
<&ToxicFrog>
The current approach I have feels kind of messy and I'm wondering if there's a better way.
16:18
<&ToxicFrog>
Specifically, if either socket reader has a problem, write :close to the channel and then exit.
16:19
<&ToxicFrog>
If the proxy thread has a problem, close! the channel, drain it, and .close both sockets.
16:19
<&ToxicFrog>
If the proxy thread reads :close from the channel, likewise.
16:24
<&ToxicFrog>
So, this should mean, if I understand how it all hooks together:
16:24
<&ToxicFrog>
- proxy thread encounters problem: close both sockets and channel. client/server thread reads return nil from the now-closed sockets, write :close to channel (a no-op since the channel is closed) and exit.
16:25
<&ToxicFrog>
- socket thread encounters problem: write :close to channel; proxy thread now closes sockets and events proceed as above except that one of the threads has already exited.
17:40 celticminstrel [celticminst@Nightstar-erk7nd.dsl.bell.ca] has joined #code
17:40 mode/#code [+o celticminstrel] by ChanServ
18:15 Checkmate [Z@Nightstar-484uip.cust.comxnet.dk] has joined #code
18:15 mode/#code [+o Checkmate] by ChanServ
18:16 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code
18:16 mode/#code [+qo Vornicus Vornicus] by ChanServ
18:58 Kindamoody|afk is now known as Kindamoody
19:08 Kindamoody is now known as Kindamoody[zZz]
19:13 himi [fow035@Nightstar-v37cpe.internode.on.net] has quit [Ping timeout: 121 seconds]
19:48
< Turaiel>
Anyone know how to make let non-persistent in Racket?
20:59
<&ToxicFrog>
Hmm.
20:59
<&ToxicFrog>
I need a way for a mog to signal that the user it's handling should be disconnected.
21:12 Checkmate [Z@Nightstar-484uip.cust.comxnet.dk] has quit [Ping timeout: 121 seconds]
21:19 * TheWatcher eyes himself
21:19
<@TheWatcher>
I appear to have gone insane
21:19
<@TheWatcher>
I'm actually considering firing up a 68k disassembler to try and reverse engineer the map format for this old Amiga game, because I am insane.
21:25
<@Tamber>
...it's taken you this long to realise?
21:26
<&ToxicFrog>
That sounds totally reasonable to me.
21:27
<&jerith>
TheWatcher: A much saner plan would be to trick McMartin into doing it for you.
21:27
<&jerith>
Although then you'd probably need a 6502 disassembler.~
21:28
<@Tamber>
:)
22:23 Checkmate [Z@Nightstar-g2q2tu.customer.tdc.net] has joined #code
22:23 mode/#code [+o Checkmate] by ChanServ
22:30 RchrdB [RichardB@Nightstar-v5j366.understood.systems] has quit [[NS] Quit: WeeChat 0.4.3]
22:31
<&ToxicFrog>
I have officially released ifirc: https://github.com/ToxicFrog/ifirc/releases/
22:31 RchrdB [RichardB@Nightstar-v5j366.understood.systems] has joined #code
22:41
< Julius>
What does it do?
22:43
<@Azash>
Takes IRC input and dd's it to the of
22:43
<@Tamber>
<<Runs a proxy that lets you connect to IFMUD using an IRC client.>>
22:48
<&ToxicFrog>
^ that
22:48
< Julius>
Is IFMUD like an actual MUD?
22:54
<&ToxicFrog>
...what do you mean by "an actual mud"?
22:55
<&ToxicFrog>
Like, does it run on a MUD engine and have rooms and objects and stuff? Yes.
22:55
<&ToxicFrog>
Does it have combat, a class/level system, quests? No.
22:56
< Julius>
"Will you get bored before you even start?" :V
22:57
<&McMartin>
Have you been trying grind #code for XP while we aren't looking?
22:57
< Julius>
get ye flask
22:57
<&ToxicFrog>
Julius: it's more of an IRC network with some extra features (like collaborative IF playing) implemented as a MUD than it is a game.
22:57
< Julius>
I see.
23:01 himi [fow035@Nightstar-v37cpe.internode.on.net] has joined #code
23:01 mode/#code [+o himi] by ChanServ
23:02
<&ToxicFrog>
You probably could repurpose this to connect to other MUDs. You'd likely to have to rewrite the entire transmogrification stack, though.
23:21
<@Azash>
http://existentialtype.wordpress.com/2011/03/15/boolean-blindness/
23:39 himi [fow035@Nightstar-v37cpe.internode.on.net] has quit [Ping timeout: 121 seconds]
23:39 * Alek perks up.
23:40
<@Alek>
actually, I could swear I've seen MUDs that used a connection protocol much like IRC, or provided IRClike clients.
23:40
<@Alek>
it's been forever, but that's the vague memory I get.
23:42 himi [fow035@Nightstar-v37cpe.internode.on.net] has joined #code
23:42 mode/#code [+o himi] by ChanServ
--- Log closed Sun Oct 12 00:00:52 2014
code logs -> 2014 -> Sat, 11 Oct 2014< code.20141010.log - code.20141012.log >

[ Latest log file ]