00:49:54 <CakeProphet> I'm going to build a hybrid of Python and Lisp.
00:50:11 <CakeProphet> It'll basically look like Python with Lispisms and Lisp syntax.
00:51:28 <CakeProphet> (an.example of [some stuff for program in lisp-python-hybrid if (build-it True)])
00:54:08 -!- pikhq has joined.
00:59:13 -!- wooby has joined.
01:01:36 -!- digital_me_ has joined.
01:02:49 <oklopol> CakeProphet, i don't wanna be an ass but you typed necessary nessicary again :)
01:11:57 -!- digital_me has quit (Read error: 110 (Connection timed out)).
01:12:12 <andreou> aah... perl is broken on netbsd/macppc pkgsrc
01:12:48 <pikhq> Solution: don't use Perl, the only language where an unobfuscated coding contest is a challenge.
01:13:20 <pikhq> (Malbolge is excepted from that, on account of Malbolge not being an actual *language*)
01:14:05 <pikhq> Like a crack addict? :p
01:16:57 <pikhq> Solution: realise elinks > w3m. ;)
01:19:06 <andreou> i see elinks doesn't support inline images. i'm still going for links-gui and praying.
01:19:25 <andreou> (it seems unix turns one towards god)
01:19:48 <pikhq> That's because Unix is a diety unto itself.
01:20:15 <pikhq> Although it's but a servant of the Most High Editor. ;)
01:20:28 <pikhq> It's Chaotic Neutral, in D&D terms.
01:21:24 <andreou> i'm clueless about D&D, but i'm certain that an old-fashioned lovecraftian banishing would take care of the problematics raised. or an even more old-fashioned luddist reprogramming with an axe.
01:21:30 <andreou> still, i'm bound and attached.
01:22:45 <bsmntbombdood> ~exec exec "class foo:\n\tpass\nglobals()["foo"] = foo"
01:23:08 <bsmntbombdood> ~exec exec "class foo:\n\tpass\nglobals()["foo"] = foo" in globals()
01:23:26 <bsmntbombdood> ~exec exec "class foo:\n\tpass\nglobals()[\"foo\"] = foo" in globals()
01:24:31 <bsmntbombdood> ~exec self.foo.__class__.f = lambda self : bot.raw("PRIVMSG #esoteric :foo")
01:25:02 <bsmnt_bot> <bound method foo.<lambda> of <__main__.foo instance at 0xb7cc5f2c>>
01:25:52 -!- bsmnt_bot has quit.
01:25:55 -!- bsmnt_bot has joined.
01:27:14 -!- Sgeo has joined.
01:28:51 -!- andreou has changed nick to ka-pow.
01:29:00 -!- ka-pow has changed nick to andreou.
01:31:51 -!- digital_1e_ has joined.
01:39:54 -!- digital_me_ has quit (Read error: 110 (Connection timed out)).
01:49:27 -!- CakeProphet has quit (Read error: 131 (Connection reset by peer)).
01:49:52 -!- CakeProphet has joined.
01:51:18 <andreou> still drizzling, still compiling
01:54:25 <andreou> and it's four am, time to faint
01:54:32 -!- andreou has quit ("as if it vanished").
01:55:25 -!- CakeProphet_ has joined.
02:07:47 -!- CakeProphet_ has quit (Read error: 113 (No route to host)).
02:08:09 -!- CakeProphet_ has joined.
02:08:30 -!- CakeProphet has quit (No route to host).
02:08:45 -!- CakeProphet_ has changed nick to CakeProphet.
02:26:11 -!- calamari has joined.
02:33:59 -!- ihope__ has joined.
02:35:26 -!- ihope has quit (Nick collision from services.).
02:35:28 -!- ihope__ has changed nick to ihope.
02:35:39 -!- digital_1e_ has changed nick to digital_me.
03:11:46 -!- ihope has quit (Connection timed out).
03:24:34 -!- CakeProphet has quit (Read error: 113 (No route to host)).
03:24:55 -!- CakeProphet_ has joined.
03:25:02 -!- CakeProphet_ has changed nick to CakeProphet.
04:00:19 -!- digital_me has quit ("Lost terminal").
04:02:12 -!- digital_me has joined.
05:00:46 -!- Sgeo has quit ("Leaving").
05:14:49 -!- pikhq has quit ("leaving").
05:36:23 -!- digital_me has quit ("Lost terminal").
05:53:33 -!- calamari has quit ("Leaving").
06:23:39 -!- wooby has quit.
06:47:37 -!- ShadowHntr has quit (Read error: 110 (Connection timed out)).
07:55:23 -!- oklopol has quit (zelazny.freenode.net irc.freenode.net).
07:55:23 -!- bsmntbombdood has quit (zelazny.freenode.net irc.freenode.net).
07:55:23 -!- Sukoshi has quit (zelazny.freenode.net irc.freenode.net).
07:55:23 -!- puzzlet has quit (zelazny.freenode.net irc.freenode.net).
07:55:23 -!- sekhmet has quit (zelazny.freenode.net irc.freenode.net).
07:58:43 -!- oklopol has joined.
07:58:43 -!- bsmntbombdood has joined.
07:58:43 -!- Sukoshi has joined.
07:58:43 -!- puzzlet has joined.
07:58:43 -!- sekhmet has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
10:07:56 -!- oerjan has joined.
10:52:25 -!- oerjan has quit ("leaving").
13:30:42 -!- CakeProphet_ has joined.
13:31:48 -!- CakeProphet has quit (Read error: 113 (No route to host)).
13:31:52 -!- CakeProphet_ has changed nick to CakeProphet.
13:36:49 -!- tgwizard has joined.
13:46:45 -!- andreou has joined.
14:11:34 -!- oklofok has joined.
14:12:04 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
14:50:46 -!- Sgeo has joined.
14:55:29 -!- andr- has joined.
14:55:33 -!- andreou has left (?).
14:55:44 -!- andr- has changed nick to andreou.
15:01:46 -!- Sgeo has quit ("Leaving").
15:02:06 -!- Sgeo has joined.
15:12:45 -!- tgwizard has quit (Remote closed the connection).
15:20:49 -!- Rent-A-Tard has joined.
15:22:19 <Rent-A-Tard> Please write the lyrics of "John, I'm only dancing!"*
15:39:36 -!- jix has joined.
15:48:15 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
16:05:41 -!- oklofok has changed nick to oklopol.
16:28:55 -!- digital_me has joined.
16:35:03 -!- pikhq has joined.
16:53:37 <andreou> is there still a cat's eye or any other esolang-related website?
16:56:33 <oklopol> http://esolangs.org/wiki/Main_Page
17:15:48 -!- digital_me has quit ("Lost terminal").
17:19:16 <Rent-A-Tard> Please write the lyrics of "John, I'm only dancing!"*
17:19:27 <Rent-A-Tard> Why isn't this working? Please tell me why ;)
17:29:35 <pgimeno> maybe my last comment in http://esolangs.org/wiki/Talk:IRP should be taken into consideration
17:37:11 -!- EgoBot has quit (Excess Flood).
17:37:23 -!- EgoBot has joined.
17:39:20 <pikhq> Learning Brainfuck?
17:40:16 -!- ihope has joined.
17:40:48 <Rent-A-Tard> !bf ++++++++++++[>+++++++>+++++++++>+++>+++++++++<<<<-]>.>----.---.>----.>++++.<<----.>>+++..++++.--------.+++.<<+++.>[>>++>+<<<-]>>------.>.++.<<<<+.>>-----.++.>>.
17:41:16 -!- Rent-A-Tard has changed nick to Rent-A-WAY-Tard.
17:48:22 <ihope> There, think that'll stop the Talk:Piet-Q spambots?
17:50:42 <ihope> It's worth a shot, anyway.
17:57:24 * pikhq hugs BFM some more. . .
18:06:40 -!- andreou has quit ("BitchX-1.1-final 1996-2000 Colten Edwards").
18:10:20 -!- tgwizard has joined.
18:28:39 -!- calamari has joined.
18:48:49 -!- jix has joined.
18:54:17 * pikhq sees Calamari, the Squid Boy.
18:54:57 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
18:56:17 -!- andreou has joined.
18:57:10 -!- oerjan has joined.
19:28:42 -!- andreou has quit ("[BX] Reserve your copy of BitchX-1.1-final for the Nintendo 64 today!").
19:29:22 -!- jix__ has joined.
19:51:46 -!- andreou has joined.
20:00:26 -!- RodgerTheGreat has joined.
20:08:35 -!- jix__ has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
20:15:00 -!- jix__ has joined.
20:29:30 -!- Sph1nx has joined.
20:35:42 -!- Sph1nx has quit (" !").
21:00:08 -!- jix__ has quit (Read error: 110 (Connection timed out)).
21:04:21 -!- jix__ has joined.
21:35:50 -!- Rent-A-WAY-Tard has changed nick to Rent-A-Tard.
21:36:27 * oerjan scrapes something out of the garbage can.
21:40:54 <oerjan> No no, no blood, just entrails.
21:42:04 <oerjan> And _possibly some strange fungi.
21:43:10 <RodgerTheGreat> I could've sworn the fungus in the trash was gone- I saw a huge mound of slime mold crawl away a couple days ago.
21:43:44 <RodgerTheGreat> although I'm not entirely certain that should be reassuring.
21:45:52 <oerjan> I told it to find some other slime to hang out with.
21:47:18 <oerjan> No no, I saw it head towards the courthouse.
21:47:23 <bsmntbombdood> ~exec self.raw("PRIVMSG #esoteric :this is a boring saturday")
21:47:28 -!- digital_me has joined.
21:49:38 <andreou> EgoBot do you have a manual?
21:49:59 <EgoBot> help ps kill i eof flush show ls bf_txtgen usertrig daemon undaemon
21:50:01 <EgoBot> 1l 2l adjust axo bch bf{8,[16],32,64} funge93 fyb fybs glass glypho kipple lambda lazyk linguine malbolge pbrain qbf rail rhotor sadol sceql trigger udage01 unlambda whirl
21:50:41 <EgoBot> Use: help [command] Function: displays help on a command, or lists commands
21:50:53 <EgoBot> Use: bf_txtgen <text> Function: use textgen.java with 1000 generations to generate an efficient BrainFuck text generator.
21:51:08 <EgoBot> While parsing "./tmp/daemon.cat": Invalid character!
21:51:09 -!- EgoBot has quit (Read error: 104 (Connection reset by peer)).
21:51:19 -!- EgoBot has joined.
21:51:28 <andreou> you killed the bot, you bastard
21:51:40 <andreou> nah, it takes to to fake southpark
21:51:43 <bsmntbombdood> ~exec self.register_raw(r"\S+ PRIVMSG (\S+) :~help", lambda x, y: bot.raw("PRIVMSG %s :no one can help you" % y.group(1)))
21:52:00 <oerjan> We do that all the time. I guess we should name it Kenny.
21:52:45 <oerjan> I don't know why it didn't accept that lazyk program.
21:53:10 <EgoBot> Use: ps Function: display the current processes
21:53:26 <EgoBot> 66 +++++++++++++[>+++++++++>++++++++>><<<<-]>--.>.<----.+++.++.+++++. [810]
21:53:49 <oerjan> I see it doesn't mention the d option to ps.
21:54:18 <andreou> !bf_txtgen bereshith bara elohim eth ha-shamayim ve-eth ha-aretz
21:55:24 <oerjan> Well, you could use the limit in the original IRC RFC I guess:
21:55:51 <oerjan> Max 1 message every other second.
21:56:17 <EgoBot> 364 ++++++++++++++[>++++++++>+++++++>++++++++>++<<<<-]>>.+++.>++.<.<+++.>+++.>---------.<<+.>.>>++++.<-------.-.<<--.>>.>.<++++.<++++.+++.>+++.+.<--.>>.<<--------.<++.>+++.>>.<-.-------.>+++++++++++++.<<<-.>.>.<<------.>>.<<++++++++++++.>+.++++.>>-------------.<<<---.>>++++.>+++++++++++++.<.<+++++++.>+++.>-------------.<.-------.>+++++++++++++.<.<--.>++++.<++.<++++. [861]
21:56:35 <oerjan> But with a 10 second leeway.
21:56:36 <andreou> hell, i wish i had GPM so i could c&p the code
21:56:39 <bsmnt_bot> 0: 'sys.stderr(open("/bot/test.pickle").read())', 146.41 seconds
21:57:40 <bsmntbombdood> right now IRCFileWrapper does "if lines_sent > 3: time.sleep(lines_sent/10.)"
22:00:04 <bsmntbombdood> I'll change it to time.sleep(max([lines_sent/10., 2])
22:00:58 -!- EgoBot has quit (Excess Flood).
22:01:13 -!- EgoBot has joined.
22:01:49 <bsmntbombdood> Rent-A-Tard: you can execute some python code with "~exec $code"
22:02:18 -!- EgoBot has quit (Excess Flood).
22:02:33 -!- EgoBot has joined.
22:03:10 -!- bsmnt_bot has quit (Excess Flood).
22:03:11 <oerjan> Note that the default bf is the 16-bit one, I believe.
22:03:39 <oerjan> !daemon cat lazyk -e i
22:03:42 -!- bsmnt_bot has joined.
22:03:42 <EgoBot> While parsing "./tmp/daemon.cat": Invalid character!
22:03:53 <andreou> goddamn, what the hell has bush to do with ecology and, more importantly, on my radio?
22:04:02 -!- bsmnt_bot has quit (Excess Flood).
22:04:04 -!- bsmnt_bot has joined.
22:04:09 <oerjan> Gah, just doesn't work.
22:04:14 <andreou> Rent-A-Tard comeon, stop it. it beeps every time i switch to this screen
22:04:22 -!- EgoBot has quit (Excess Flood).
22:04:33 -!- EgoBot has joined.
22:05:02 <oerjan> !cat Let's do it the usual way.
22:05:04 <Rent-A-Tard> !bf ++++++++++++[>+++++++>+++++++++>+++>+++++++++<<<<-]>.>----.---.>----.>++++.<<----.>>+++..++++.--------.+++.<<+++.>[>>++>+<<<-]>>------.>.++.<<<<+.>>-----.++.>>.
22:05:50 -!- bsmnt_bot has quit (Excess Flood).
22:05:52 -!- bsmnt_bot has joined.
22:07:20 <oerjan> You should also do a test with a sleep in it.
22:08:42 <oerjan> I don't know the Python syntax for sleep. Or the unit.
22:09:06 -!- bsmnt_bot has quit (Client Quit).
22:09:08 -!- bsmnt_bot has joined.
22:09:11 -!- bsmnt_bot has quit (Excess Flood).
22:09:13 -!- bsmnt_bot has joined.
22:10:14 <bsmntbombdood> ~exec for i in xrange(1000): sys.stderr("a\n" * i)
22:10:35 -!- ShadowHntr has joined.
22:11:35 <bsmntbombdood> ~exec for i in xrange(1000): sys.stderr(("%s\n" % i) * i)
22:12:42 <oerjan> The lazyk setup is broken.
22:14:07 <oerjan> My timing suggestion was to find out how quickly you can spam continuously :)
22:14:14 * pikhq recommends Rent-A-Tard play with BFM. . .
22:14:29 <pikhq> It's a very good method for making complex Brainfuck programs. ;)
22:14:42 <pikhq> http://pikhq.nonlogic.org/bfm.tar.bz2
22:14:49 <pikhq> (end shameless plug)
22:14:57 <calamari> oerjan: it's hard to know for sure.. sometimes messages get delayed then you get a flood
22:15:14 -!- bsmnt_bot has quit (Remote closed the connection).
22:15:17 -!- bsmnt_bot has joined.
22:15:54 <bsmntbombdood> ~exec for i in xrange(1000): self.raw("PRIVMSG #bsmnt_bot_errors :%s" % i )
22:15:55 -!- bsmnt_bot has quit (Excess Flood).
22:15:57 -!- bsmnt_bot has joined.
22:16:03 <bsmntbombdood> ~exec for i in xrange(1000): self.raw("PRIVMSG #bsmnt_bot_errors :%s" % i)
22:16:03 -!- bsmnt_bot has quit (Excess Flood).
22:16:06 -!- bsmnt_bot has joined.
22:16:28 <bsmntbombdood> ~exec for i in xrange(1000): time.sleep(.1); self.raw("PRIVMSG #bsmnt_bot_errors :%s" % i)
22:16:35 -!- bsmnt_bot has quit (Excess Flood).
22:16:37 -!- bsmnt_bot has joined.
22:16:45 <bsmntbombdood> ~exec for i in xrange(1000): time.sleep(.2); self.raw("PRIVMSG #bsmnt_bot_errors :%s" % i)
22:16:57 -!- bsmnt_bot has quit (Excess Flood).
22:17:00 -!- bsmnt_bot has joined.
22:17:04 <bsmntbombdood> ~exec for i in xrange(1000): time.sleep(.3); self.raw("PRIVMSG #bsmnt_bot_errors :%s" % i)
22:17:24 -!- bsmnt_bot has quit (Excess Flood).
22:17:26 -!- bsmnt_bot has joined.
22:17:37 <bsmntbombdood> ~exec for i in xrange(1000): time.sleep(.4); self.raw("PRIVMSG #bsmnt_bot_errors :%s" % i)
22:18:05 -!- bsmnt_bot has quit (Excess Flood).
22:18:08 -!- bsmnt_bot has joined.
22:18:31 <bsmntbombdood> aaw, it was looking like a nice additive sequence there
22:18:37 <bsmntbombdood> ~exec for i in xrange(1000): time.sleep(.5); self.raw("PRIVMSG #bsmnt_bot_errors :%s" % i)
22:19:05 <oerjan> Well it shouldn't be, after all _some_ sleep should allow it to continue indefinitely.
22:19:14 -!- bsmnt_bot has quit (Excess Flood).
22:19:17 -!- bsmnt_bot has joined.
22:19:29 <bsmntbombdood> ~exec for i in xrange(1000): time.sleep(.7); self.raw("PRIVMSG #bsmnt_bot_errors :%s" % i)
22:20:28 -!- bsmnt_bot has quit (Excess Flood).
22:20:30 -!- bsmnt_bot has joined.
22:20:38 <bsmntbombdood> ~exec for i in xrange(1000): time.sleep(.9); self.raw("PRIVMSG #bsmnt_bot_errors :%s" % i)
22:22:07 -!- bsmnt_bot has quit (Excess Flood).
22:22:10 -!- bsmnt_bot has joined.
22:22:12 -!- jix__ has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
22:22:26 <bsmntbombdood> ~exec for i in xrange(1000): time.sleep(1.1); self.raw("PRIVMSG #bsmnt_bot_errors :%s" % i)
22:24:34 -!- bsmnt_bot has quit (Excess Flood).
22:24:37 -!- bsmnt_bot has joined.
22:26:33 <bsmntbombdood> ~exec for i in xrange(1000): time.sleep(1.5); self.raw("PRIVMSG #bsmnt_bot_errors :%s" % i)
22:27:35 <andreou> btw does python still have a lambda or was it removed?
22:31:32 <pikhq> Is Python still not a Lisp?
22:31:41 -!- bsmnt_bot has quit (Excess Flood).
22:31:44 -!- bsmnt_bot has joined.
22:33:37 <oerjan> (x and (y or True)) or z
22:37:41 -!- bsmnt_bot has quit.
22:37:43 -!- bsmnt_bot has joined.
22:38:42 <oerjan> [(lambda : y),(lambda : z)]((x and 1) or 2)-1)()
22:39:31 <oerjan> For extreme situations :)
22:40:42 <pikhq> !exec sys.stderr("Obey me!")
22:40:51 <pikhq> ~exec sys.stderr("Obey me!")
22:40:56 <pikhq> You know what I mean.
22:41:13 <pikhq> bsmntbombdood: And sys.stderr goes nowhere.
22:42:51 <oerjan> I forgot a (, what else?
22:42:58 <bsmntbombdood> oerjan: [(lambda : y),(lambda : z)][((x and 1) or 2) - 1]()
22:44:59 <oerjan> Not if you want it to short-circuit the y and z expressions.
22:46:39 <bsmntbombdood> I just switched my condition and did self.rate_limit = rate_limit or (lambda x : (x > 3 and min([(x-2)/10., 2])) or 0)
22:47:46 <oerjan> Yes, the sledgehammer is only needed if both branches can be false.
22:58:26 -!- Rent-A-Tard has quit (Read error: 131 (Connection reset by peer)).
23:00:47 -!- pmhaddad has joined.
23:01:26 -!- pmhaddad has left (?).
23:02:59 -!- wooby has joined.
23:25:23 <pikhq> YOU BORK THE PATTERN
23:26:10 * pikhq thinks of a way to get target-language specific implementations of macros in BFM. . .
23:26:41 <pikhq> My personal build targets C, Tcl, and Brainfuck.
23:26:54 <pikhq> (the interpreter just compiles to Tcl and executes that)
23:27:08 <pikhq> Well, that's not *entirely* true.
23:27:35 <pikhq> It compiles to a simplified BFM subset, which can be interpreted by a Tcl interpreter with the right procs in place.
23:30:57 <oerjan> A very fishy language.
23:32:50 <pikhq> Compile Homespring to BFM!
23:33:14 <pikhq> Or maybe just make a Brainfuck interpreter in Homespring.
23:33:29 <pikhq> (it has yet to be proven Turing complete)
23:34:01 <RodgerTheGreat> you'd have to build some tricky data structures to do it properly
23:34:23 <pikhq> But at least it's *possible*.
23:34:51 <pikhq> Implementing any Turing complete language in Homespring may very well be impossible.
23:34:53 <bsmntbombdood> I want a language that's more than turing complete
23:35:21 <oerjan> There are a few on the wiki.
23:35:37 <pikhq> bsmntbombdood: You want an oracle machine?
23:35:48 <RodgerTheGreat> the only problem is that they tend to lack implementation
23:36:30 <pikhq> It's like a Turing machine, except it's got an oracle for telling the Turing machine the solution to a certain set of problems that are unsolvable by a Turing machine.
23:36:36 <bsmntbombdood> It would be possible to simulate it though, wouldn't it?
23:36:59 <pikhq> For example, consider a Turing machine with a halting oracle.
23:37:17 <pikhq> This oracle could tell the machine if a certain program halts.
23:37:23 <pikhq> The machine itself could *not*.
23:37:46 <bsmntbombdood> can an x86 proccesor be implemented in a turing machine?
23:38:18 <oerjan> There are some uses of oracles in complexity theory where you put an oracle on a machine _weaker_ than Turing-complete. Then the result may still be implementable.
23:38:18 <pikhq> bsmntbombdood: Of course. An x86 processor is, after all, Turing complete (with the exception of addressing restrictions).
23:38:40 <bsmntbombdood> pikhq: An oracle machine is turing complete, but a turing machine can't implement it
23:39:11 <pikhq> bsmntbombdood: An oracle machine is super-Turing.
23:39:25 <bsmntbombdood> Well I was thinking that a normal proccesor might be more than turing complete
23:39:29 <pikhq> I'm listing the largest computational class that each machine is a member of.
23:39:52 <pikhq> A normal CPU's capabilities are a *subset* of the Turing machine's.
23:39:57 <RodgerTheGreat> bsmntbombdood: you may not completely understand the meaning of turing-completeness
23:40:27 <pikhq> bsmntbombdood: A turing-complete system can calculate anything that can be described as a deterministic algorithm.
23:40:27 <RodgerTheGreat> I'd advise you to read up on it- the wiki article on the subject is fascinating reading
23:41:57 <bsmntbombdood> pikhq: Then I understand the meaning of turing completeness
23:42:04 <RodgerTheGreat> this is what Alan turing had to say about oracles- "Let us suppose that we are supplied with some unspecified means of solving number-theoretic problems; a kind of oracle as it were. We shall not go any further into the nature of this oracle apart from saying that it cannot be a machine" (Undecidable p. 167, a reprint of Turing's paper Systems of Logic Based On Ordinals)."
23:42:42 <pikhq> RodgerTheGreat: His thoughts were not entirely correct.
23:42:55 <pikhq> A quantum oracle could, in fact, be a machine.
23:43:04 <pikhq> The same for a real-RNG oracle.
23:43:25 <RodgerTheGreat> quantum operations have not been *proven* to be non-deterministic.
23:43:34 <oerjan> A quantum computer is not super-Turing as far as we know.
23:43:46 <oerjan> Non-determinism is not enough for super-Turing.
23:43:59 <pikhq> But my point for real-RNG oracles?
23:44:11 <RodgerTheGreat> oerjan: but it is at the very least a requisite for creating an oracle
23:44:51 <pikhq> Near as I can fathom, real RNGs could not be created via a deterministic algorithm.
23:45:23 <oerjan> Oracles are in fact deterministic by the usual definition: They always give the same answer to the same question.
23:45:33 <RodgerTheGreat> which would further imply that they could not be created via a deterministic system
23:46:55 <RodgerTheGreat> if a machine always gave the same answer to the same question, then it would be deterministic in the sense that it's behavior was governed by a predictable system
23:47:40 <pikhq> oerjan: A RNG oracle wouldn't be deterministic.
23:48:03 <pikhq> It wouldn't always give the same answer to the question "What is a random number I could use?".
23:48:50 <oerjan> However, a RNG oracle would not increase a Turing machine's ability to solve problems with well-definite answers.
23:49:26 <RodgerTheGreat> that's because it's an entirely different kind of device
23:49:32 <pikhq> It wouldn't increase the ability to solve *deterministic* algorithms, but it would give the ability to solve some *nondeterministic* algorithms.
23:49:43 <oerjan> Because a Turing machine always has the option of calculating _all_ possible paths.
23:50:17 <pikhq> Since it can do something a plain ol' Turing machine can't, it is, by definition, super-Turing.
23:51:00 <RodgerTheGreat> I'm just pointing out that random oracles and halting oracles are seperate types of devices
23:51:39 <pikhq> RodgerTheGreat: They differ in that one could be built, and another could *not*.
23:51:39 <RodgerTheGreat> a random oracle won't help you solve the halting problem, but it *can* do something a turing machine can't
23:51:50 <bsmntbombdood> Can't you solve the halting problem by just running it?
23:52:11 <pikhq> bsmntbombdood: The halting problem has been proven to not be solvable by a Turing machine.
23:52:24 <oerjan> No, because the Turing machine needs to halt with an answer, even if the program doesn't.
23:52:40 <RodgerTheGreat> you can solve the halting problem in limited instances. You cannot solve the halting problem for a nontrivial program in a nontrivial amount of time
23:53:27 <pikhq> In addition, a Turing machine with a halting oracle can't solve the halting problem for any arbitrary algorithm running on itself.
23:54:12 <bsmntbombdood> in a pure functional language, can the compiler easily (not NP complete) determine the inverse of a function?
23:54:30 <RodgerTheGreat> that would require a more powerful oracle, resulting in an infinite regression- rather like the homonculus theory of consciousness.
23:55:18 <oerjan> bsmntbombdood: Not easily, no.
23:55:27 <RodgerTheGreat> an oracle can't solve the halting problem for a machine incorporating itself, but it may be able to solve the halting problem for another oracle.
23:55:56 <oerjan> And the pure functionality hasn't really got anything to do with it.
23:56:13 <pikhq> RodgerTheGreat: Exactly.
23:56:14 <oerjan> Apart from the function you are taking inverses of, I presume.
23:56:18 <bsmntbombdood> it would be impossible to do in a function with side effects
23:57:47 <pikhq> I can come up with an example of a pure function that is uninvertable at all. ;)
23:57:56 <oerjan> Are we assuming that the function is one-to-one? If not then I believe finding an inverse of a polynomial-time function is in fact at least NP-complete.
23:58:01 <pikhq> mod10(x) returns x mod 10.
23:58:31 <oerjan> If it is one-to-one then it may be somewhat simpler than NP-complete, I believe that is an unsolved problem.
23:58:42 <pikhq> bsmntbombdood: I'm not thinking ATM. . .
23:58:49 <bsmntbombdood> The inverse could be a set for not one to one functions though
23:59:27 <oerjan> I came upon that issue on Wikipedia when investigating Sudoku. (In a sense the article there is subtly wrong)