00:47:50 -!- Sgeo has joined.
00:48:09 -!- Arrogant has joined.
01:13:58 -!- Arrogant has quit (Read error: 113 (No route to host)).
01:25:22 -!- GregorR-W has changed nick to Grego.
01:25:42 -!- Grego has changed nick to GregorR-W.
01:26:17 -!- AndrewNP has joined.
01:32:35 -!- tgwizard has quit (Remote closed the connection).
02:04:39 -!- Arrogant has joined.
03:49:28 -!- AndrewNP has quit ("Arrivederci!").
03:54:07 -!- calamari has joined.
04:20:08 -!- CXI has joined.
04:37:54 -!- Sgeo has quit ("Ex-Chat").
05:14:00 -!- nickv111 has joined.
05:21:50 -!- pikhq has joined.
06:08:02 -!- calamari has quit ("Leaving").
06:23:24 -!- thematrixeatsyou has joined.
06:36:31 -!- thematrixeatsyou has quit (brown.freenode.net irc.freenode.net).
06:36:32 -!- lindi- has quit (brown.freenode.net irc.freenode.net).
06:36:33 -!- Arrogant has quit (brown.freenode.net irc.freenode.net).
06:36:33 -!- SimonRC has quit (brown.freenode.net irc.freenode.net).
06:36:33 -!- puzzlet has quit (brown.freenode.net irc.freenode.net).
06:36:33 -!- pgimeno has quit (brown.freenode.net irc.freenode.net).
06:36:33 -!- fizzie has quit (brown.freenode.net irc.freenode.net).
06:37:51 -!- thematrixeatsyou has joined.
06:37:51 -!- Arrogant has joined.
06:37:51 -!- puzzlet has joined.
06:37:51 -!- pgimeno has joined.
06:37:51 -!- lindi- has joined.
06:37:51 -!- SimonRC has joined.
06:37:51 -!- fizzie has joined.
06:51:24 -!- Arrogant has quit ("Leaving").
07:39:37 -!- thematrixeatsyou has quit ("leavin").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:01:23 -!- GregorR-W has quit (Remote closed the connection).
08:02:14 -!- GregorR-W has joined.
10:25:42 -!- ionel_mc has quit (Read error: 104 (Connection reset by peer)).
11:54:18 -!- tgwizard has joined.
13:07:19 -!- jix has joined.
15:06:31 -!- calamari has joined.
15:15:11 -!- calamari has quit ("Leaving").
15:38:06 -!- kipple has joined.
16:42:27 -!- pikhq has left (?).
16:52:02 -!- pikhq has joined.
17:50:12 -!- ihope_ has joined.
18:06:58 -!- tgwizard has quit (Remote closed the connection).
18:15:36 * pikhq is probably guilty of spending way too much time on esoteric languages. . .
18:35:14 * ihope_ is definitely guilty of not spending enough time on esoteric languages
18:45:58 * lament is guilty of murdering a bunch of people
18:46:48 <pikhq> I'm only guilty of spending my summer programming when my peers are being lazy.
18:47:08 <pikhq> Being 16, sitting inside and coding all summer is considered abnormal behavior. ;)
18:47:12 <lament> i'm guilty of spending my summer being lazy when my co-workers are programming.
18:49:50 <pikhq> This summer, I have so far designed a new (miniscule) processor architecture, written an emulator for it, and came up with an optimising Brainfuck compiler in Brainfuck.
18:56:38 <pikhq> Just what happens when you get someone who thinks of programming as entertainment. ;)
19:08:56 <lament> don't worry, it'll pass
19:09:19 <pikhq> By which time, my brain will be permanently fucked. :p
19:35:50 <jix> coding for money isn't as much fun as coding for fun....
19:37:18 <jix> but coding for fun doesn't get you a new computer... coding for money does :)
19:37:45 <pikhq> I'm 16. Don't need to worry about that quite yet ;)
19:38:08 <jix> and i have to buy my computers myself... so i have to earn some money....
19:38:37 <jix> well that explains the W in your nick
19:39:06 <jix> today i had to fix a design to work with IE... that sucks....
19:39:48 <lament> Coding for fun isn't as much money as coding for money
19:40:05 <jix> well was a simple design... took only one hour....
19:41:06 <fizzie> Today (at work) I had to use Windows' Shell Scripting Objects, because the only way to automagically (read: no user action involved) move data to/from a phone was to use Nokia's "Phone Browser" shell-extension-thing, and boy was that painful. Among the highlights were the fact that copying single files only works from computer to phone, not the other way around, while copying complete directories work both ways.
19:42:00 <pikhq> Sounds like Windows' Shell Scripting Objects is a very esoteric language. ;p
19:42:50 <fizzie> I guess it would've been better if I were doing it just for fun, and not because I had to.
19:43:32 <fizzie> (I'm 23, and my primary computing device seems to have a broken motherboard and/or CPU, which means I probably need to waste money on a new one, since the non-primary computing devices here are somewhat... less impressive.)
19:44:52 <jix> i just bought a new computer....
19:45:11 <pikhq> My primary computing device is composed of various christmas and birthday gifts.
19:45:33 <lament> my primary computing device is a slide rule
19:45:53 <pikhq> My non-primary computing devices are from people tossing out theirs primary computring devices. ;)
19:45:56 <jix> pikhq: my is compesd of christmas and birthday and 75hours of work
19:46:49 <pgimeno> fizzie: shell scripting objects? are they related to .scf files?
19:48:10 <fizzie> I mean these: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/shell/reference/objects/objects.asp
19:48:21 <fizzie> "Shell Objects for Scripting and Microsoft Visual Basic" seems to be the official title.
19:48:54 * ihope_ writes Quantum Brainfuck
19:49:15 <lament> ihope_: we need more quantum programming esolangs
19:49:20 * pikhq proves that basm knows that 1 + 1 = 2
19:49:20 <lament> (i'm not aware of any myself)
19:49:32 <ihope_> Yeah, I don't think we have any.
19:49:36 <lament> ihope_: i wanted to write one for a long time, but could never think of anything good esolangish
19:49:58 <fizzie> (The thing I was writing is a Perl script, so I can only (easily) use those scripting objects via Win32::OLE; and my guess is the "more native" SH* functions wouldn't really work any better, and that would mean writing a Perl XS extension, which didn't seem like much fun at all.)
19:50:08 <pikhq> Wow. basm is friggin' huge. . .
19:50:20 <pikhq> According to wc, it's 24852 Brainfuck operations.
19:51:23 <pikhq> ./basm < basm.bf >| basm.c 11.73s user 0.05s system 98% cpu 11.948 total
19:52:45 <pikhq> And stripping all comments makes it smaller by a few seconds. . .
19:53:04 <pikhq> s/small/fast/ s/seconds/microseconds/ x_x
19:54:01 <lindi-> fizzie: how about just reverse engineering the protocol between pc and phone? ;)
19:55:36 <ihope_> Does measuring a qubit do what I think it does?
19:56:55 <ihope_> Like, if I had |xy> and I measured x to be zero, would the amplitudes of |10> and |11> be zeroed and the others normalized?
19:57:40 <lament> ihope_: mmmmmmmmmmmmmmmmm
19:57:54 <lament> ihope_: i'm not sure about the latter
19:58:06 <fizzie> lindi; Actually the phone has three modes: one in which it pretends to be an USB mass storage device, another where it pretends to be a music player and this third "PC Suite" mode where it speaks some proprietary thing.
19:58:08 <lament> the former is definitely true
19:58:57 <fizzie> Well, yes, it's an USB cable we're talking about. Bluetooth isn't really good for moving multiple megabytes, and it has no other connectivity options.
19:59:03 <ihope_> Oh, I'll assume it's true.
19:59:32 <lindi-> fizzie: that should be easy then :) if you have time get usbsnoop 1.8 from http://benoit.papillault.free.fr/usbsnoop/ and record the traffic it generates when you fetch a single file
19:59:53 <lindi-> fizzie: then you can use http://iki.fi/lindi/usbsnoop2libusb.pl to generate a C program that reproduces the traffic under linux
20:00:15 <fizzie> The end result needs to work on Windows. :p
20:00:28 <lindi-> fizzie: libusb works on windows, linux, *bsd and solaris
20:00:55 <fizzie> With the first two modes it'd be relatively easy to move data to/from the memory card in the phone, but in those modes the memory card isn't usable from software running on the phone, so it needs to be the silly PC Suite mode.
20:01:19 <fizzie> I'm also not sure I want to reverse-engineer it. Perhaps I could find some documentation about it.
20:01:30 <lindi-> fizzie: also, somebody else might want to use this functionality even if you can't use it in your work project
20:01:51 <lindi-> "fetch single file" should be reasonably simple to reproduce
20:02:01 <lindi-> unless there is some funny challenge response stuff
20:02:16 <fizzie> I only have access to the phone at work, and I can't really use work-time for reverse-engineering proprietary Nokia protocols.
20:02:21 <fizzie> (Especially considering I work for them.)
20:04:14 <fizzie> Still, I have a "working" (for some values of "working") solution right now, so I'm not sure it'd be very useful to try to write my own driver to talk to the phone. (And if I were to use any internal documentation to figure out the format, I obviously couldn't then release it.)
20:04:26 <fizzie> Someone else might have reverse-engineered it already, though; haven't checked.
20:05:15 <lament> i applied to nokia once and they didn't accept me :(
20:06:06 <lindi-> fizzie: you could just run "usbsnoop" once and send the log file to me
20:07:25 <fizzie> I'm pretty sure I coudln't.
20:08:26 -!- Sgeo has joined.
20:09:16 <fizzie> Anything I do that's related to the silly prototype phone is probably automagically under the NDA I signed when starting there.
20:17:41 <fizzie> Actually some googling would seem to show that there's a chance the USB protocol is relatively unweird: it might pretend to be just an "USB Serial" device, and talk OBEX over it. (OpenOBEX file-transfer-client reportedly works with a similar USB cable and a 6630 model phone.)
20:18:14 <lindi-> i never got this "usb-serial" kernel space driver work so i used libusb instead
21:53:39 <ihope_> Well, it's at http://esoteric.voxelperfect.net/wiki/Quantum_Brainfuck.
21:55:04 <lament> it's just brainfuck with extra features nobody's going to use :)
21:55:14 <lament> a real quantum esolang should have qubits as the basic type
21:55:38 <lament> or at least force you into using them somehow
21:58:28 <ihope_> I guess it'd work. You could use a qubit as a normal bit by using Hadamard twice and observing.
21:58:52 <lament> so using that, can you get rid of the Brainfuck tape?
21:59:37 <ihope_> Yeah, but you'd have to include a boolean variable to handle looping.
22:00:12 <ihope_> Using the current looping thing on qubits causes too much observation... then again, maybe not.
22:01:30 <lament> also, are you sure it's "quantum-complete"?
22:01:39 <lament> i.e. does it allow all the necessary quantum operations?
22:02:28 <ihope_> If the Hadamard and CNOT are, then this is.
22:04:53 <lament> you might need to be able to operate on more than two qubits at a time
22:07:29 <lament> in fact i'm pretty sure you need to
22:08:16 <lament> http://en.wikipedia.org/wiki/Quantum_gate#Universal_quantum_gates
22:08:31 <ihope_> That says you only need to operate on two.
22:08:45 <ihope_> But it does seem to imply that Hadamard and CNOT aren't complete...
22:08:46 <lament> but you do need another operator
22:08:59 <lament> "A single-gate set of universal quantum gates can also be formulated using the three-qubit Deutsch gate, D(.)"
22:09:04 <lament> i think that one's the winner
22:09:07 <lament> since you only need one :)
22:09:24 <lament> and it looks ridiculously esoteric
22:09:54 <lament> it's D(theta), so you need to specify theta in the program itself
22:10:19 <ihope_> Maybe you still only need one, though...
22:10:27 <lament> it doesn't seem likely
22:10:41 <lament> note that "all classical logic is reducible to D(pi/2)"
22:10:51 <lament> but you need other values of theta for quantum stuff
22:11:52 <lament> and their three-gate solution is whacky, what the hell is cos^-1(3/5)
22:12:39 <lament> How do you determine which sets of gates are universal?
22:13:32 <lament> somebody on the discussion page also asked what the hell is 3/5
22:13:45 <lament> a year ago, and got no answer
22:15:27 <lament> clearly a better resource is needed :)
22:22:51 <lament> how do you set a cubit to 1?
22:25:11 <ihope_> I think you can NOT a qubit by applying Hadamard twice.
22:26:45 <ihope_> "However two [Hadamard] gates linked sequentially produce an output that is the inverse of the input, and thus behave in the same way as the classical NOT gate."
22:26:53 <ihope_> http://www.compsoc.nuigalway.ie/~damo642/QuantumSimulator/QuantumSimulator/WebsiteThesis/Qubits&QubitGates/Qubit%20Hadamard%20Gate.htm
22:29:36 <lament> so if you want to set a cubit to 0, you observe it and then optionally apply hadamard twice
22:30:25 <ihope_> Well, observing can also do other weird things, but... yeah.
22:33:11 <lament> i suppose the practical problem with using only qubits for all computation is that interpreting the language on a classical computer would be ridiculously expensive
22:33:32 <lament> but after Brainhype, that's nothing :)
22:34:29 <ihope_> Yep. Ridiculously expensive is better than impossible :-)
22:47:08 <lament> obviously hadamard and C-NOT is not enough.
22:47:32 <lament> when you only have hadamard and c-not, your qbits can only be in three states
22:47:45 <lament> 1, 0, and evenly split
22:47:55 <lament> c-not applied to evenly split is still evenly split
22:48:50 <lament> hadamard applied to evenly split is either 1 or 0 and you can tell which in advance if you know the history of this qbit
22:51:41 <lament> what happens if c-not is applied to two evenly split qubits?
22:56:53 <ihope_> Hadamard is 0 -> + -> 1 -> - -> 0.
22:58:30 <lament> ihope_: there's still a bit of quantum magic going on
22:59:38 <lament> ihope_: i.e. there's still entanglement
22:59:51 <lament> +,+ can be two separate things, or they can be entangled
23:00:03 -!- kipple has quit (Read error: 145 (Connection timed out)).
23:00:11 <ihope_> Yep. Lemme try to entangle two of those...
23:00:43 <ihope_> That'll entangle |00> and |11>.
23:01:08 <ihope_> I have a simulator here, so of course I'm correct :-)
23:01:40 <lament> the result of c-not(+,0) is +,+ (entangled)
23:02:09 <lament> try applying hadamard to the second +
23:02:48 <ihope_> No; it's an amplitude of 1/2 for all but |11>, which is -1/2.
23:03:07 <ihope_> That's an equal chance of everything.
23:03:42 <ihope_> Well, it's two unentangled +.
23:04:01 <lament> i mean the second qubit
23:04:17 <lament> assuming the first one is the control quibt
23:05:15 <lament> do c-not(+,0), then hadamard on the second qubit - what's the state of the second qubit now?
23:16:38 <lament> what was it before the hadamard?
23:17:03 <ihope_> Before the Hadamard, the second qubit was a |+> entangled with the first.
23:17:19 <ihope_> After the Hadamard, it's an unentangled one.
23:21:21 * ihope_ fills a circuit with random gates
23:25:29 * ihope_ realizes that this is 1024 complex numbers he just asked his simulator to deal with
23:27:33 <lament> how the hell did you get 1024?
23:28:39 <lament> ihope_: aha! http://www.cs.iastate.edu/~patterbj/cs/quantum/fp/univ.htm
23:39:40 <ihope_> Okay, this shouldn't be taking so long...
23:43:45 <ihope_> ...Hey, when'd Hadamard become its own inverse?
23:50:41 <lament> that does not sound right :)
23:51:27 <ihope_> The Hadamard being its own inverse, or its not being its own inverse?