00:17:00 <jamesstanley> solved problem 1 of project euler in brainfuck :D (ok, ok, it needs a weird brainfuck with at least 18-bit wide cells and number i/o instead of character i/o)
00:26:44 <jamesstanley> also i just noticed that the 4th line of the loop for 3's can be shortened
00:28:46 -!- oerjan has quit (Quit: Good night).
00:31:33 -!- ArcticDeath has left (?).
00:32:13 <Sgeo_> jamesstanley, given 8-bit BF, you can um, simulate 8^2n bit BF easily
00:33:45 <pikhq> And itoa isn't hard to do.
00:37:00 <pikhq> So he could output numbers.
00:39:31 <Sgeo_> What about inputting numbers?
00:41:00 * Sgeo_ starts thinking about transformations of BF code and order in which such are applied
00:42:10 <pikhq> Sgeo_: That's a trivial matter of parsing.
00:49:05 -!- jabb_ has quit (Quit: Page closed).
01:07:08 -!- Tritonio_GR1 has joined.
01:07:30 -!- Tritonio_GR has quit (Ping timeout: 248 seconds).
01:17:16 -!- zzo38 has joined.
01:20:29 -!- DH____ has quit (Read error: Connection reset by peer).
01:21:51 -!- DH____ has joined.
01:29:23 <zzo38> I found out how to fix the game_id so that it matched of the filename of the module: http://zzo38computer.cjb.net/PySol/ruleset/ Now you must rename each file, otherwise it won't work!!!!
01:30:26 <zzo38> I also added in a Interactive Exec command, so that you can enter a Python code at run-time. http://zzo38computer.cjb.net/PySol/plugin/extra_commands.py
01:31:49 <zzo38> Now I invented the idea for HighForth with is like Forth but with high-level functions and it can be used with other high-level functions such as JavaScript, Python, etc.
01:31:58 <zzo38> An example code is: : 2+ 2 + ;
01:32:15 <zzo38> Which can also be written as: [[ 2 + ]] CONSTANT `2+
01:32:41 <zzo38> Or: NULL DATA-OPEN 2 L, `+ , DATA-CLOSE COMPILE CONSTANT `2+
01:33:08 <zzo38> Or: 2 `+ 1 CURRY CONSTANT `2+
01:33:22 <zzo38> Or even a bunch of other ways.
01:35:44 <zzo38> Or: NULL DATA-OPEN 2 L, +` EXIT` DATA-CLOSE COMPILE CONSTANT `2+
01:36:15 <zzo38> Or: 2 1[[ + ]] CONSTANT `2+
01:36:26 <zzo38> Or: 2 1 S[[ + ]] CONSTANT `2+
01:52:26 -!- Tritonio_GR1 has quit (Ping timeout: 276 seconds).
02:10:04 -!- cheater99 has quit (Ping timeout: 240 seconds).
02:11:52 -!- zzo38 has left (?).
02:18:14 -!- cheater99 has joined.
02:33:34 -!- zzo38 has joined.
02:33:34 -!- Mathnerd314 has joined.
02:33:43 <zzo38> This is how the simple IRC log format can be written: http://zzo38computer.cjb.net/textfile/miscellaneous/SIRCL
02:48:38 -!- zzo38 has quit (Remote host closed the connection).
02:50:01 -!- coppro has joined.
02:55:34 -!- Gregor has joined.
03:15:33 -!- coppro has quit (Remote host closed the connection).
03:16:08 -!- coppro has joined.
03:21:15 <Gregor> http://codu.org/tmp/BalMusetteNocturne-wipp1.mp3 Gregor attempts to play two musical instruments at once and records it poorly!
03:21:31 <Gregor> Gregor accidentally bolds things!
03:22:03 <coppro> http://www.youtube.com/watch?v=uRv8gnBMiWM
03:24:15 -!- Mathnerd314 has quit (Ping timeout: 245 seconds).
03:24:55 <pikhq> Gregor also uses mp3 for once!
03:25:14 <Gregor> I made it ogg, but the first person I sent it to I knew wouldn't be able to play a .ogg :P
03:28:41 <Gregor> I see you have no opinion on the music itself :P
03:29:05 <pikhq> I've not listened yet.
04:05:04 -!- pikhq has quit (Quit: LOGGING OF FOR WEEK. MUAHAHAH.).
04:16:54 -!- zzo38 has joined.
04:17:07 <zzo38> Sometimes the log file is application/octet-stream by mistake?
04:18:59 <zzo38> Which IRC server softwares can be compiled with the GNU C compiler and can work on Windows and on Linux?
05:35:03 <coppro> seven's at git clone git://git.freenode.net/ircd-seven.git
05:35:34 <zzo38> I found ngIRCd I think I will use that one. If I can get it to compile
05:45:26 <oktolol> Gregor: did you learn to play the harmonica just for that? or is it a different instrument or you knew it already or
05:45:45 <oktolol> i actually first thought i'd just comment on everything except the music but then i thought it'd be a bit too obvious
05:45:54 -!- oktolol has changed nick to oklopol.
05:46:03 <Gregor> I'm glad that you think I can do impossible things on the harmonica.
05:46:07 <oklopol> i love how mirc shoves all my past mistakes in my face for the rest of my life
05:46:11 <Gregor> It's nice to know you have that kind of confidence in me.
05:46:25 <Gregor> Well, not impossible, but the kinds of things that people study the harmonica for YEARS to be able to do.
05:46:29 <Gregor> However, that's not a harmonica.
05:46:38 <oklopol> i thought the fast things are just you moving your mouth over the thing
05:46:57 <Gregor> The chords are the real complication :P
05:47:10 <Gregor> Since some of them would involve tonguing an intervening hole on a harmonica.
05:47:19 <oklopol> well i have crappy quality, i thought there was just thirds
05:47:42 <Gregor> Yeah, the audio quality is bad since I don't have decent recording equipment :P
05:48:57 <Gregor> Not gonna continue instrument guessing?
05:49:32 <oklopol> yeah and i'm using my laptop's speakers and they are hammering the other side of the wall and boring through it
05:50:09 <Gregor> Well, it's a melodica, so you wouldn't have guessed it anyway :P
05:50:17 <oklopol> err i don't really know much about instruments, harmonicas and well okay make that sound
05:50:24 <oklopol> the list would've included melodica
05:50:30 <oklopol> if i'd remembered its name
05:50:39 <Gregor> The fact that you've heard of it is astounding ...
05:50:59 <oklopol> it's the thing you blow into and play like a piano?
05:52:13 <oklopol> i have heard the name lots of times, anyway i gotta go to uni so have fun with your instruments ->
05:52:33 <oklopol> er heard of the instrument or the name?
05:52:38 <oklopol> because the instrument is common
05:52:53 <oklopol> all the cool kids have them
05:53:00 <Gregor> WELL THEN I'M COOL NOW
05:53:04 <oklopol> i dunno, i've had at least one
05:53:17 <oklopol> and i just met one at a thing
05:53:45 * Sgeo_ decides that he <3 Zelda music
05:53:52 <oklopol> maybe it's like our national instrument dunno
05:54:12 <Sgeo_> Actually, I made that decision a long time ago
06:08:25 <zzo38> I loaded ngIRCd into Cygwin but now it is error message It doesn't work it says "bash: make: command not found"
06:19:04 <zzo38> I have make in MinGW but in Cygwin it says it doesn't?
06:21:06 -!- MizardX has quit (Ping timeout: 248 seconds).
06:22:31 -!- Mathnerd314 has joined.
06:47:05 <zzo38> Which package is "make" program?
06:49:45 <zzo38> What other packages are required to compile ngIRCd?
06:50:38 -!- FireyFly has joined.
06:57:02 <zzo38> In the Free Geek they now have the newest version of Ubuntu on their servers, but it has some things missing, even the "mail" command doesn't work
06:57:52 <zzo38> It says tell the administrator to install these softwares, he wasn't in on that day and how else can it be done without "mail" command?
07:06:57 -!- Mathnerd314 has quit (Ping timeout: 252 seconds).
07:13:27 -!- relet has joined.
07:17:11 <zzo38> Cygwin installer keeps displaying error messages about files that are in use, even though they aren't in use (I checked the permissions, I also checked the processes)
07:17:41 <zzo38> I also have one process that will not go away, process 924 cmd.exe
07:19:00 <zzo38> Attempting to terminate the process does nothing, attempting to debug gives error message that it cannot execute the program
07:21:03 <zzo38> Now Cygwin Setup seems stuck!
07:22:33 <zzo38> Now everything is stuck
07:23:17 -!- zzo38 has quit (Remote host closed the connection).
07:25:00 -!- MigoMipo has joined.
07:28:59 -!- MigoMipo has quit (Remote host closed the connection).
07:40:21 -!- jabb has quit (Ping timeout: 264 seconds).
07:42:12 -!- jabb has joined.
07:50:05 -!- CakeProphet has quit (Quit: Reconnecting).
07:50:19 -!- CakeProphet has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:05:54 <jabb> Does this look esoteric: (0)3< (1)10< @; (1)20*(1)< (^)(,_1)>` (0)>1-< ! ?
08:27:02 <jabb> I have that running in my interpreter succesfully
08:38:32 -!- Phantom_Hoover has joined.
08:47:23 <olsner> btw, I successfully got my compiler to compile a working brainfuck interpreter the other week, that was fun
09:04:30 <Phantom_Hoover> Cool, there's a low-level x86 Common Lisp implementation.
09:08:27 <jabb> Phantom_Hoover: Got a cat example going
09:09:05 <jabb> just tested it
09:20:05 <Phantom_Hoover> Right, standard procedure once you have an interpreter and working examples is to post it on the wiki.
09:20:18 <Phantom_Hoover> Although I would advise you strongly not to post the interpreter there.
09:21:54 <Phantom_Hoover> Except the wiki is entirely public domain, so if you want to have any control over the license don't post it there.
09:27:24 <coppro> which commonly-used color space is the biggest?
09:28:16 <Phantom_Hoover> http://en.wikipedia.org/wiki/File:Colorspace.png seems relevant.
09:30:34 -!- BeholdMyGlory has joined.
09:30:51 <coppro> useful, but that seems to be mostly RGB spaces
09:31:50 <Phantom_Hoover> Since it contains every frequency of light from the sun
09:41:10 -!- augur has joined.
10:00:38 -!- Sgeo has joined.
10:02:31 -!- Sgeo_ has quit (Ping timeout: 240 seconds).
10:04:34 -!- e2e has joined.
10:12:28 -!- BeholdMyGlory has quit (Remote host closed the connection).
10:14:53 -!- Slereah has joined.
10:19:09 -!- Gracenotes has quit (Read error: Operation timed out).
10:24:16 <Phantom_Hoover> http://www.ecanadanow.com/curiosity/2010/06/03/the-newest-high-vodka-eyeballing/ Dear god, the youth of today are stupid.
10:26:04 <Phantom_Hoover> Sadly, the thing about them burning bins to get high off the fumes seems not to have been.
10:27:01 <DH____> What? No they burn bins because it's fun...
10:27:58 <Phantom_Hoover> Which has lower journalistic standards than, say, a pigeon.
10:28:33 <DH____> The Metro's one of the more reliable papers, I find. Would you rather beleive the Sun? Or the Mail?
10:29:11 <Phantom_Hoover> Anyone with more underscores than letters in their nick is not to be trusted.
10:29:36 <DH____> I don't know why it did that...
10:29:52 <DH____> I set my name as DH and it added them to the end...
10:30:01 -!- Phantom_Hoover has changed nick to PH______________.
10:34:04 -!- tombom has joined.
10:34:07 <jabb> Nah, you seem to be up front about everything
10:34:13 -!- jabb has changed nick to __jabb.
10:37:21 <PH______________> (set-weight neuron output (+ (car range) (random (coerce (- (car range) (cdr range)) 'double-float)))))
10:37:55 <PH______________> The first time I tried I got lost in parentheses, so I had to undo and rewrite it very carefully.
10:54:19 -!- Gracenotes has joined.
11:09:49 <e2e> but you can be magical too!!!
11:10:11 <e2e> don't you see??
11:11:33 <e2e> I'm a fairy princess
11:13:28 -!- softmoon has joined.
11:15:39 <e2e> levitation
11:17:08 <e2e> wait thats false
11:17:29 <softmoon> Do anyone know something about Lali Puna?
11:19:28 <e2e> what about it
11:21:06 <softmoon> I do not know something about music
11:22:54 -!- softmoon has quit (Quit: softmoon).
11:45:13 -!- e2e has quit.
11:52:21 <PH______________> Is there any browser scripting language other than JavaScript?
11:57:02 -!- Gracenotes has quit (Ping timeout: 260 seconds).
12:08:52 -!- augur has quit (Remote host closed the connection).
12:09:04 -!- augur has joined.
12:21:04 -!- FireyFly has changed nick to FireFly.
12:32:42 <FireFly> A function that returns its argument, x → x, what's it called again?
12:35:32 <fizzie> There was a "you'll forget your own identity next" pseudo-pun waiting there.
12:37:59 <Deewiant> PH______________: VBScript, PerlScript
12:40:16 -!- augur has quit (Remote host closed the connection).
12:40:26 -!- augur has joined.
12:44:24 <CakeProphet> I think I understand it, just need to see it in use.
12:48:15 <__jabb> PH: http://esolangs.org/wiki/Mimsy
12:49:36 <Deewiant> VBScript is only supported in Windows, and PerlScript requires ActivePerl and therefore also Windows.
12:49:45 <__jabb> which is a poem from Through the Looking Glass :P
12:50:06 <__jabb> http://en.wikipedia.org/wiki/Jabberwocky
12:51:36 * CakeProphet thinks his tree-based language will be sweet.
12:53:26 <AnMaster> PH______________, that is one irritating nick!
12:54:51 <AnMaster> I did realise that from /whois
12:54:59 <AnMaster> and I suspected it before that
12:56:46 <PH______________> (10:28:47) Phantom Hoover: Anyone with more underscores than letters in their nick is not to be trusted.
12:58:50 <AnMaster> PH______________, anyone with a space in their nick is not to be trusted at all
12:59:05 <AnMaster> PH______________, what about that quote then?
12:59:13 <AnMaster> okay, such clients are not to be trusted
13:00:11 <AnMaster> btw "-PH______________- VERSION Purple IRC", never heard about that
13:00:23 <PH______________> On the other hand, irssi had my real name on whois, and I couldn't see how to change it easily.
13:00:31 <AnMaster> PH______________, the irssi config
13:00:45 <AnMaster> PH______________, probably called gecos or such
13:01:14 <AnMaster> PH______________, ERC, haven't I told you before?
13:01:26 -!- PH______________ has quit (Quit: Leaving.).
13:03:32 <AnMaster> Deewiant, did you see that idea a few days ago about befunge with branch delay slots?
13:04:17 -!- Phantom_Hoover has joined.
13:04:17 <Deewiant> I was going to comment about that being very feral for a fingerprint but decided not to
13:05:29 <AnMaster> Deewiant, not as a fingerprint I thought, but as a fungiod
13:05:56 <AnMaster> (sorry for slow reply, had to clean my glasses due to small accident there)
13:06:21 <Deewiant> You did say "as a fingerprint perhaps", but yes.
13:06:41 <Deewiant> And a reply isn't slow unless it takes at least five minutes to come.
13:06:50 <Deewiant> 2010-06-02 01:25:20( AnMaster) as a fingerprint perhaps
13:07:27 <AnMaster> hm, as a fingerprint it is much less useful than as a core feature of a fungoid
13:07:42 <AnMaster> since the latter would allow a nice pipeline in a hardware implementation
13:07:56 <AnMaster> while the former would have to enable that only sometimes
13:08:03 <AnMaster> and require dual implementation or something
13:10:34 <AnMaster> Phantom_Hoover, befunge98 thing, kind of like a loadable library of functions that the interpreter provides, will be loaded on A-Z
13:10:47 <AnMaster> fungot uses SOCK and a few other ones for example
13:13:23 <fizzie> (Just arrived home today.)
13:14:23 -!- fungot has joined.
13:14:33 <Phantom_Hoover> I kinda sorta changed my nick to fungot during a netsplit.
13:14:33 <fungot> Phantom_Hoover: i'm still learning
13:14:39 -!- __jabb has changed nick to jabb.
13:14:58 <jabb> I don't believe you
13:15:05 <fizzie> The nick-change seems to have not been related: RAW >>> ERROR :Closing Link: momus.zem.fi (Ping timeout: 260 seconds) <<<
13:15:15 <fizzie> (If it drops, it won't try to reconnect.)
13:18:13 <AnMaster> Phantom_Hoover, one underscore!
13:20:07 <fungot> Phantom_Hoover: don't take your class as any indication of decision of opinion whatsoever.).
13:20:15 <fungot> Available: agora alice c64 ct darwin discworld europarl ff7 fisher ic irc* jargon lovecraft nethack pa speeches ss wp youtube
13:21:41 <fizzie> It reverts to that style on startup by default.
13:28:11 <EgoBot> *** Exception: Prelude.read: no parse
13:30:26 <Deewiant> !haskell print (read "1" :: Int)
13:31:01 <CakeProphet> !hasle;; print (read $ show "print" :: String)
13:31:06 <CakeProphet> !haslell print (read $ show "print" :: String)
13:31:20 <CakeProphet> !haslell print (read (show "print") :: String)
13:31:34 <CakeProphet> !haskell print (read (show "print") :: String)
13:32:47 <CakeProphet> !Haskell print $ [(+1), (+2), (+3), negate] <$> 3
13:32:56 <CakeProphet> !haskell print $ [(+1), (+2), (+3), negate] <$> 3
13:34:42 <Deewiant> !haskell import Control.Applicative; main = print $ [(+1), (+2), (+3), negate] <$> 3
13:36:28 <Deewiant> !haskell import Control.Applicative; main = print $ [(+1), (+2), (+3), negate] <*> pure 3
13:39:23 -!- augur has quit (Remote host closed the connection).
13:39:36 -!- augur has joined.
13:41:22 <fungot> Phantom_Hoover: ' but initialize it from a file, so i keep to 255 byte lines much pain. but oh well its a known fact that the syntax-rules word does is remove the ever so slight overhead of a function
13:44:13 <AnMaster> C++ is outdated btw. It wants to preserve the class system all the injustices that implies.
13:44:22 -!- Moult has joined.
13:44:32 -!- Moult has left (?).
13:46:38 <AnMaster> really? wouldn't the ability to determine that solve the halting problem? ;P
13:47:16 <AnMaster> what has that got to do with it?
13:48:26 <Slereah> Well, not much, since that's not useful if you don't have infinite memory
13:48:32 <Phantom_Hoover> FTL → time travel → TwoDucks interpreter → halting oracle.
13:49:00 <Slereah> But time travel violates quantum unitarity, though
13:49:35 <AnMaster> Phantom_Hoover, also it requires infinite space as well
13:49:51 <AnMaster> and how does FTL imply time travel?
13:50:17 <AnMaster> does it allow going backward in time?
13:50:23 <AnMaster> or just slowing it down/speeding it up?
13:50:56 <Phantom_Hoover> It allows violation of causality, which is basically time travel.
13:51:02 <augur> AnMaster: if you can go faster than light
13:51:06 <augur> and relativity holds
13:51:10 <augur> then you travel backwards in time
13:52:54 <augur> assuming relativity holds.
14:05:22 -!- MizardX has joined.
14:24:05 -!- ineiros has changed nick to ineiros__.
14:24:43 -!- augur has quit (Remote host closed the connection).
14:24:52 -!- augur has joined.
14:25:33 -!- ineiros__ has quit (Quit: .).
14:32:00 * Phantom_Hoover wonders why on earth one would possibly want a logical XOR operator.
14:33:24 -!- Tritonio_GR has joined.
14:33:26 <fizzie> Completeness is one reason.
14:33:53 <coppro> implicit conversion of its operands to boolean type, and it looks better than !!x != !!y
14:37:12 -!- BeholdMyGlory has joined.
14:40:23 <oklopol> i've needed a logical xor many times
14:40:42 <oklopol> can't think of a situation tho
14:40:58 <oklopol> for when i've needed exactly one of two things to be true, obviously
14:41:11 <oklopol> rare, but i recall needing it multiple times
14:41:41 <Phantom_Hoover> I recall there being a comment from Larry Wall about why he didn't want a ^^ operator because he didn't want to spend forever telling people why it didn't short-circuit.
14:52:00 -!- relet has quit (Quit: Leaving.).
15:08:10 <CakeProphet> hmmm I wonder if you could use a constrain-enabled type system to automate unit testing.
15:10:37 <CakeProphet> give it support for stuff like function pointers.... profit?
15:13:55 <CakeProphet> Haskell's system only lets you specify whole sets of objects
15:14:13 <CakeProphet> Int passes for all system-bound integer values...
15:15:42 <CakeProphet> but if you could do like (Int within [1..100])... the type checker could use that information to invalid a program based on data-sets that won't match up at runtime.
15:15:54 <CakeProphet> Phantom_Hoover: I don't know. Uses something previous unused in VM design.
15:17:07 <CakeProphet> (t | c) where t is a type and c is a constraint.
15:17:16 <CakeProphet> constraints would be like... type-level predicate functions sort of.
15:17:37 <Phantom_Hoover> In the Lazy K spec it suggests that it could be used as bytecode for a VM.
15:17:46 -!- Tritonio_GR has quit (Quit: Leaving.).
15:18:08 <CakeProphet> Phantom_Hoover: well... do something different
15:18:41 <Phantom_Hoover> Lazy K is an incredibly functional language, so it could be fun.
15:19:12 * CakeProphet is thinking about constraints and type systems.
15:19:58 <CakeProphet> conditionals would change constraints on a type.
15:20:08 -!- hiato has joined.
15:20:44 <CakeProphet> the constraint on x changes for each of those nested expressions
15:21:04 <Phantom_Hoover> I also have a couple of old BF interpreters lying around, and it would be trivial to adjust them to be more VMy.
15:21:06 <CakeProphet> in the truth-expression x is Int | x > 100
15:21:19 <CakeProphet> Phantom_Hoover: What about a VM that operates on a tree?
15:21:31 <CakeProphet> instead of the stack/register based designs.
15:22:38 <Phantom_Hoover> OTOH low-level functional programming is an underexplored concept, so there's nothing to build on...
15:22:46 <CakeProphet> Phantom_Hoover: what I like about a tree design is that you can integrate a lot of POSIX-type stuff into the language
15:22:52 <CakeProphet> like... have a virtual filesystem of sorts
15:23:02 <CakeProphet> if you allow for naming of tree nodes as well as enumeration
15:23:08 <Phantom_Hoover> Yes, but it would be nice if it was lazy and functional as well.
15:23:25 <Phantom_Hoover> OK, so source and data should both be trees, which seems sensible.
15:23:30 <CakeProphet> ...lazy VM? I'd say only provide operations for /supporting/ lazy evaluation
15:24:02 <CakeProphet> .. well, if you think there's benefit to having it lazy.
15:24:29 * CakeProphet was thinking of a practical VM... for implementing lazy languages.
15:24:52 <CakeProphet> IO for example... can specify certain expressions to be lazy at a method level
15:25:02 <CakeProphet> rather than having everything implicitly lazy.
15:25:33 <Phantom_Hoover> Lazy K is completely lazily evaluated and manages IO pretty well.
15:26:08 -!- coppro has quit (Quit: I am leaving. You are about to explode.).
15:26:12 -!- augur has quit (Remote host closed the connection).
15:26:20 -!- augur has joined.
15:26:29 <EgoBot> http://google.com/search?q=io
15:26:47 <EgoBot> http://google.com/search?q=io+programming+language
15:28:09 <Phantom_Hoover> Lazy K would actually be feasible, since it runs purely at the SKI level.
15:28:13 <CakeProphet> Phantom_Hoover: usefulness doesn't exclude novelty of concept. :)
15:28:58 <CakeProphet> what I was thinking of was a VM that explicitly operates on a global tree
15:29:13 <CakeProphet> and then particular lazy languages could implement how laziness works.
15:29:56 <Phantom_Hoover> And then we write an interpreter for a lazy language in that?
15:30:07 <CakeProphet> I always think a VM should model hardware somewhat closely
15:31:45 <Phantom_Hoover> If it's implemented as a tree, it would seem like it would be quite functional already.
15:31:54 <CakeProphet> ...what I've come up with for this kind of stuff is that nodes are enumerated... and optionally can be given labels.
15:32:06 <CakeProphet> so if you name a node x... inside the parent node y... and its parent is root
15:32:59 <CakeProphet> ....so you could implement scoping rules like that perhaps.
15:33:16 <CakeProphet> ...also I'd say there should be a way to reference other nodes and jump to them.
15:34:05 <CakeProphet> regist-erbased vms like Parrot, for example
15:34:32 <CakeProphet> have int registers, float registers, byte registers, and "object" registers
15:34:41 <CakeProphet> object registers basically being pointer registers...
15:35:11 <CakeProphet> I don't know how a tree would handle types.
15:35:25 -!- saxamo has joined.
15:36:00 <CakeProphet> another alternative is to have a tree for each type
15:36:01 -!- saxamo has left (?).
15:36:21 <Phantom_Hoover> It sort of loses the elegance of having a single, global tree.
15:36:50 <CakeProphet> well... if all of your data structures are the same byte-size
15:36:56 -!- Slereah has quit (Remote host closed the connection).
15:36:58 <CakeProphet> the best way to do that is to make pointers to everything.
15:37:23 <CakeProphet> that's how PYthon gets dynamic typing... everything is a pointer to a single C struct.
15:38:12 <CakeProphet> another idea is to have both a tree and a set of registers.
15:38:22 <Phantom_Hoover> So... struct node { void *data; struct node *leaf1; struct node *leaf2; }?
15:39:14 <Phantom_Hoover> Well, the SKI calculus fits nicely into a binary tree.
15:39:48 <CakeProphet> I suppose you could change it later. I think arbitrary child nodes would be fun.
15:40:16 -!- softmoon has joined.
15:40:46 <Phantom_Hoover> Also, I assume nodes would need the type of the data as well.
15:41:12 <CakeProphet> well... binary works. If you wanted something production quality, though, you'd definitely want to take advantage of the performance benefits of using actual arrays.
15:42:17 <CakeProphet> names work better with arbitrary child nodes.
15:42:24 <Phantom_Hoover> Mad idea: strip node size by making one of the child nodes NULL and the other a pointer to the data.
15:42:57 <CakeProphet> linked list would use the other node as a next pointer.
15:44:05 <CakeProphet> linkedlist/data, linkedlist/next, linkedlist/prev
15:44:06 <Gregor> Named noodles would be epic
15:44:34 <CakeProphet> .return would be a node referencing the node of the calling code. :)
15:46:17 <CakeProphet> you'll need a way to represent VM code in the tree
15:46:35 <CakeProphet> and an instruction that runs VM code in the tree.
15:47:59 <Phantom_Hoover> How about, say, "move to the first child of the current node if it's 0, else the second"
15:48:29 <CakeProphet> "branch to node references by first child, if non-null, else branch to node in second node, if non-null"
15:49:08 <Phantom_Hoover> So set the first child to if 0, the second child to else, then jump to it.
15:49:26 <Phantom_Hoover> Although you'd probably want to segregate the tree into "code" and "data".
15:49:40 <CakeProphet> generally... that's why I thought arbitrary child size would be nice
15:49:48 * CakeProphet is taking ideas from his tree-based esoteric language for this
15:49:55 <CakeProphet> a standard namespace for functions could be like
15:51:24 <CakeProphet> I still think having more than two nodes would benefit from named-node semantics.
15:52:01 <CakeProphet> if you wanted like... an intermediate language
15:52:13 <CakeProphet> and then a low-level... which was focused on being efficient
15:52:30 <Phantom_Hoover> So we have the low-level binary tree language, and a mid-level filesystemy one?
15:53:20 <CakeProphet> I don't think binary trees will be very efficient. I'm generally considered about efficiency (even with esoteric things), so I wouldn't even use binary trees at all...
15:54:05 <Phantom_Hoover> If we cared much about efficiency we wouldn't be doing trees, would we?
15:54:31 <CakeProphet> so you don't have to do tree-lookups all the time with static information
15:54:40 <Phantom_Hoover> Since it's going to work with an ungodly amount of mallocing and referencing.
15:55:47 <CakeProphet> malloc a fixed amount of objects, and acquire/recycle them.
15:56:40 <CakeProphet> if I were going with efficiency I'd have registers as well.
15:57:06 <Phantom_Hoover> But I don't really see how you can easily implement variable-child trees,
15:57:57 <Phantom_Hoover> (Also, given modern computer speeds it's not really going to be a noticeable slowdown)
15:58:30 <CakeProphet> when Google isn't interested in your ground-breaking VM research
15:58:37 <CakeProphet> because the low-level representation is inefficient
15:58:51 <CakeProphet> they can go make their own and conquer the world more.
15:59:03 <EgoBot> http://google.com/search?q=recursion
16:00:33 <CakeProphet> instead of using pointers for everything... consider a union?
16:00:38 -!- hiato has changed nick to cows.
16:00:47 -!- cows has changed nick to fishes.
16:01:19 <Phantom_Hoover> I think a 16-bit integer should be enough for sane addressing.
16:01:42 <CakeProphet> maybe use tree nodes as your reference semantics... but then for data
16:01:43 <Phantom_Hoover> Make the first few bits say to what depth, and then the rest specify the path taken.
16:02:40 <CakeProphet> unions represent a combination of multiple types
16:02:46 <CakeProphet> the size of a union is the size of the largest nested type
16:03:03 <CakeProphet> you can read/write to a union type with any of the nested types
16:03:15 <Phantom_Hoover> Then does the char represent the first byte of the int?
16:03:34 -!- augur has quit (Read error: Connection reset by peer).
16:03:40 <jamesstanley> Phantom_Hoover: that is undefined. you are not allowed to read from a different type than the one you last wrote to
16:03:41 <Gregor> That "yeah" isn't a "yeah" :P
16:03:54 -!- augur has joined.
16:03:58 <Gregor> "First" as in "whatever my architecture decides to lay out first"
16:04:02 <Gregor> Not "first" in any consistent way.
16:04:14 <Gregor> And even that first is undefined, as unions can be as wonky as they want really.
16:04:28 <jamesstanley> generally they're fairly sane but portable code shouldn't rely on the layout of a union
16:04:36 -!- hiato has joined.
16:04:46 <Gregor> unions are perfectly OK so long as you use them properly.
16:04:56 <jamesstanley> unions are a good idea if you use them to reduce the memory requirements of an array of a struct, for example
16:05:00 -!- hiato has left (?).
16:05:32 <CakeProphet> Phantom_Hoover: union value_type { char character; int integer; bool boolean; float decimal;}
16:06:05 <CakeProphet> but instead of setting the memory contents
16:06:13 <CakeProphet> all members take up the same place in memory
16:06:32 -!- fishes has quit (Ping timeout: 276 seconds).
16:06:41 <jamesstanley> in fact i don't know of a single implementation that doens't so it's safe to assume so
16:07:00 <Deewiant> Implementing a union as a struct is probably valid
16:07:13 <Phantom_Hoover> Wait, so is that how the data in the node is represented?
16:07:58 <CakeProphet> Phantom_Hoover: a union is a new kind of type. So you'd have variables of type union value_type
16:08:18 <CakeProphet> would access the union as a character... essentially.
16:08:54 <CakeProphet> basically using a union is a way to represent all the possible value types you might want to deal with without having to use pointers.
16:09:32 <CakeProphet> hmmm, dunno. But I assume you'd only want value types as nodes
16:09:32 <jamesstanley> Phantom_Hoover: if you want the "char" you say x.character, if you want the "float" you say x.decimal (even thouugh it's binary not decimal... but that's what you called the field)
16:09:49 <CakeProphet> because the tree could be used to describe any kind of data structure.
16:11:44 <CakeProphet> the union just gives you weakly typed values.
16:12:02 <CakeProphet> Phantom_Hoover: it doesn't need to... but you'll want unions for sure then
16:12:02 <Phantom_Hoover> Just make each node hold, say, 4 bytes and make the low-level code deal with it.
16:12:25 <CakeProphet> hmmm... that's a possibility. That's essentially what unions do in most cases anyways.
16:15:09 <Phantom_Hoover> And as I mentioned above they can be implemented fairly elegantly.
16:15:13 <CakeProphet> simple enough to do, as long as the data type is as large as your architectures address range.
16:16:17 <CakeProphet> a possible way to do variable length child lists btw is to make the sizing explicit somewhere
16:16:53 <CakeProphet> which works for traversal... but not direct indexing.
16:18:51 <CakeProphet> hmmm... I wonder if there's a hash algorithm you could use
16:18:55 -!- Oranjer has joined.
16:19:07 <CakeProphet> to give you O(1) node lookup when referenced by name
16:19:16 <CakeProphet> regardless of absolute or relative naming within the tree structure.
16:19:23 <Phantom_Hoover> I think you can address at least 27 levels of a binary tree with a 4-byte address.
16:19:45 <CakeProphet> you could just use hardware-level pointers
16:20:04 <Phantom_Hoover> And since that represents over 200 million nodes, it seems sufficient.
16:20:58 <Phantom_Hoover> Consider a 32-bit address, the first 5 bits of which specify the depth to go to.
16:21:14 <Phantom_Hoover> Then the next 27 bits specify the directions along the nodes needed.
16:21:30 <CakeProphet> ...why do that when you can just use pointers? What would be the loss?
16:21:31 -!- softmoon has left (?).
16:22:02 <Phantom_Hoover> Because a parent and child node could have totally different addresses.
16:23:26 <CakeProphet> one solution for variable-children is to have a global hash table
16:23:38 <CakeProphet> which is essentially a superset of enumeration
16:24:25 <CakeProphet> so then the trees don't actually hold the data or pointers to the data... but instead contain hash information
16:25:24 <Phantom_Hoover> The order of evaluation is going to have to be carefully chosen.
16:25:45 <Phantom_Hoover> Since if you go straight down, you've only got 27 levels.
16:26:08 <CakeProphet> well... just figure out what information uniquely identifies each node.
16:26:28 <CakeProphet> it would be a) the name of the node b) the hash value of its parent
16:27:09 <Phantom_Hoover> So what if we use my address scheme to specify keys on a hash table?
16:27:31 <Phantom_Hoover> The system will run out of memory long before it runs out of addresses.
16:28:08 <Phantom_Hoover> Particularly since my address scheme has multiple addresses for half the nodes.
16:28:31 <Phantom_Hoover> Indeed, there are 2^27 ways of addressing the root node.
16:28:52 <Phantom_Hoover> How about we make the root node and its immediate children register-like?
16:29:14 <CakeProphet> could a hex representation help with hashing?
16:31:05 <Phantom_Hoover> Like I said, representing it as directly linear won't work.
16:31:06 <CakeProphet> what kind of code we have determines how it would be represented.
16:31:29 <CakeProphet> you could have functions as nodes with their arguments as children.
16:31:44 <CakeProphet> the function-nodes data would be a hash reference to the functions implementing code.
16:32:51 <Phantom_Hoover> I'm afraid I shall go mad if I try to work out the depth in them.
16:33:04 <CakeProphet> argument nodes could either be (a) data, in the case of leaves or b) unevaluated functions, in the case of branches)
16:33:13 <CakeProphet> ...which would support lazy evaluation I think.
16:34:06 <CakeProphet> lazy evaluation would essentially be manipulating unevaluated program expressions as values.
16:34:19 <Phantom_Hoover> I think there should be an eagerly-evaluated language at the base of the system, though.
16:34:23 -!- lament has joined.
16:35:35 <CakeProphet> hmm... the hash idea would be problematic with a stateful tree, actually.
16:36:10 <CakeProphet> then movement of a branch would invalidate all hash-based references.
16:37:31 <Phantom_Hoover> The hash table contains the machine pointers to the nodes.
16:37:56 <Phantom_Hoover> Two mmapped bits of tree have the same pointers for different keys.
16:39:09 -!- BeholdMyGlory has quit (Remote host closed the connection).
16:39:23 -!- BeholdMyGlory has joined.
16:42:16 <Phantom_Hoover> I think for the low-level one that the programmer should have to specify the node structure.
16:42:53 -!- lament has changed nick to _lament.
16:44:11 <CakeProphet> Phantom_Hoover: what kind of semantics will be involved in specifying node structure?
16:44:46 <CakeProphet> also... when attempting to evaluate data as code... you'll likely want some kind of quote system, like Lisp.
16:46:13 <CakeProphet> hmmm... this is where enumeration will come in handy
16:46:55 <Phantom_Hoover> And they'll have to be ordered for the addressing scheme to work.
16:47:08 <CakeProphet> so I'd say use arrays for node relationships... the hash table would be for naming.
16:48:46 <CakeProphet> an additional semantic that I liked was the inclusion of name-only nodes.
16:49:43 <CakeProphet> so for example... a language that wanted to implement functions
16:49:50 <CakeProphet> could add a .return node to function nodes
16:50:33 <CakeProphet> .return would contain a reference to the calling code
16:51:25 <CakeProphet> so a lazy language could implement functions by a) making a copy of the function node, to represent a lazily-evaluating code object b) set the copy's .return node to reference calling code's node.
16:52:46 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds).
16:55:21 <CakeProphet> so the inclusion of a naming scheme that's independent of the enumeration semantics
16:55:48 <CakeProphet> one of the points of a VM is to be more semantically abstract than machine level code
16:58:27 -!- DH____ has left (?).
17:04:14 * uorygl ponders an ad-hoc addressing scheme.
17:05:02 <uorygl> Suppose that we have a network containing a whole bunch of routers. One of these routers is connected to five other routers; these other routers give their addresses as 00000111, 01011101, 10010111, 10011010, and 10101010.
17:05:51 <uorygl> What should our router give its own address as to each of the other five routers in order to best express its routing ability?
17:07:24 <CakeProphet> I'd need to see how those other addresses were produced.
17:07:48 <uorygl> That information is simply not available.
17:09:41 <uorygl> But routing is always done to the router with the largest shared prefix. Like, all packets with a destination address beginning with 01 go to 01011101, because that's the only neighbor router that also begins with 01.
17:10:26 <uorygl> So the goal is to make sure a packet never gets stuck.
17:12:01 <uorygl> Let's call the neighboring routers A, B, C, D and E. 00 packets go to A, 01 packets go to B, 1000 packets go to C and D, 10010 packets go to C, 10011 packets go to D, 101 packets go to E, and 11 packets go to C through E.
17:12:38 <CakeProphet> so I think you'd have a depth to addresses
17:13:26 <CakeProphet> the right-hand byte is the mask byte for a depth-2 lookup
17:13:50 <CakeProphet> it basically just clears out all the extraneous bits for the purpose of determining which router we should route to.
17:16:04 <CakeProphet> so you'd have 10000000 11000000 11100000 11110000...
17:19:28 <CakeProphet> the address could be the bitwise AND of all the routers it routes to.
17:19:45 <CakeProphet> since the semantics for routing are left-to-right, it would cover any overlaps.
17:21:16 <CakeProphet> so if something wants to ask "does router C with address 00101010 map to router B with address 00100010 "
17:23:36 <CakeProphet> and find a bit in C that's on at the same place as in B
17:23:57 <CakeProphet> if there is one... chop it out of the search bit
17:25:21 <CakeProphet> so the first 1 to be found going left-to-right that those two bit patterns have in common is 0010
17:26:25 <CakeProphet> which is the query we want to pass along to all of the routers routed by C
17:26:37 <CakeProphet> C will then ask "hey do you guys route to 00000010?"
17:31:51 <CakeProphet> in any case it would be a lot of bitwise hackery
17:41:30 <CakeProphet> then you can just have the bits reflect which branch you're talking about
17:41:51 <CakeProphet> you start at root... the first bit tells you which branch you go to
17:42:02 <CakeProphet> second tells you the second branch to goto, etc.
17:43:35 <CakeProphet> you could actually perform movement within the tree with bitwise operations only.
17:44:57 <CakeProphet> so the lower-level language would have instructions for setting/operating a register that controls current tree location.
17:47:40 <CakeProphet> well no, the addressing would be a little more complicated than that
18:06:34 <uorygl> CakeProphet: if a router's address is the bitwise AND of the routers it routes to, a single zero will spread throughout the entire network.
18:10:35 <uorygl> Then a single 255 will spread throughout the entire network. :)
18:11:13 <CakeProphet> ...that's why there needs to be a mask somewhere.
18:11:16 <AnMaster> hm anyone remember what happens in a case statement if you don't have a default: and the value turns out to be not one of the listed ones?
18:11:32 <uorygl> Right. I'm afraid I don't understand you fully, then.
18:11:35 <AnMaster> it seems gcc generates different code for not having a default: vs. having "default: break;"
18:14:38 <AnMaster> it should make no diff according the C99...
18:16:15 <CakeProphet> uorygl: hmmm... the address needs to be something that can be bitwised with information given elsewhere to determine information about the network point.
18:16:47 <CakeProphet> what could fill in the blanks there for "information given elsewhere" and "something that can be bitwised"
18:35:35 <AnMaster> fizzie, I just calculated what a 360° degree panorama from my camera mounted vertically at max zoom (200 mm in 35 mm equiv.) would give. With decent overlap: 52 images. This is 728 MB of RAW image data from my camera. And the final image would be at about 287.6 megapixles (this is based on overlap being gone, so 36 images instead of 52)
18:36:30 <AnMaster> fizzie, do you think you could lend me that super system at your university for the HDR stitching? I would mail you the 16 bit tiffs ;P
18:36:59 <AnMaster> (with HDR it would be even more raw data than "just" 728 MB of course!)
18:38:49 <AnMaster> fizzie, at least zoom it is a much more manageable 11 images
18:39:54 <AnMaster> hm fizzie seems away but isn't marked /away
18:40:38 <uorygl> I'm away a majority of the time but I'm rarely marked as such.
18:48:15 -!- Gracenotes has joined.
18:51:26 * Gracenotes creates several screenfuls worth of dadaist user page
19:44:41 <fizzie> AnMaster: I have this thing that auto-marks me away when xlock activates, but it seems to be broken at the moment. I can never remember to actually do /away, except when leaving work.
19:45:03 <fizzie> (I was picking up the cat from its temporary place.)
19:52:33 -!- zzo38 has joined.
20:32:25 <AnMaster> fizzie, anyway, yay I managed to make a reliable rotation function
20:32:58 <AnMaster> since it likes to start at 0xffff instead of 0x0
20:33:17 <AnMaster> so I had to handle overflow when rotating
20:33:54 <AnMaster> but now it can move reliably in multiples of (360/111.66666) degrees!
20:34:05 <AnMaster> (yeah weird number, but I blame crappy gears)
20:35:26 <fizzie> Speaking of Lego, I guess you might've seen this one before, but it's pretty nifty: http://www.youtube.com/watch?v=zX09WnGU6ZY
20:37:51 <AnMaster> I don't think I seen it before
20:38:26 <fizzie> It's a custom-built thing, not a mindstorms thing. But still.
20:39:23 <AnMaster> iirc "ultimate builders set" lego mindstorms ad-on set had some plotter thing
20:40:19 <AnMaster> fizzie, it used pneumatics for the pen so fairly slow speed. I mean, much slower than that video
20:40:29 <AnMaster> fizzie, also yeah the cups driver was a nice touch
20:40:52 <fizzie> The comments refer to http://bricker.ru/images/sets/1092_brickset.jpg
20:42:15 -!- MigoMipo has joined.
20:42:31 <AnMaster> fizzie, also that printer head causes some serious swaying of the whole thing
20:43:12 <AnMaster> fizzie, ah, hm http://www.peeron.com/inv/sets/1092-1
20:43:18 <AnMaster> yeah that explains the old style motor
20:43:37 <fizzie> "FAQ: Just a remake of the 1092a? No, I'd never seen the 1092a until now. However some of the parts came from a 8094 kit amongst others many years ago. It is made to my own design, but I acknolwedge influences and the great work of the official lego designers !"
20:44:52 <AnMaster> fizzie, I do get the point of those mini figures at the control panels
20:45:37 <fizzie> Yes, I don't know what's up with that.
20:45:43 <fizzie> The poster seems to have a thing about horses.
20:45:48 <AnMaster> fizzie, also, I can only spot one motor
20:45:54 <AnMaster> fizzie, I can't find the second one
20:45:58 <AnMaster> and you would need at least two
20:46:04 <fizzie> I haven't looked at it so closely.
20:46:20 <zzo38> Finally I got ngIRCd to compile and run. It works now. (You can't currently connect to it from the internet; the router is not set yet and it is only in testing mode)
20:46:33 <AnMaster> and it can't be a micro motor, they are way slower, than the speed of the pen, plus rather weak (so gearing them that much is not feasible
20:47:12 <zzo38> How much memory and CPU time will an IRC server software take up if I am also using the computer for a lot of other things too?
20:47:30 <fizzie> That depends a lot on how large a network it is.
20:47:49 <fizzie> Probably not a lot, then.
20:48:15 <AnMaster> fizzie, also I want to see the sensor setup
20:48:23 <AnMaster> doesn't seem to be standard lego sensors
20:48:26 <zzo38> I had to completely reinstall Cygwin for it to work
20:48:36 <AnMaster> because there is no way it could keep position that well without good sensors
20:48:43 <AnMaster> lego gears have way too much slippage
20:48:48 <fizzie> AnMaster: "FAQ: Does this use mindstorms? Nope, wiring demo board + homemade analog electronics and sensors."
20:49:10 <fizzie> AnMaster: "FAQ: Sensor info: Horizontal positioning using homemade shaft encoder (black/white rotating lego squares you see in the vid) with a SY-CR102 photo reflector from Maplins, (only £0.89 or $1.30)."
20:49:19 <fizzie> AnMaster: "... This is into a sampled analog input as I couldn't get full enough saturation to trigger the ext interrupt pins. There are also push buttons built into lego bricks for left and right end stop detection."
20:50:09 <zzo38> What exactlly is it you are making with the lego now?
20:50:12 <fizzie> And "FAQ: Open source, schematics etc? Yes, I'll try to get around to this soon."
20:50:29 <AnMaster> zzo38, me? an automated panorama taker
20:50:39 <AnMaster> it uses mindstorms (RCX, not the new NXT, don't have that)
20:50:57 <AnMaster> fizzie, "FAQ: Wrote your own driver? Yes, how sad is that!!"
20:51:25 <zzo38> Did you know, there is a Forth for Lego systems
20:51:34 <AnMaster> zzo38, I know about pbForth yes
20:51:42 <AnMaster> but I'm using BrickOS and C here
20:52:03 <zzo38> C would probably be faster anyways
20:52:12 <zzo38> But Forth is almost as fast as C
20:52:15 <AnMaster> zzo38, well, I'm doing rather embedded C...
20:52:36 <zzo38> Still, C is generally faster
20:52:38 <AnMaster> zzo38, an example is: http://sprunge.us/QXMB
20:52:45 <AnMaster> fizzie, you might want to see that too
20:53:20 <AnMaster> because I'm not using brickOS as such, I'm using a patched version called bibo, since it fixes lots of bugs and upstream brickOS development is dead
20:53:43 <AnMaster> however bibo dropped the preemptive multitasking in favour of cooperative multitasking
20:54:25 -!- ais523 has joined.
20:54:25 -!- ais523 has quit (Changing host).
20:54:25 -!- ais523 has joined.
20:54:34 -!- ws has joined.
20:54:40 <AnMaster> the interrupts caused quite a bit of overhead
20:55:14 <zzo38> Now I can just use "sprunge QXMB", sprunge pastebin really is very better than the other one, I think
20:55:43 <AnMaster> zzo38, what? did you add an alias in your browser or such?
20:56:04 <AnMaster> zzo38, sprunge for me pastes to it, not views paste on it...
20:56:15 <zzo38> I type "sprunge QXMB" at the command-line and it put output to stdout
20:56:25 <AnMaster> zzo38, and how do you paste to it?
20:56:33 <zzo38> For me, I wrote my own script. "sprunge" without a argument pastes to it, with a argument views it
20:56:42 <AnMaster> zzo38, and to paste a file to it?
20:56:51 <zzo38> Just type "sprunge < file.txt"
20:57:32 <zzo38> It is written using NT command script, but a similar way could be done in UNIX
20:57:57 <AnMaster> zzo38, whole current source is http://sprunge.us/ffMD
20:58:30 <AnMaster> ais523, I think you would be interested in it, but since you filter urls... and 156 lines is a bit too long for IRC directly :P
20:58:59 <AnMaster> zzo38, sure, I use a sprunge() { curl -F 'sprunge=<-' http://sprunge.us; } simply
20:59:05 <AnMaster> then I can redirect input to it
20:59:37 <AnMaster> zzo38, I don't need a viewing script for it
21:00:15 <AnMaster> so yeah making the shell function do that would be trivial
21:00:22 -!- alise has joined.
21:00:25 <AnMaster> (I don't even have it as a script, just a shell function)
21:01:25 <AnMaster> building wise the only thing that remains on my panoramic head is the shutter trigger
21:01:39 <AnMaster> I wonder how feasible it would be to trigger it electronically using the remote shutter thingy
21:01:45 <AnMaster> I don't think I have the required stuff
21:01:55 <AnMaster> to build a controlling circuit
21:04:30 <AnMaster> and I think the light sensor needs some adjustment to work well
21:04:31 <alise> It is criminal that these weekends are so short.
21:05:13 <alise> 00:55:34 <Phantom_Hoover> Wow, Eliezer Yudkowsky is very odd.
21:05:14 <alise> 00:56:59 <Phantom_Hoover> Apparently not signing your children up for cryonics makes you a bad person.
21:05:14 <alise> If you support cryonics this is perfectly reasonable: you are basically sentencing them to death -- like Logan's Run except you set the date at 80-odd.
21:05:26 <alise> 00:59:27 <Phantom_Hoover> OTOH, my philosophy makes cryonics pointless, so...
21:05:26 <alise> "My Philosophy" is almost as irritating a phrase as "My GIRLFRIEND".
21:05:56 <alise> Because that's how "my girlfriend" is pronounced in my internal vocalising system.
21:06:00 <alise> 01:30:02 <Phantom_Hoover> lament: Doesn't cryonics work by freezing you after you die?
21:06:00 <alise> That's supposing ~(cryonics works) to prove ~(cryonics works).
21:06:10 <AnMaster> alise, aren't you going to move abroad?
21:06:26 <ais523> AnMaster: don't encourage her...
21:06:29 <alise> Anyway even if I didn't accept cryonics I do not believe that any definition of death other than information-theoretic death is acceptable.
21:06:41 <alise> It used to be "when your heart stopped".
21:06:47 <alise> ais523: Don't encourage me to what, and why?
21:07:04 <ais523> hmm, I'm not sure actually
21:07:15 <ais523> there was a pronoun discussion in another channel, so I was more hoping reaction to that
21:07:37 <alise> ais523: It's a good thing you didn't mean anything because almost any meaning I can assign to that line offends me :)
21:08:45 <alise> ais523: I don't suppose you have any eso solutions to my problem?
21:09:13 <ais523> to which problem? the one that we mostly only talk about in private? no
21:09:32 <ais523> I did invent a new esolang in my head a few nights ago, though
21:09:39 <ais523> no name yet, no real fixed syntax, just semantics
21:09:43 <alise> I has liek a private network of informational dissemination
21:09:53 <alise> Actually this ircd really needs to support /query a,b,c.
21:09:53 <zzo38> ais523: How does it work?
21:10:01 <alise> It'd be very useful for ad-hoc privacy.
21:10:10 <zzo38> What is /query a,b,c
21:10:13 <ais523> basically, there are a finite number of variables, chosen by the person writing the program
21:10:17 <ais523> each is a rational number
21:10:25 <ais523> zzo38: query/privmsg with more than two people
21:10:27 <alise> zzo38: you can do "PRIVMSG a,b,c :poop" in the IRC RFC protocols
21:10:29 <ais523> but Freenode blocks it
21:10:32 <alise> to send a message to a, b, and c
21:10:39 <alise> ais523: say, does the message indicate the other recipients?
21:10:43 <ais523> each variable stores an unbounded rational number, and is initialised to 1
21:10:44 <alise> it should do, so that it operates as an ad-hoc channel
21:10:49 <ais523> alise: I think so, probably at the start of the line
21:11:01 <alise> That's just the hostname.
21:11:15 <ais523> as in, :hostname.whatever PRIVMSG a,b,c :poop
21:11:37 <ais523> might be rather long though
21:11:42 -!- augur has quit (Remote host closed the connection).
21:11:54 <ais523> the program is full of statements like a = b + c and f = g / h
21:12:07 <ais523> basically, assigning the result of an arithmetic operation to a variable
21:12:08 <alise> ais523: ok, so currently that just sounds like rational arithmetic.
21:12:15 <alise> ais523: although really -- don't you want a*b and ^-1?
21:12:26 <alise> ais523: whysoever not?
21:12:40 <ais523> well, + - * / are what exist
21:12:45 <alise> 02:17:15 <Phantom_Hoover> And Ruby is implemented in C? [...] 02:17:35 <Phantom_Hoover> THEN IT'S NOT TC.
21:12:51 <ais523> I'm not sure yet if you're allowed to use constants rather than variables
21:12:55 <alise> no, it's just that MRI isn't actually a Ruby implementation
21:13:04 <alise> ais523: you don't need full - and /...
21:13:07 <alise> just infix - and ^-1
21:13:08 <ais523> now, the eso part: the program runs statements at random
21:13:17 <alise> ais523: TARPIT IT GRRRR
21:13:24 <ais523> as in, each time it runs a statement, it picks a random statement and runs it
21:13:30 <ais523> the program terminates if it tries to do a division by 0
21:13:47 <ais523> it's not obvious either way, I've been thinking about it for a while
21:13:50 <zzo38> I have made a esolang where dividing by zero is the only form of flow control
21:14:13 <ais523> (and it's possible that removing + and * and arbitrary / would change the computational class; the random execution prevents you "lumping" statements easily)
21:14:21 <AnMaster> ais523, can it do deterministic computation at all?
21:14:28 <zzo38> ais523: I don't know if it is TC?
21:14:36 <zzo38> Perhaps post it on the wiki, and then we can see
21:14:43 <ais523> AnMaster: I think so, if you use enough variables; but I'm not sure if it can do /useful/ deterministic computation
21:14:52 <ais523> I need to work out syntax and a name before I post it on the wiki...
21:14:58 <AnMaster> ais523, how do you mean with enough variables?
21:15:18 <ais523> AnMaster: well, suppose you want to calculate a + b + c + d
21:15:21 <AnMaster> ais523, well apart from the degenerate case of only one expression
21:15:29 <AnMaster> ais523, ah okay, order is irrelevant there
21:15:34 <ais523> if you use temp variables, as in e = a + b; f = e + c; g + c + d
21:15:55 <AnMaster> ais523, only two variables and one operator per assignment?
21:16:01 <ais523> then if it's the only thing you ever calculate and all the variables are >= 1, then you know that g is <= the actual answer
21:16:06 <alise> 02:37:21 <PH______________> (set-weight neuron output (+ (car range) (random (coerce (- (car range) (cdr range)) 'double-float)))))
21:16:11 <alise> set-weight --> setf (weight neuron)
21:16:29 <ais523> how do you know set-weight isn't a macro that does that?
21:16:29 <alise> ais523: If it's TC, then randomness shouldn't matter.
21:16:36 <alise> ais523: Also, no, you define setf macros.
21:16:39 <alise> They can do anything.
21:16:48 <alise> Anything that sets should be (setf (some-relevant-accessor x) ...).
21:16:56 <alise> It's Lisp good-practice.
21:17:01 <ais523> alise: it's obviously nondeterministic, but as you say, I think it's entirely possible that you can arrange things so the randomness is irrelevant
21:17:33 <alise> ais523: well, no, because you could just by chance get 1,2,3,... out of a randomness generator every time
21:17:35 <zzo38> There is the esolang where it is not TC, but there is a command that makes it TC
21:17:42 <zzo38> Or at least that is what it says.
21:17:43 <alise> so if it's actually tc it has to work with every "random" result
21:17:47 <alise> thus the randomness is irrelevant
21:17:49 <alise> zzo38: oerjan's thing yeah?
21:17:58 <zzo38> alise: Yes, I mean that.
21:18:05 <AnMaster> ais523, does it remove computed statements?
21:18:29 <alise> ais523: I am pretty sure your thing doesn't have loops of any sort.
21:18:35 <zzo38> However, it is TC if there is a program that can be written and work in all 256 ways, I suppose. Otherwise it is not TC but there is a command to make it TC?
21:18:39 <ais523> alise: statements can run more than once
21:18:49 <ais523> each time it picks a random statement, regardless of whether it's run before or not
21:18:59 <ais523> so from another point of view, it has loops everywhere
21:19:14 <alise> ais523: How about if an operation a = b OP c would cause a division by zero, we jump to a by somehow interpreting it as a line number.
21:19:22 <alise> (Two-dimensional line numbers? (a,b) PRINT ...)
21:19:30 <ais523> alise: I don't understand
21:19:33 <AnMaster> ais523, how would you make it divide by zero only when things are done?
21:19:39 <ais523> there is a jump somewhere randomly all the time
21:19:51 <alise> then it'd jump to 1/2
21:19:54 <alise> whatever that means
21:19:54 <ais523> alise: only set the variable in the denominator to 0 when you detect that things are done
21:19:58 <AnMaster> ais523, I could see how if you had some logical operator, like == or such
21:19:59 <ais523> alise: I don't get the notion of "Jump" here
21:20:07 <alise> ais523: "execute 1/2 as next line, not random()"
21:20:11 <ais523> AnMaster: you can compare numbers with a 0/non-0 result using -
21:20:14 <alise> figure out twod line numbers yourself :P
21:20:16 <ais523> alise: that would defeat the whole point of the language
21:20:22 <alise> maybe floor(1 / 2)
21:20:32 <ais523> executing random() is clearly enough for repetition of some sort
21:21:20 <AnMaster> ais523, it can be TC under the condition of a rng that never repeats itself and in enough _finite_ time will cover all states several times
21:22:01 <AnMaster> that solves the issue alise is pointing at I think
21:22:01 <ais523> AnMaster: it wouldn't be an RNG otherwise
21:22:08 <ais523> we're assuming a mathematically perfect RNG
21:22:18 <ais523> although /dev/urandom would probably be good enough
21:22:19 <alise> ais523: a mathematically perfect RNG would repeat itself, I think...
21:22:23 <alise> ais523: or at least could
21:22:25 <AnMaster> ais523, well then 1,2,3,1,2,3,... is not an issue?
21:22:27 <ais523> alise: yes, but not forever
21:22:33 <alise> ais523: or are we talking 0 to /infinity/ RNG?
21:22:35 <ais523> well, with probability 1
21:22:42 <alise> which I am not even sure makes sense
21:22:46 <alise> can you select a completely random natural?
21:22:46 -!- tombom has quit (Read error: Connection reset by peer).
21:22:50 <ais523> alise: 0 to the number of statements in the program
21:22:54 <ais523> as in, you run a random statement each time
21:22:57 <ais523> that isn't 0 to infinity
21:22:57 <alise> such that you're distributed fairly over the naturals?!
21:22:58 -!- tombom has joined.
21:23:04 <ais523> but you call the RNG an infinite number of times
21:23:07 <ais523> or until the program terminates
21:23:11 <ais523> to get the next statement each tiem
21:23:41 <zzo38> Perhaps zero to infinity RNG is sensible if you have to use p-adic numbers?
21:24:11 <zzo38> But even then, it isn't perfect, because ....11111 can just as well represent negative one
21:24:15 <zzo38> Which is less than zero
21:25:32 <zzo38> And .....01010101010101 can represent negative one third
21:25:51 <zzo38> (Try multiplying by three and adding one and you will see that the answer is zero)
21:25:57 <AnMaster> zzo38, why would we need negative numbers here at all
21:26:11 <zzo38> In case you subtract, I suppose?
21:26:25 <AnMaster> zzo38, not needed for statement selection?
21:27:50 <zzo38> But dividing by zero is the form of flow control is something I have already invented: http://esoteric.voxelperfect.net/wiki/Divzeros
21:32:37 <zzo38> In PHIRC, I can easily test my IRC server just with the command "/C" by itself, without any parameters. "/C" by itself assumes "/C localhost 194" automatically, do you like this feature? Does any other IRC clients have that feature?
21:37:08 <zzo38> I already found out how to disable all channels other than "+" at the start, and to change the 005 message to match. There is no configuration setting for that so I had to modify the source-codes
21:38:09 <zzo38> Can SUMMON be enabled?
21:39:15 <fizzie> No, it would be then too easy to SUMMON CTHULHU by accident.
21:40:31 <zzo38> I don't care about that
21:40:34 <zzo38> Can USERS be enabled?
21:41:16 <zzo38> In ngIRCd it seems SUMMON is always disabled, although it does understand that command
21:41:21 <zzo38> But it cannot be enabled
21:44:40 <zzo38> Is there a way to make the HELP command work better? So that you can receive a help message, even before PASS/USER/NICK
21:47:46 <zzo38> I want to make it so that some nicknames can't be used unless the correct PASS and USER commands are given for that nickname
21:49:59 -!- oerjan has joined.
21:51:06 <zzo38> Now I just should implement SIRCL format for channel log and then it should be working
21:51:11 <zzo38> And then I can set the router
22:07:12 <alise> The pik of the hq is absent.
22:09:03 -!- Phantom_Hoover has joined.
22:12:46 <Phantom_Hoover> It occurs to me that most esolang interpreters are really VMS.
22:13:19 <Phantom_Hoover> Since they tend to have nothing to do with the underlying system.
22:13:40 -!- relet has joined.
22:14:50 <oerjan> but not HQ9+. the + character clearly should increment the underlying system's accumulator.
22:15:12 <oerjan> otherwise it has simply not been implemented correctly.
22:15:31 <oerjan> this might of course pose a problem in systems that have no accumulator.
22:15:41 <Phantom_Hoover> Unless the implementation is optimising and strips out unnecessary instructions.
22:16:35 <Phantom_Hoover> It occurred to me that my addressing scheme needs different instructions for equality,
22:17:26 <Phantom_Hoover> Since 00000.* always refers to the root node, and so on.
22:19:25 <ais523> oerjan: my Thutu implementation of HQ9+ uses its own emulated accumulator
22:19:38 <ais523> because it's too abstracted to know if there's an underlying accumulator or not
22:20:43 <oerjan> 's fault if thutu is too removed from the underlying machine
22:21:45 * oerjan has no idea whether x86 has an accumulator.
22:26:59 <alise> eax is the accumulator
22:29:33 <alise> It is Friday, is it not?
22:29:43 <alise> And a most excellent Friday too, might I add, for no reason other than to give me a second line to write.
22:29:53 <Phantom_Hoover> OK. Read the logs and comment on the tree-based VM idea.
22:30:02 <oerjan> Phantom_Hoover: there is no alise, it's just a talking weather balloon. or maybe a talking venus.
22:30:54 <alise> Phantom_Hoover: No; I demand distilled information!
22:30:59 <alise> (Or at least log links.)
22:31:24 <Phantom_Hoover> The basic idea was to have a global tree in which code and data are stored.
22:31:38 <oerjan> ais523: oh btw you forgot to delete Talk:Joke languages
22:31:54 <oerjan> *Category talk:Joke languages
22:32:29 <ais523> not sure how I missed that one
22:32:37 <alise> Why delete that category?
22:32:47 <alise> I hereby register my disagreement.
22:32:51 <oerjan> also Category:Algorithmic information theory
22:33:04 <alise> Delete that one, yes.
22:33:10 <oerjan> alise: um the talk page, which was spam
22:33:26 <alise> Algorithmic information theory shouldn't be a category.
22:33:30 <alise> Only John Tromp uses it.
22:33:49 <oerjan> oh hm it actually has an article
22:33:56 <ais523> oerjan: deleted and semisalted
22:34:48 <alise> I'm merely supporting it even more strongly.
22:34:58 <alise> Anyway suck my Dijkstra. (I will henceforth use this insult forevermore.)
22:35:01 <Phantom_Hoover> Also, I thought you might like http://en.wikipedia.org/wiki/Talk:Lambda_calculus#Proposed_criticism_of_lambda_calculus
22:35:04 <Sgeo> alise: I've come to hate LambdaMOO
22:35:47 <Sgeo> Well, not "hate", but I ask why people don't care about keeping the library organized, so newcomers could easily find things, and they said that newcomers could always just ask them
22:35:52 <alise> lol @ http://en.wikipedia.org/wiki/Talk:Lambda_calculus#Proposed_criticism_of_lambda_calculus
22:36:01 <alise> His interests include astronomy, search engines, programming, computer graphics, ergonomics, electronic encyclopedias, and advanced wiki-formattting. He's the guy, in school, that corrected the answers in the back of the Physics textbook ("Don't ya hate people like that?").
22:36:08 <Sgeo> Seems like more of a "Don't bother RTFM, just ask us"
22:36:09 <alise> but then, earlier:
22:36:10 <alise> Wikipedia user Wikid77 is an American computer scientist, world traveller, and wiki-inventor.
22:36:17 <alise> fucking pretentious fuckwit kid ARH
22:36:31 <alise> what is it with SUPER SMRT kids and being... like that
22:36:33 <Phantom_Hoover> Don't read the TV Tropes Troper Tales pages for Mary Sue.
22:36:35 <alise> I'm not like that am I?
22:36:41 <Sgeo> Wouldn't a computer scientist actually appreciate lambda calculus?
22:37:03 <Sgeo> alise, I'm considered super-smart relative to the other computer students at my school, mostly
22:37:07 <Sgeo> At least, I think
22:37:44 <Phantom_Hoover> Compared to my fellow computing students I am Donald Knuth.
22:38:27 <alise> IRC user Elliott Hird is a British computer scientist, mathematician, philosopher and typographer.
22:38:33 <alise> *is a renowned British
22:40:03 <alise> 05:05:56 <AnMaster> (sorry for slow reply, had to clean my glasses due to small accident there)
22:40:06 <alise> We did not need that information.
22:40:19 <alise> 05:10:47 <AnMaster> fungot uses SOCK and a few other ones for example
22:40:19 <alise> Please don't tell us what you use. This has gone too far.
22:40:20 <fungot> alise: all because r2q2 said yow to you? fizzie said earlier that a befunge program that solves: 2x2 4x 1 0 deewiant anmaster: i wouldn't.
22:40:25 <Phantom_Hoover> Oh, look Wikid77 has been in the West US, the East US, the Northeast US, the Southeast US *and* the other US.
22:40:39 <alise> The "Other" region of the US.
22:41:03 <Sgeo> Non-continental US?
22:41:13 <Sgeo> Erm, that doesn't technically describe Alaska, does it
22:41:27 <Sgeo> Non-contiguous?
22:41:28 <alise> The User:Wikid77 is a long-term user on English Wikipedia (editing since 2001) and German Wikipedia, who also edits Wikimedia Commons in 20 languages. He is an American computer scientist, mathematician, information scientist, and world traveller.
22:41:35 <alise> Information scientist and world traveller.
22:42:12 <alise> Originally intended as the "sum of all knowledge" (vision), wiki efforts continued as the "sum of all censorship" in late 2008, as suggestions were deleted, text was trimmed or simplified, with images or maps cut to reduce data. Many people quit in disgust during 2006-2008, unable to handle the negative chaos.
22:42:17 <Phantom_Hoover> Incidentally, I joined in with the tree idea for the purpose of making a VM that could do functional programming on a low level.
22:42:24 <alise> "This user lives in Texas."
22:42:26 <alise> oh I can stop reading now
22:42:38 <alise> Phantom_Hoover: real machines that do functional programming on a low level exist
22:42:40 <alise> Google "Reduceron"
22:43:21 <Sgeo> alise, I'm thinking of making a gaming computer
22:43:30 <alise> Phantom_Hoover: wow, that wiki is like a cross-referenced masturbation video.
22:43:44 <alise> Sgeo: I can give you all the specs and it will cost super cheap and be most excellent. Also, I will give you humble service.
22:43:54 <ais523> alise: is that a good thing?
22:44:15 <Sgeo> On Intel's website: "How many programs will you run at once?" The max option: 4+
22:44:18 <alise> Lumenism is a system for discovering and organizing information particularly on controversial topics. Here's how:
22:44:18 <alise> Debates are made more fruitful and civil by techniques or technology that allow quick, back-and-forth dialogue, while enforcing time/attention restraints using time-enforced dialogue (ted) and wikibrawl methods.
22:44:18 <alise> Clarifying terminology using neologisms.
22:44:18 <alise> Efficiently organizing and storing information to avoid repetition and enable newcomers to quickly and conveniently see if the answer to their question is in this information storage place. A wikiforum is particularly suitable to this goal, but a wikiforms' function can be simulated with with paper or voice, for people who don't own networked computers, for information that requires greater privacy, or for people who do not want to become a cripled philosoph
22:44:23 <alise> er (knowledge lover) like Lumenos.
22:44:25 <alise> Establishing the largest consensus groups possible.
22:44:27 <alise> Research how a lumeniki may be improved to maximize liberty by avoiding power being concentrated in the hands of administrators or the owners of the servers:
22:44:30 <alise> Allowing modularity so that anyone can easily extract part of the wiki and move it to a different host, sponsor, governor, or legal agreement.
22:44:33 <alise> Make LumenikiLu useful to readers by allowing them to customize how the content is filtered for them to see rather than administrators censoring what everyone sees.
22:44:36 <alise> Governance decision power delegated by the wiki software when consensus is not happening: A one-vote-per-person "democratic" system would require identification of people and have disadvantages in terms of privacy and convenience. An alternative would be a meritocratic system that would delegate power based on the amount of content contributed (which is recognized to be valuable). This would avoid cheating with sock puppets and some mistakes due to lack of e
22:44:41 <alise> xperience. The idea of software making the decisions (see technocracy) is to achieve real rule-by-law where laws are so perfected they can be carried out by computers/robots. You might think this would re
22:44:44 <alise> quire very wise and benevolent policy makers, well sort of, actually power checks are built into the (educational) system although any system may devolve into non-pareto or non-utilitarian, authoritarian hierarchies if not maintained by (the majority of) persons who are either benevolent and/or intelligent enough to maintain it. That is undoubtedly the Truthism.
22:44:44 <Sgeo> "What kind of social networking do you want to do?" WTF?
22:44:49 -!- coppro has joined.
22:44:51 <alise> Yes, a huge flood.
22:44:53 <alise> But dammit, the world has to see.
22:44:55 <Phantom_Hoover> He turned up at Wikiindex after an incident I don't want to explain, and he wikilawyered for *weeks*.
22:44:55 <alise> It goes on: http://lumeniki.referata.com/wiki/Lumenism
22:45:20 <ais523> alise: incidentally, an automatically enforced 3RR automatically makes wikis democratic, if everyone can be bothered to use all their reverts
22:45:43 <Phantom_Hoover> Although I have an account there, along with a couple of others from RationalWiki.
22:45:47 <ais523> Phantom_Hoover: how /can/ you wikilawyer for weeks without everyone just ignoring you?
22:46:49 <Phantom_Hoover> http://www.wikiindex.org/WikiIndex_talk:Policies_and_Guidelines
22:47:48 <alise> That repeated "i" is irritating.
22:49:12 <Phantom_Hoover> As best I can tell, most of the sane people went to another site, and only a few idiots remained.
22:57:31 <zzo38> I think I found a bug in ngIRCd
22:58:23 <zzo38> If you create a + type predefined channel, it will set server operators as channel operators anyways, even though that shouldn't be allowed. (The MODE command doesn't work for modeless channels anyways, though)
22:58:35 <zzo38> Usually there is no use for + type predefined channel
22:58:56 <zzo38> But now I want to add in a function to make it so predefined channels are the ones which are automatically logged
22:59:01 <zzo38> I can fix that bug
23:01:59 <zzo38> Probably nobody cares about that bug anyways, but I will fix it anyways. The only reason I need predefined channels is for two reasons: Topic messages and automatic logging (using SIRCL format). There should not be any operators, even server operators should not be allowed to change topics or anything else on + type channels.
23:02:26 -!- augur has joined.
23:05:20 -!- BeholdMyGlory has quit (Remote host closed the connection).
23:12:26 <Phantom_Hoover> OK, like I said the only (or at least primary) data structure is a tree.
23:13:39 <Phantom_Hoover> There is a low-level language operating on this level.
23:14:04 <Phantom_Hoover> Which is eagerly-evaluated, possibly by traversing the tree depth-first.
23:15:40 -!- coppro has quit (Ping timeout: 240 seconds).
23:16:22 <Phantom_Hoover> The addressing scheme I came up with was that the first 5 bits specified the depth, and the next 27 specified the path from the root node.
23:17:23 <Phantom_Hoover> CakeProphet had the idea of making this faster by having a hash table of the pointers in physical memory corresponding to the address.
23:18:08 <alise> <Phantom_Hoover> The addressing scheme I came up with was that the first 5 bits specified the depth, and the next 27 specified the path from the root node.
23:18:46 <alise> My suggestion: 0 is /, 1 is a bit.
23:18:48 <alise> There's your path.
23:18:56 <alise> 11101111 is 111/1111
23:19:00 <alise> Phantom_Hoover: Sigh.
23:19:25 <alise> Deterministic is the first word.
23:20:31 <alise> Phantom_Hoover: It's boooooooring :P
23:21:05 <Phantom_Hoover> Since it doesn't pretend to be TC while written in C, like everything else is.
23:22:02 -!- coppro has joined.
23:22:05 <alise> You confuse languages with implementations.
23:22:09 <alise> You should die because of this.
23:22:31 <Phantom_Hoover> TC implementations are non-existent, so it's not that awful.
23:23:20 <coppro> why is that always bad? Some languages effectively are their implementations, like Perl
23:24:28 <Sgeo> Wait, Perl doesn't have formal specs?
23:24:55 <alise> <Phantom_Hoover> Why is it so bad if it's not TC?
23:24:55 <alise> <Phantom_Hoover> It's honest.
23:24:55 <alise> <Phantom_Hoover> Since it doesn't pretend to be TC while written in C, like everything else is.
23:25:09 <alise> this "TC isn't valid because [some facet of the universe] isn't TC" thinking is a disease
23:25:12 <coppro> Sgeo: Sure it does. it's written in C
23:25:16 <alise> and must be stomped upon with great force at every opportunity
23:25:50 <Sgeo> And the universe is finite
23:26:04 <Phantom_Hoover> It's a fantastically useful theoretical concept, but isn't real.
23:26:08 -!- augur has quit (Ping timeout: 240 seconds).
23:26:28 <Sgeo> But that doesn't mean languages, as described, aren't theoretically, if not physically, TC
23:26:35 <alise> Phantom_Hoover: Graham's number isn't real!
23:26:39 <alise> Ultrafinitism forever!!
23:26:58 <coppro> there's no proof that the Universe isn't TC
23:27:33 <Phantom_Hoover> What's wrong with saying that TC isn't real, but is useful in mathematics?
23:27:48 <coppro> and in fact, there is evidence suggesting that the Universe is super-TC
23:28:01 <Sgeo> coppro, wait what?
23:28:20 <coppro> Sgeo: There are those who believe that quantum mechanics is not modelable by a Turing machine
23:28:24 <alise> I believe the universe to be finite, and I believe that --
23:28:25 <Sgeo> If the universe is super-TC, let's build a super-TC cpu!
23:28:28 <alise> How did I know you'd bring up QM?
23:28:47 <alise> I am pretty sure you could make a universe on a Turing machine that, to its inhabitants, behaved perfectly quantum.
23:28:52 <alise> Phantom_Hoover: No.
23:29:10 <alise> coppro: We can't model quantum mechanics on a TM in this universe, perhaps.
23:29:18 <alise> coppro: But that doesn't mean the universe itself is running on super-TC hardware.
23:29:36 <coppro> either it can or cannot be modeled by a TM
23:29:38 <Sgeo> Well, we can't even build a TM in this universe, so
23:29:49 <coppro> a "nondeterministic TM" is not a TM at all
23:30:05 <Sgeo> Oh erm, >.> right
23:30:31 <alise> TM can run {universe that appears to be quantum}, but from inside {universe that appears to be quantum}, we cannot emulate that universe, only {another universe that appears to be quantum}.
23:30:47 <coppro> alise: But that would violate the principle of UTM equivalence
23:31:08 -!- MigoMipo has quit (Read error: Connection reset by peer).
23:31:12 <alise> I don't see any issue with proposing that the simulator somehow makes its random numbers "inaccessible" to us.
23:31:25 <Sgeo> Why wouldn't "that universe" be emulable, except for memory constrains?
23:31:30 <alise> emulable isn't a word
23:31:31 <coppro> TMs are not random, however
23:31:43 -!- tombom has quit (Quit: Leaving).
23:32:26 <coppro> we have near-UTMs in this Universe (machines that would be UTMs if they had infinite space), that means they can emulate any TM. By definition, there cannot exist a TM that a UTM cannot emulate
23:32:32 <alise> Lumenos is practically a superhero but for eir one crippling kryptonite weakness to a deadly form of ikilumen known as termMites.
23:32:32 <alise> Noise pollution: Marl is the gosh of noise pollution. His one most loyal and faithful servant on Earth, Marlean, is actually Lumenos step sister. The antiChrist appointed Marlean to distract and frustrate any attempt by Lumenos or Klearance to think. However, marlikilumen has differing effects on Lumenos and Klearance.
23:32:32 <alise> Klearance becomes sedated, hypnotized, and usually will fall asleep or stare at a lumenator, lucidly dreaming of something he thinks he needs to do without having access to the brain functions which could solve any real problem when these actually exist.
23:32:33 <alise> Lumenos becomes distracted, agitated (more like freegan pissed off), and tends to flee from the deadly air vaprations.
23:32:36 <alise> http://lumeniki.referata.com/wiki/Ikilumen_of_Lumenos'_mind what!
23:33:28 <alise> Hooooovie you came! *BIG hug* I did it right that time, hugh? I know how you like those little stars. You so smart. Do you know how to spell "hugh"? First editor who is sticking around a little while maybe? I think there might be a special place for the Hoovester in the Lumeniki tip jar. Lumenos 17:12, September 6, 2009 (UTC)
23:33:35 -!- Oranjer has quit (Read error: Connection reset by peer).
23:33:36 <alise> Hooooovie you came! *BIG hug*
23:33:43 <alise> `addquote <Lumenos> Hooooovie you came! *BIG hug*
23:33:46 <coppro> so if the Universe cannot be modeled by any TM (including, by definition, a UTM) inside it, it cannot be emulated by any TM at all.
23:33:57 <alise> "If you want me to stay, make me a sysop and bureaucrat." xD
23:34:02 <alise> Sometimes I think you no longer love me. I know that is just my low self esteem talking but, you know, it would be nice to hear you say it every now and then. Lumenos 08:37, November 13, 2009 (UTC)
23:34:06 <alise> Is this guy for real
23:34:20 -!- Oranjer has joined.
23:34:23 <coppro> so therefore its computational complexity class must be super-TC, since it can in fact model a UTM, as evidenced by the existence of UTMs within it
23:34:25 <Sgeo> alise, where's this?
23:34:29 <Phantom_Hoover> Otherwise he shows a dedication for parody that is in itself weird.
23:34:36 <Sgeo> UTMs can model UTMs
23:34:43 <alise> "(Prune. With a chainsaw)" --Phantom_Hoover
23:34:46 <alise> --http://www.wikiindex.org/index.php?title=Lumeniki&diff=69874&oldid=68851
23:34:52 <alise> Sgeo: http://lumeniki.referata.com/
23:35:06 <alise> http://www.wikiindex.org/Lumeniki Look at that, it's big again.
23:35:18 <alise> This guy is fucking insane
23:35:56 <Sgeo> Where's the You came bit?
23:36:21 <Phantom_Hoover> http://www.wikiindex.org/index.php?title=Lumeniki&oldid=68851 He seems to think that he invented MediaWiki's XML export feature.
23:36:48 <alise> Sgeo: on Phantom_Hoover's talk page on lumeniki; I'm sure you can figure it out.
23:36:49 <coppro> now, I should add one thing
23:36:54 <alise> Seems HackEgo is still broken.
23:37:04 <alise> <coppro> so therefore its computational complexity class must be super-TC, since it can in fact model a UTM, as evidenced by the existence of UTMs within it
23:37:08 <alise> I don't believe the universe is infinite.
23:37:58 <coppro> alise: Size is the only possible reason why no UTM within the Universe can model the Universe if it is TC
23:38:08 <Sgeo> Why is it tthat to me, it's obvious both coppro and alise are wrong?
23:38:10 <alise> coppro: I also believe a UTM can probably model the universe.
23:38:17 <alise> Sgeo: Because you are wrong in a different way.
23:38:33 <Phantom_Hoover> alise, you didn't have to deal with Lumenos' debate maps.
23:38:44 <coppro> if you had a UTM within the Universe, and the Universe is just TC, then that UTM could model the Universe
23:38:55 <coppro> except for the obvious fact that it's physically impossible
23:39:20 <coppro> I think there's actually a proof of the Universe's irreducibility
23:39:25 <alise> Phantom_Hoover: This wiki is so confusing...
23:39:34 <Sgeo> When you said "Within the universe", you mean physically?
23:39:36 <alise> coppro: that would be an astonishing result.
23:39:40 <alise> coppro: it would disprove the church-turing thesis.
23:39:45 <alise> coppro: thus I believe it is not so.
23:39:49 <oerjan> i wish to point out that a deterministic TM can easily model a nondeterministic one, with just an exponential blowup in time
23:40:13 <oerjan> (in case someone here didn't know this already)
23:40:14 <alise> Phantom_Hoover: The only solid opinion I can come up with is that this Lumenos guy possibly likes RationalWiki, which makes me detest him (her?).
23:40:15 <Phantom_Hoover> In the Wikiindex dispute, he eviscerated the discussion and scrambled everything in it.
23:40:31 <coppro> alise: it would also disprove everything and prove everything, since it would be a contradiction
23:40:31 <Sgeo> "Hereto sapien"?
23:41:02 <coppro> it is obvious that the Universe cannot be modeled from within itself; the question is whether the computational power is sufficient
23:41:09 <oerjan> and also, the usual quantum complexity class BQP fits snugly inside the deterministic complexity class PSPACE
23:41:41 <alise> actually now I'm just raging at RationalWiki, which is nicer than reading this wiki
23:41:52 -!- Phantom_Hoover has quit (Quit: Leaving).
23:42:13 <oerjan> (meaning that turning quantum -> deterministic is also just a question of blowing up space or time requirements)
23:42:20 <Sgeo> What's wrong with RationalWiki?
23:42:35 -!- zzo38 has quit (Remote host closed the connection).
23:43:21 <alise> Sgeo: It's mostly filled with foaming-at-the-mouth people who seem to like making fun of silly religious beliefs more than RATIONALLY EXAMINING THINGS.
23:43:35 <coppro> alise: also, the Church-Turing thesis is not something that can be taken for granted. That's the whole point of digital physics
23:43:36 <alise> Anti-religion is perfectly acceptable but it is not rationality, and their articles also are almost completely devoid of reason; it approaches more of a comedy wiki.
23:43:52 -!- Phantom_Hoover has joined.
23:44:02 <alise> And I dislike their writing style. It smacks of "Lol, I am smarter than you" no matter who reads it.
23:44:18 <Phantom_Hoover> alise, I'm afraid I'm one of the administrators, so I'll just leave before an argument starts.
23:44:30 -!- Phantom_Hoover has quit (Client Quit).
23:44:39 <alise> Phantom_Hoover: Is it rational to leave whenever someone disagrees with your site?
23:44:41 <alise> Wow, that guy's touchy.
23:45:15 -!- coppro has set topic: <alise> Phantom_Hoover: Is it rational to leave whenever someone disagrees with your site [RationalWiki]? | http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
23:46:12 -!- Phantom_Hoover has joined.
23:46:34 <Phantom_Hoover> alise, it's more the fact that it's quarter to 12 and I don't like arguing with people.
23:46:48 <Phantom_Hoover> By all means create an account and criticise the site there
23:46:48 <alise> Phantom_Hoover: You know, entering to say something after logreading is a technique I used to use and is widely regarded as extremely immature here.
23:46:51 <alise> Talk or don't talk at all.
23:47:01 <alise> No, I'm criticising the site here. If you were mature you would ignore me instead of confronting me like that.
23:47:10 <alise> Or at least confronting me in a more... rational way.
23:48:01 <oerjan> I disagree with your argument, but I'll defend to death your right not to have it
23:48:24 <alise> "My boss" isn't MY boss, either.
23:48:27 <alise> He's other people's boss too.
23:48:36 <alise> Phantom_Hoover: If you don't want an argument, don't respond to me.
23:48:37 <jabb> is there a static place to announce a language?
23:48:53 <Sgeo> How would you announce something ina static place?
23:48:56 <alise> Now really, saying "Don't say that! Stop criticising that!" won't stop an argument, only provoke it.
23:49:47 <Phantom_Hoover> Also, I'm not telling you not to say it. I'm saying that I'm not interested in responding to your criticism.
23:49:56 <oerjan> jabb: what do you mean by static? there is the esoforum which is only barely alive...
23:50:06 <Sgeo> an esoteric esoteric programming language?
23:50:12 <alise> Phantom_Hoover: But you did anyway.
23:50:29 <alise> Personally I think your response comes across as quite emotionally attached to this wiki, to the point of not wanting to rationally reply to criticism.
23:50:35 <alise> (And don't say I'm starting an argument, you kindled the fire.)
23:50:52 <jabb> ahh, used to announcing something on usenet or something
23:50:53 <Sgeo> "in some assembly language"?
23:51:04 <alise> Phantom_Hoover: By leaving/rejoining a lot and saying "NO DON'T TALK ABOUT IT".
23:51:13 <alise> jabb: we used to have a mailing list
23:51:16 <alise> uncountable aeons ago
23:51:27 <alise> Phantom_Hoover: Well, I didn't say much int he first place...
23:52:54 <Phantom_Hoover> Look, I have to do this thing called SLEEPING now, and I was tired as it was. I don't really want to have a nice day spoilt by an argument, and I tried to indicate this.
23:53:06 <Sgeo> jabb, what's the data type of the hand?
23:53:22 <alise> Phantom_Hoover: Stop whining and just go to sleep.
23:53:25 <alise> You don't have to be emotional.
23:53:41 <alise> You would think -- okay, I refuse to make another jab at the name RationalWiki. How could I stoop so low?
23:53:54 <Phantom_Hoover> Why do you always have to act oh so superior to all lesser beings?
23:54:03 -!- Phantom_Hoover has quit (Quit: Leaving).
23:54:09 <alise> I'm not acting superior ... you're acting hurt.
23:54:22 <uorygl> Are the two actings mutually exclusive?
23:54:25 <Sgeo> jabb, so In Hand's data type varies?
23:54:27 <alise> How am I acting superior?
23:54:40 <alise> I was belittling Phantom_Hoover, yes...
23:54:51 <alise> But I don't recall bembiggening myself.
23:54:57 <Sgeo> Hey, a use for C unions!
23:55:13 <alise> Sgeo: There are plenty.
23:55:16 <coppro> like a politician does
23:55:19 <alise> coppro: That's not very helpful.
23:55:26 <alise> "What am I doing wrong?" "You're breaking it!!"
23:55:31 <alise> "How?" "That's just what you do!"
23:55:38 <coppro> I'd elaborate but I'm running late and I might miss my bus if I don't leave in like 2 minutes
23:56:12 <uorygl> alise: "stop whining" and variants come across as insulting.
23:56:31 <alise> uorygl: I never denied I was being insulting: only that I was acting superior.
23:56:37 <alise> Anyway, that rather contradicts with coppro saying that I'm always like that.
23:56:40 <jabb> Sgeo, yeah can be a number, list or null (None in python)
23:57:15 <Sgeo> jabb, should the interpreter be considered to be a reference interpreter?
23:57:16 <jabb> Sgeo: any memory location is that way, list, number or none
23:57:26 <Sgeo> And which wins, spec or interp?
23:57:46 <Sgeo> Spec seems a bit vague in places. I'll work on clarifying it based on interp
23:58:21 <jabb> hmm, I'd go with interp
23:58:47 <jabb> but they're remarkably close, albeit the specs is a bit vague