00:29:33 -!- AndrewNP has joined. 01:10:46 -!- GregorR-W has quit ("Weekend!"). 01:15:30 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 01:53:38 -!- kipple has quit (Read error: 110 (Connection timed out)). 02:12:58 -!- Eidolos has joined. 02:55:11 -!- bsmntbombdood has joined. 03:01:54 -!- bsmntbombdood has quit (Client Quit). 03:08:11 -!- bsmntbombdood has joined. 03:15:24 -!- GregorR has changed nick to putch. 03:17:20 putch? 03:17:59 Joke on another channel 03:18:15 Like GregorR-V? 03:18:40 Yup 03:18:43 Same channel even :-P 03:18:51 -!- putch has changed nick to GregorR. 03:30:57 -!- thematrixeatsyou has joined. 03:31:14 +++++++++[>++++++++<-].+. 03:31:40 !bf +++++++++[>++++++++<-].+. 03:31:59 >_> 03:31:59 * ihope pokes GregorR 03:32:19 *connecting* 03:32:47 -!- EgoBot has joined. 03:33:02 remember that intro script? 03:33:04 hi EgoBot 03:33:25 hey GregorR, haven't seen you in a while 03:33:40 !bf +++++++++[>++++++++<-].+. 03:33:43 ... that intro script? 03:33:48 'lo tmey 03:34:00 the auto-greet for IRC 03:34:15 hey, i've made a couple of esolangs so far 03:34:20 HighFive and TheSquare 03:34:59 OK? 03:35:01 !ps 03:35:04 1 GregorR: ps 03:35:13 !bf8 +++++++++[>++++++++<-].+. 03:35:18 !help 03:35:22 help ps kill i eof flush show ls bf_txtgen usertrig daemon undaemon 03:35:24 1l 2l adjust axo bch bf{8,[16],32,64} funge93 fyb fybs glass glypho kipple lambda lazyk linguine malbolge pbrain rail rhotor sadol sceql trigger udage01 unlambda whirl 03:35:40 what's that ps thing? 03:35:50 Shows the currently running processes. 03:36:15 yays its got fyb 03:36:27 Of course it does, I wrote FYB :-P 03:36:32 nice 03:37:01 [+][%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% etc]:insert code here;* 03:37:22 just a trick i know 03:37:34 ...? 03:37:37 WTF, since when does anybody use FYB >_< 03:37:49 sadly the fyb interpreter tends to be rather crashy under windows 03:38:09 It doesn't have quantum brainfuck? Pah... 03:38:10 Don't fucking swear! 03:38:22 sorry, that's my script 03:38:27 :-) 03:38:30 it's off now 03:38:48 well i came up with a BF corewars but it's pretty shitty 03:39:05 it closer resembles actual core wars 03:39:14 Yeah, mine isn't actually very much like core wars :-P 03:39:20 But I think it works better given BF as a base. 03:39:32 I started wanting to go with very corewars-like, but discovered it just didn't work... 03:39:54 yah 03:40:12 i should actually build my own FYB interpreter, is that OK with you? 03:40:25 Why would I care? 03:40:32 good point 03:40:39 Oh noes, not that! :-P 03:40:45 !fybs 03:40:48 Reporting score for . 03:40:53 Oops :-P 03:41:08 I think EgoBot may be flooded off in a sec. 03:41:21 shit happens 03:41:23 !ps 03:41:26 1 thematrixeatsyou: ps 03:41:33 Oh, never mind, it just showed the first one. 03:41:38 I thought it was going to show all of them :-P 03:41:45 !fybs logicex-2 03:41:48 Reporting score for logicex-2. 03:41:53 Erm 03:41:55 !fybs logicex 03:41:58 So who's going to write a quantum brainfuck interpreter in brainfuck so I can daemonify it? 03:41:58 Reporting score for logicex. 03:42:14 (/me can't remember his own FYB scripts' names >_<) 03:42:17 ihope: You? 03:42:26 !fybs nothing-0 03:42:27 ihope: OR you could just point me to the proper one and I could add it. 03:42:30 Reporting score for nothing-0. 03:42:40 Well, lament is supposedly writing one. 03:43:03 Well, then be patient :-P 03:43:32 one thing that you wouldn't know: i have made two esoteric programming languages and i'm actually 15. 03:43:40 the second bit 03:44:04 Oh, by the way, is it okay if your CPU and RAM both burn to a crisp from trying to interpret QBF? 03:44:09 Yeah, there's a life acheivement to be proud of ;) 03:44:19 ihope: I have resource limitations on :p 03:44:44 Ah. I'll expect most QBF programs to fail, then... 03:45:35 !bf_txtgen Resource limitations sort of suck >_> 03:45:37 does the hard-drive light flash to the qubits? 03:45:38 sablevm: cannot create vm 03:45:53 thematrixeatsyou: hmm? 03:46:21 don't you know how quatum phyics works 03:46:22 ? 03:46:47 gtg, cya 03:46:50 What do you mean by "flash to the qubits"? 03:47:01 -!- thematrixeatsyou has quit ("nvm ihope. Cya!"). 03:47:11 * ihope mehs 04:26:32 -!- ihope has quit (Connection timed out). 04:55:54 -!- Sgeo has quit ("Ex-Chat"). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:15:45 -!- Arrogant has joined. 08:43:08 -!- AndrewNP has quit. 09:33:33 -!- Arrogant has quit ("Leaving"). 10:21:26 -!- jix has joined. 10:52:20 -!- bsmntbombdood has quit ("all your basment are belong to bsmntbombdood"). 11:01:27 -!- kipple has joined. 11:33:34 -!- tgwizard has joined. 15:27:57 -!- ihope has joined. 16:28:19 -!- Keymaker has joined. 16:28:28 ello 17:41:06 -!- AndrewNP has joined. 17:59:56 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 18:27:25 -!- calamari has joined. 18:27:35 hi 18:27:40 hey 18:27:52 Hoo-hah! 18:28:45 what's new? 18:29:37 hmm, nothing probably :) 18:29:54 We have a couple guys around here trying to work with quantum computer simulators. 18:30:14 ah, ihope and lament, yeah 18:30:23 (i guess you meant them) 18:30:34 That'd be it, yeah. 18:35:13 I trust you saw the Quantum BF article on the wiki? 18:35:23 yea 18:38:52 Not sure how well it would work in practice, if it were implemented on a real QC. The "swap" operator, for example... 18:39:15 You'd probably have to implement the tape as an array of *pointers* to qubits. 18:40:28 Since, or at least as I understand it, the qubits are pretty well fixed within the register. 18:40:43 i can't really say anything as i understand it not at all :) (quantum physics) 18:41:43 Honestly, there's not that much to learn. Most of the quantum stuff can be abstracted away into (admittedly nasty) math. 18:42:05 Would you like me to write up a QC tutorial for you? ^^ 18:42:19 Do eet! 18:42:30 well, go ahead if you can write an understandable one, i'm not that great at maths :p 18:43:15 Well, you'll need to understand matrices, complex numbers, and an average stats class. 18:43:34 I'll try to make it simple. And explain any probability stuff you need to know. 18:43:37 :-D 18:44:40 Should I put it on the wiki, or just make it a regular file to send to y'all? 18:45:03 just a file, i guess 18:45:14 K. 18:46:03 easiest way would be to upload it somewhere once done, so no need to send e-mails. in case you have some page 18:47:25 Agreed. 18:50:06 i already implemented the tape as an array of pointers to qubits 18:50:30 it is the only sensible solution 18:50:35 however i'm still not sure what to do with IO 18:52:21 Woot: I was right. 18:52:47 As for IO... ihope really needs to explain that better. 18:53:06 well, no 18:53:19 No what? 18:53:19 it's explained quite fully in the spec 18:53:34 (and what he told me here about output) 18:53:42 i'm just not sure if it's a good way of doing it 18:54:04 Hm. I think I saw that log. But... is there a spec outside the wiki page? 18:54:12 'Cause there's no link to it. :-/ 18:54:58 for input, you take a bit and put it in the qubit. 18:55:21 That's easy enough. 18:55:24 for output, you ignore everything ihope wrote there, observe the qubit and output it :) 18:55:30 Ohhh. 18:55:55 :) 18:56:03 So... there's no way to do qubit IO between quantum tapes. 18:56:14 well 18:56:26 if you do want to do that, then you don't observe it, and do what ihope said. 18:56:39 but that's not a concern for my implementation. 18:58:46 * AndrewNP re-reads. 18:59:00 Now, doing it ihope's way, wouldn't that entangle the input and output tapes? 18:59:05 it would 18:59:11 it would create an entangled copy of the qubit 18:59:21 once you observe one, both collapse 18:59:28 (to the same state) 18:59:48 Not ideal, but the only way it's physically possible, I suppose. 18:59:52 yes 19:00:06 * AndrewNP kicks the "no-cloning" theorem. ;) 19:00:36 i'm sorry! the universe is not weird enough! :) 19:01:21 No, I think it's plenty weird. On the plus side, that would allow multiple registers to be entangled. 19:01:30 Which you'd have to do if you want really big operations like breaking RSA. 19:01:52 hmm 19:02:32 AndrewNP: in practice, i don't think you can do stuff between registers 19:02:50 AndrewNP: if you could, that would just mean you have one big register. 19:03:13 i.e. in practice you probably wouldn't be able to set up this c-not gate 19:04:58 Probably. The output qubit would collapse before it could get anywhere, at which point it's no different than classical IO. 19:05:42 (since it would collapse the control qubit too... right?) 19:08:18 you know what would be really silly 19:08:39 qubits are annoying to deal with since bits are a shitty basic data type 19:08:46 so instead, why don't we use... QUBYTES!!!!!! 19:09:13 simulating that would be a joy 19:09:21 256^n states for n qubytes 19:10:19 it should still be doable for about 3 qubytes 19:11:07 at the very least, we could use 10-state objects 19:11:14 so we can encode any digit with one object 19:11:51 then we could have 7-8 of those 19:12:00 and still have the program complete in reasonable time 19:12:41 of course all "standard" gates would not be applicable 19:13:06 you would need 10 standard gates. 19:13:07 ... 19:13:17 that kinda sucks :( 19:15:23 however they could be really cool gates 19:15:43 ie gates that are also mathematical operations mod 10 19:16:37 you could have a gate that adds two numbers mod 10, for example 19:17:52 Cool. But I'm not sure how well it would work: most physical measurements are as binary as classical computing. 19:17:57 Like, spin-up and spin-down. 19:18:13 noup 19:18:19 Meh? 19:18:32 "most" sure, but there're certainly systems with more states 19:19:01 besides we're not trying to make a "real" quantum programming language (those already exist), we want an esoteric one 19:19:11 Oh right. 19:19:18 Like Malbolge for qubits. :) 19:23:52 -!- ihope has quit (Connection timed out). 20:12:17 -!- marinus has joined. 20:12:29 -!- marinus has quit (SendQ exceeded). 20:12:30 -!- marinus has joined. 20:12:38 -!- nooga has joined. 20:13:58 Does anybody have a reasonably speedy way to simulate an array in Glass (to be used as a tape for a Brainfuck implementation)? I'm using a string now, but this slows it down to the point where 99 bottles of beer takes 20 minutes to run. 20:16:36 did it eat my question or do you just think I should figure it out myself? 20:17:28 Well, I for one don't know Glass, so I can't help ye. 20:17:51 oh hi 20:24:10 marinus: glass? 20:24:26 yes, glass 20:24:32 what program is that? url? 20:24:45 http://www.esolangs.org/wiki/Glass 20:25:09 There's probably more, but I can't seem to find it 20:25:18 hmm, you just need a fast interpreter 20:26:00 The reason that it's going slow is thatI' 20:26:03 oops 20:26:24 i've implemented the array as a string, so I have to convert all numbers to characters and back every time 20:26:29 there must be a faster method 20:26:37 or at least, i hope there is 20:27:22 who knows SML? 20:29:03 Odds are, if Glass doesn't have native arrays or custom datatypes, you won't be able to make a fast Turing tape. Sorry. 20:29:04 marinus: string in what language? 20:29:24 in Glass 20:30:02 Fast? Hardly :) 20:30:19 marinus: There already is a BF implementation in Glass, which does use an array implementation :) 20:30:24 I'll give you a copy, just a sec. 20:30:33 And no, there isn't a faster method :P 20:31:06 I used an LLL (it's REALLY bad :) ) 20:31:15 Also, since when is anybody using any of my languages? XD 20:31:43 Actually... hang on. This thing lets you define classes, right? 20:32:01 Of course. 20:32:08 by the way, why doesn't M.c__ run? 20:32:24 Hmmm, because I didn't think of that contingency :) 20:32:32 Couldn't you create two linked lists to simulate a two-stack structure for the tape? 20:32:38 AndrewNP: Yup 20:32:47 I think a doubly linked list with a pointer to the current member would be the best. 20:33:02 gregorR: where is that copy? 20:33:03 marinus: Have an email addy I can send bf.glass to? 20:33:09 marinuso@zeelandnet.nl 20:33:22 but don't sell it to the spammers :) 20:33:54 Sent 20:34:01 "Sold." 20:34:06 I should've said 'PM it', this channel is logged 8-X 20:34:09 Sorry :) 20:34:33 doesn't matter, I get +- 30 spam mails every day anyway 20:34:37 Heh 20:35:03 goin' out 20:35:10 for a bud or two 20:35:21 !glass {M[m(_b)(BF)!>">+++++++++[<++++++++>-]<.>+++++++[<++++>-]<+.+++++++..+++.>>>++++++++[<++++>-]<.>>>++++++++++[<+++++++++>-]<---.<<<<.+++.------.--------.>>+."(_b)(bf).?]} 20:35:26 Hello World! 20:35:38 bye 20:35:44 bye 20:35:45 Au revoir! 20:36:00 So what IS this EgoBot thing? 20:36:05 -!- nooga has quit. 20:37:09 it seems to me a way to run arbitrary code on the computer it's running on... 20:37:26 lol 20:37:27 Basically 20:37:42 Cool. And it's just !help to get the commands, right? 20:39:01 Yup 20:39:07 !help 20:39:09 I can add any interpreter in a sane language. 20:39:10 help ps kill i eof flush show ls bf_txtgen usertrig daemon undaemon 20:39:12 1l 2l adjust axo bch bf{8,[16],32,64} funge93 fyb fybs glass glypho kipple lambda lazyk linguine malbolge pbrain rail rhotor sadol sceql trigger udage01 unlambda whirl 20:39:34 !lambda 20:39:43 Er, wait, can it do help for each command? 20:39:47 You need a program there :P 20:39:52 Yeah, but it's not very useful. 20:39:54 !help lambda 20:39:54 !help lambda 20:39:56 To use an interpreter: Note: can be the actual program, an http:// URL, or a file:// URL which refers to my pseudofilesystem. 20:39:58 To use an interpreter: Note: can be the actual program, an http:// URL, or a file:// URL which refers to my pseudofilesystem. 20:40:07 Lovely. 20:40:25 !lambda (\p.p) x 20:40:28 Parser error: Unbound variable: x 20:40:37 !lambda (\p.p) 20:40:53 (And it's OSS at http://esoteric.voxelperfect.net/files/egobot/ ) 20:40:54 -!- iano has joined. 20:41:01 !lambda (\t.t)(\x.x) 20:41:16 I know it's summer because I don't recognize half the people on #esoteric XD 20:41:20 Hi all. Everyone here know about the ICFP contest? 20:41:33 iano: Just barely heard of it. 20:41:43 It contains several esolang puzzles in it this year! 20:42:28 !lambda (\p.p) "test" 20:42:31 Cool :P 20:42:32 test 20:42:38 starting with the VM for the UMIX os, and also a roman-numeral version of BASIC... 20:42:51 and a 2-D functional language :) 20:43:21 anyone want to try their hand at solving some puzzles in a 2-D language? 20:44:53 d'oh. haven't heard about that contest :( 20:45:18 well, what kind of puzzles? i'm not that good at any 20:48:32 lament: why doesn't this python program work?! 20:48:37 memory = [] 20:48:37 memory[1] = 0 20:49:20 you have an array of size 0. 20:49:24 for the 2-D language, given a sample that does addition, come up with multiply, reverse a list, and... a ray tracer :O 20:49:44 hah :) 20:50:09 and how do i get it to be initially 20000-sized and all values 0? 20:50:32 memory = [0,0,0,0 .... 0,0,0,0] :-) 20:50:43 Keymaker: memory = [0] * 20000 20:50:56 -!- iano has quit. 20:51:27 ok, thanks 20:52:22 great. isdigit doesn't work 20:54:18 or is there even a way to check if some string consist only of digits? 20:57:32 Why not use a regex? re.compile("^[0-9]+$").match(your string here) 20:58:07 probably because i don't have any idea what it is :p 20:58:50 see http://www.regular-expressions.info/ :) 20:59:17 :) 21:02:22 >>> filter(lambda x: x.isdigit() and x or '', "hello123world") 21:02:22 '123' 21:02:58 >>> [x for x in 'foo567bar' if x.isdigit()] 21:02:58 ['5', '6', '7'] 21:04:35 thanks, but what i need is just something that'd check if "test2" consist only of digits (nope), and if "332" (yes). i can't understand why i can't get that isdigit thing working, i've seen it everywhere 21:05:39 >>> "blah".isdigit() 21:05:40 False 21:05:40 >>> "123".isdigit() 21:05:40 True 21:05:40 >>> "12blah".isdigit() 21:05:40 False 21:05:42 >>> "bl12ah".isdigit() 21:05:44 False 21:06:26 grrh. this is strange 21:07:19 "123".isdigit() does not work on your system? 21:07:55 now that i tried, yes 21:08:04 seems the problem is in my program 21:08:22 i was sure i had tried it outside my program though :\ maybe i hadn't 21:08:43 it seems to complaing about this line 21:08:43 if program[pointer].isdigit() == True: 21:09:48 how is it complaining? 21:09:51 -!- iano has joined. 21:10:46 AttributeError: 'int' object has no attribute 'isdigit' 21:12:06 All integers only consist of digits, so why try checking? 21:12:10 Keymaker: uhhhhh 21:12:18 Keymaker: well duh! 21:12:35 :P hmm. i don't ever convert the data i'm reading to integers 21:12:52 unless python does that without asking they all should be strings 21:12:54 well, do it 21:13:07 don't mix data types 21:13:10 and the input can be other than integers too 21:13:27 mixing data types is Bad 21:13:47 you do know that the input() function gives ints when only numbers are inputted, right? 21:14:11 nope, but i'm using f.readline() 21:14:23 f.readline() always returns a string 21:14:34 so your input will always be a string 21:14:43 yeah, as it should be.. 21:15:07 but you're trying to use strings and integers at the same time, and that's a bad idea 21:15:51 what's the problem? :( 21:16:04 it's bad design 21:16:21 well, i don't care about interpreter design 21:16:24 since every time you would have to check if it's a string or an integer 21:16:26 not interpreter design 21:16:31 your program design 21:16:42 whatever 21:16:58 so, i guess it's impossible to get this kind of thing working 21:17:08 O:) 21:17:15 no, not if you only put strings in the array 21:17:26 Keymaker: what are you trying to do? 21:17:35 marinus: as far as i know i'm doing only so 21:17:42 lament: an interpreter for my new esolang 21:17:59 Keymaker: you're not "only putting strings" there because it's initialized to a bunch of 0s 21:18:04 which aren't strings 21:18:08 aah 21:18:11 yes.. 21:18:17 that might well be the problem :P 21:18:28 how to get this "program = [0] * 5000" to strings? 21:18:42 program = [""] * 5000 21:18:45 substitute 0 with whatever string you want memory cells to be initialized to 21:18:53 a 21:19:36 but why not initialize it to [] and append() the input lines? 21:20:00 why not start by learning Python? 21:20:25 i can't make up any answer 21:23:01 now it works without errors (but not yet without bugs) 21:23:20 which language is it you're implementing, by the way? 21:23:33 Aeolbonn 21:24:01 yes, yes, my naming gets gradually worse.. :p 21:24:19 It sounds esoteric to me... 21:24:50 Then again, I don't speak Finnish (or whatever that is) 21:25:04 It doesn't really sound very Finnish to me. 21:25:05 it means nothing as far as i know 21:25:10 it isn't finnish 21:25:38 it's abbrevation that i tried to make sound somewhat nice 21:32:56 how do i print only string of ascii characters, and only a new-line? 21:34:09 what exactly do you mean? 21:34:27 like, i would like to print "hello" without a new-line attached to it 21:34:34 import sys 21:34:39 sys.stdout.write("hello") 21:35:02 ok 21:35:10 (and they said this language was easy..) 21:36:21 well, isn't it? 21:36:51 it's not :) 21:37:20 compared to most of what you find on esolangs.org it is :) 21:38:44 but each programming language is good at different things (even the esoteric ones, which are good at being hard) 21:38:50 heh 21:42:18 this looks fine except infinite loop goes through just once, and program doesn't report error where it should 21:43:39 then you're probably almost there 21:43:49 but I wouldn't report any errors, too user-friendly 21:45:34 ah, now the error reporting works -- seems i hadn't any error in the file i tested it with.. 21:45:51 well, luckily errors are easy to add 21:46:23 indeed! 21:46:34 even if you don't want to... 21:50:39 how do i terminate the program with error message? 21:51:18 or, how do i terminate the program and display an error message 21:52:06 gee, never done that in Python yet... why not raise an error? 21:52:10 raise("Error") 21:52:24 and then you get 21:52:28 >>> raise "Error" 21:52:28 Traceback (most recent call last): 21:52:28 File "", line 1, in ? 21:52:28 Error 21:52:50 i guess anything goes 21:54:21 you can also do sys.exit() to quit 21:54:31 you have to import sys first. 21:54:47 Keymaker: raise SystemExit 21:55:16 and what about displaying the error message? 21:55:22 print() 21:55:33 def die(message): 21:55:36 print message 21:55:39 raise SystemExit 21:55:45 ok 21:55:48 ta 21:55:58 or sys.stderr.write(message) 21:57:09 even better 21:57:33 -!- bsmntbombdood has joined. 22:30:40 -!- pikhq has joined. 22:43:49 i just can't see why this doesn't loop 22:43:57 what? 22:44:15 this interpreter, when running an infinite loop 22:44:54 nobody here can see either until you show the offending part of the source :) 22:45:12 it just goes through the code, the variables seem to have correct values (i print to see), but still doesn't work grrrh 22:45:20 hah, that's true 22:47:35 how exactly are you jumping back? 22:48:41 it's difficult to explain without explaining the language itself 22:48:53 but in python it's just a loop 22:49:55 what kind of loop? 22:50:34 while pointer < length 22:51:09 pointer is the instruction pointer and length the length of the program (which is measured earlier and seems to be correct when i printed it) 22:52:03 but what do you do to interpret your language's looping construct? 22:52:46 i don't want to explain the language yet 22:53:04 oh well 22:53:22 i guess i'll get to bed, it's no use doing anything 22:53:29 goodbye 22:53:45 -!- Keymaker has left (?). 22:58:08 *sigh* 23:18:31 * pikhq is currently rewriting his Brainfuck compiler using pure brainfuck. . . 23:18:38 Damn, is it painful. 23:21:13 compiler? 23:21:16 Yes. 23:21:19 compiles to bf? 23:21:31 Compiles Brainfuck to C. 23:22:16 ahh 23:22:29 no.. bf to c isn't painful.. c to bf is painful :) 23:22:44 Which someone in here has done. ;) 23:22:45 actually most anything to bf :) 23:22:56 yeah, and I've done basic to bf :) 23:23:15 Doing it in Brainfuck makes it fairly painful. ;) 23:23:31 hmm, seems like it shouldn't be too bad 23:24:01 it's pretty easy if you do it right 23:29:01 Actually, now that I've stopped trying to make it an optimising compiler, it isn't too bad. 23:29:17 When I rewrite it to optimise, then it should be painful. 23:34:38 * pikhq tries to think of something else to do. . . 23:41:43 -!- marinus has quit (Remote closed the connection). 23:44:42 done.. using bfbasic ;) 23:46:59 Well, I've got an optimising compiler in BFC already. I'm just rewriting in Brainfuck (and would like to work on something else for a bit. . .) 23:46:59 -!- EgoBot has quit (Read error: 110 (Connection timed out)). 23:49:06 bbl 23:50:28 -!- GregorR has quit (Read error: 110 (Connection timed out)).