02:27:02 i haven't designed an esolang in a while 02:31:21 me neither :< 03:14:26 -!- GregorR-L has joined. 03:23:55 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)). 03:30:42 -!- Sgeo has joined. 04:31:27 -!- Sgeo has quit ("Ex-Chat"). 04:42:40 -!- boily has joined. 06:37:43 hmm... activity is low at this ungodly hour of the night... 06:38:24 08:36 in this time zone. 06:38:25 just to say i perused the channel's logs, and following your discussion about my new language (betterave), i've improved string manipulation 06:38:36 01:38 here 06:48:55 -!- mtve has quit (Read error: 110 (Connection timed out)). 06:50:34 -!- boily has quit ("Brush bed then sleep in teeth, uh, no... the other way round... sleep in teeth then brush bed."). 07:27:12 -!- erider has joined. 07:28:17 anyone here 07:31:01 Ignore the irony in the following statement: Nobody /ever/ responds to that. 07:33:31 hi 07:35:43 I'm trying to learn a simplistic language brainf**k seems to have some features or some techniques I would like to master 07:36:30 GregorR-L could you point me in the right direction 07:38:58 Well, http://www.esolangs.org/wiki/Brainfuck would be an obvious starting point ... 07:39:05 Other than that, Idonno, Google? :) 07:39:37 thanks 07:43:57 erider: I just recommend one thing. . . For Brainfuck, be willing to do something even if it seems useless. 07:50:08 And, of course, you have to be of about the mindset that would write a compiler for the hell of it. :p 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 10:03:01 -!- GregorR-L has quit ("Leaving"). 11:09:49 -!- mtve has joined. 12:24:20 -!- bsmnt_bot has quit (Read error: 145 (Connection timed out)). 12:31:26 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)). 13:02:31 -!- helios24 has quit (Read error: 104 (Connection reset by peer)). 13:02:48 -!- helios24 has joined. 13:03:46 -!- mtve has quit ("Terminated with extreme prejudice - dircproxy 1.0.5"). 13:16:58 -!- ais523 has joined. 13:31:16 -!- pe4enitsa has joined. 13:34:06 -!- pe4enitsa has left (?). 13:56:47 -!- mtve has joined. 14:23:19 -!- ais523 has quit ("trying to find a computer on which I can actually edit Wikipedia without inserting lots of random line breaks"). 14:58:17 -!- jix has joined. 15:36:32 -!- boily has joined. 15:57:38 -!- sebbu has joined. 17:36:20 HI 17:39:47 -!- Gamegirl has joined. 17:45:30 is anyone talking here? 17:46:09 never 17:46:12 it's forbidden 17:46:22 why& 17:46:25 jh 17:46:29 whoever talks, shortly dies of unknown causesAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARRRRRRGH 17:46:33 aargh! 17:46:53 que tal? 17:47:03 oh, I`m sorry 17:47:17 I can`t understand 17:47:28 what's up? 17:47:39 what que tal mean? 17:48:06 what's up 17:49:07 good 17:51:42 Is it a dead chat? 17:53:08 yeah 17:53:16 lament already told you 17:53:42 i actually think this channel is empty 17:54:01 oh, it`s very sad 17:54:28 and all of that hm.. people... 17:54:36 -!- CakeProphet has joined. 17:54:41 they are not alive? 17:55:02 :) 17:55:05 CakeProphet: long time no ocean. 17:55:17 LOL PUN 17:55:27 Gamegirl: they're bots. 17:55:32 <--- CLEAVA BOY 17:55:35 *CLEVA 17:55:45 for example, clog is a bot that logs the channel. 17:56:05 and GregorR is a bot that interprets some esoteric languages. 17:56:11 lament: all of them? 17:56:41 and puzzlet_ is a korean translation bot. 17:57:04 CakeProphet is a bot that spits out random bits of wisdom 17:57:15 .....very complex AI in this one. 17:57:23 or so it says. 17:57:51 * CakeProphet pauses as he traverses his decision tree. 17:58:00 * CakeProphet proceeds 17:58:00 tree? more like a bush! 17:58:04 HEY FUCK YOU K? 17:58:07 :D 17:58:10 * CakeProphet made the optimal decision. 17:58:29 aren't you proud. 17:58:57 mhm :) 18:03:32 Gamegirl: to summarize everything, if you want to chat, this is perhaps not the best channel; but if you want to discuss esoteric languages, then it is. 18:04:10 chatting is fine. 18:04:11 to discuss with bots? 18:04:16 o_O 18:04:22 wierd 18:04:24 yep 18:04:34 bots are excellent for conversation 18:04:38 i just realized Gamegirl has the word "girl" in it 18:04:41 we're smart bots. 18:04:45 * oklopol is a bot that penetrates 18:04:49 ... 18:04:56 ... 18:05:05 like... metphorically 18:05:10 *metaphorically 18:05:13 ...I see. 18:05:32 * lament slowly backs away from oklopol 18:05:57 i'm < 1000 km long, don't worry 8| 18:06:20 length can be measured in several ways 18:06:27 i don't know which one you chose... 18:06:27 -!- Gamegirl has left (?). 18:06:31 :) 18:06:36 * CakeProphet has pretended to be female before... AND GUYS DO VERY ANNOYING THINGS 18:06:43 ...oh? 18:06:45 mhm 18:06:51 i can't imagine. 18:06:54 ... 18:07:12 who said i'm a guy? 18:07:23 i guess i've said that multiple times, though 18:07:36 congrats, we scared him away. 18:07:36 my decision tree does not account for sarcasm 18:08:21 ...can bots have a gender? How would you check? 18:08:33 i guess she wasn't interested in esoteric penetration 18:08:40 i need more caffeine 18:09:16 oklopol: i kind of doubt an actual girl would put 'girl' in her nick. 18:09:47 on freenode anyhow. 18:09:47 too much.... bullshit, would arise from that 18:10:52 * CakeProphet 's mind is 50% woman 18:11:15 oh 18:11:47 does that mean i should half-stalk you too? 18:11:52 :| 18:11:59 MEN ARE PIGHEADED IDIOTS ON THE INTERNETST. :) :) 18:12:01 ....yep. 18:12:21 -!- crathman has joined. 18:12:27 hello person 18:12:31 of interest 18:12:33 -!- sebbu2 has joined. 18:16:44 what's "complex number" in under four letters? "cx"? 18:16:50 that's such a long term... 18:16:56 "cn" 18:17:01 i 18:17:10 hmm 18:17:12 what's the context? 18:17:16 class name. 18:17:22 for my stdlib 18:17:38 well, complex numbers are C 18:17:42 oh 18:17:44 that's the 'official' name 18:17:49 indeed 18:17:51 not sure if you want to name a class that. 18:17:54 LOX! 18:17:56 i sure do 18:17:58 hmm 18:18:14 one character names are for temp variables though, of course 18:18:20 cx then? 18:18:22 or? 18:19:26 why are you writing a stdlib? 18:19:35 ...? 18:19:54 as always, i'm making oklotalk. 18:21:09 I would go with complex or something 18:21:19 too long 18:21:31 compnum? 18:21:41 it'll be quicker just to calculate with lists if is use that long a name 18:21:45 complex isn't too hard to type... considering how not-quite-so-often it'll be used. 18:21:58 though guess you can do c='complex; and then use c 18:22:16 well, indeed it's prolly not that often needed 18:22:18 just use some kind of J notation 18:22:26 but still... it's SOIOOOOOOOOOOOOOOOOOOOOoo long 18:22:27 in the number literal 18:22:34 heh 18:22:51 10+i43 :P 18:23:08 hmm... 10j43 maybe? 18:23:15 why j? 18:23:22 -shrug- I forgot 18:23:26 okily 18:23:30 -!- helios24 has quit (Remote closed the connection). 18:23:37 -!- helios24 has joined. 18:24:22 ...I'd like a language that's really fast... and has a quick way to write extension languages that can cooperate with it. IT WOULD BE GOOD, FOR MAKING GAMES AND SUCH 18:24:31 ? 18:24:35 whutta ya mean? 18:25:21 OH I REMEMBER WHY 18:25:26 Python uses J for complex. 18:25:28 >>> type(10j) 18:25:30 18:25:31 >>> 10j+2 18:25:33 (2+10j) 18:25:34 oh 18:25:35 >>> 18:25:43 CakeProphet: so, like, lisp? 18:25:45 well oklotalk does not understand postfix, so it'd be j10 18:25:53 lament, not quite. 18:25:58 but... similar yes. 18:26:03 lots of people use 'j' instead of 'i' 18:26:13 that doesn't mean 'j' refers to complex numbers 18:26:23 it's just a synonym for 'i' 18:26:34 engineers use it because i is reserved for i,j,k direction vectors 18:26:37 er 18:26:40 so's j. 18:26:41 :) 18:26:51 engineers use it because i is current :) 18:27:34 ...I don't like Lisp... 18:27:45 as world-changing as people claim it is. 18:30:19 ....basically I just need a virtual machine assembly type thing.... and then have a suite of languages that compile to it that can run together..... something like what Parrot is going for. 18:31:32 -!- sebbu has quit (Connection timed out). 18:32:50 ...use parrot? 18:33:34 MY DECISION TREE... PREDICTED THIS. 18:33:41 THAT YOU WOULD SAY SUCH A THING. 18:33:56 ....but what's the point in using stuff that already exists? I like to use things that do not exist yet. 18:34:03 why use parrot when you can try making your own? 18:34:08 FUCK YES 18:34:09 yeah 18:34:11 :) 18:34:13 :) 18:34:29 perhaps Parrot is lame? yes? 18:34:42 yeah, LAMEnt! 18:35:58 for one, it has the wrong name. The virtual assembly language I'm looking for is called Grue. 18:36:03 ...and it does not exist yet 18:37:37 CakeProphet: BTW, the JVM is perfectly suitable for that task. 18:37:47 ;) 18:38:08 ....JVM is named Grue? 18:39:03 ....doesn't Parrot use a callstack of some sort.... I think PIM does. 18:39:11 I DO NOT WANT A CALLSTACK. 18:43:23 bf doesn't even compile text right? 18:43:48 ? 18:43:50 -!- bobbens has joined. 18:43:52 this one day i had this weird urge to have a callstack, but i said to myself "don't you have another callstack, you just had one last week" and i was like "fuck you" 18:44:02 you know 18:44:13 ... 18:44:40 * CakeProphet finds that inexplicably hilarious... but remains unsure as to why 18:44:40 i just start writing and let it come out, sorry. 18:45:28 erider: Uh, wha? 18:45:29 GRUE SHALL HAVE... LIKE... BUILTIN MICROTHREAD THINGS.... 18:45:31 okay, my pattern matching works, but it's definitely not pretty. 18:45:48 Like erlang.... or something 18:45:57 Pikhq: sorry I was talking about being able to comment 18:45:59 CakeProphet: maybe you should join the lolcode people 18:46:00 BTW, I've actually got an SVN repository for PEBBLE set up. . . 18:46:24 erider: [you comment here.] 18:46:26 *your 18:46:48 [-][ -||- ] 18:47:06 doesn't bf just kind of ignore non-code stuff? 18:47:08 >+++++++++ # comment? 18:47:12 CakeProphet: It does. 18:47:14 ..? 18:47:21 erider: [ your comment here ] 18:47:24 >comment++++++++++++++ 18:47:31 [none of these instructions will ever get executed. Therefore, punctuation, including brainfuck commands, is fine. The only thing that will break it is unmatched brackets] 18:47:37 erider: You only need to put your comment in a loop which won't run if it includes Brainfuck special chars. 18:47:38 that was my question thank CakeProphet 18:47:54 but the brackets are good if you want punctuation 18:48:14 otherwise it's easy to put punctuation in by mistake, and spend ages debugging 18:48:14 ok 18:48:23 just use brackets on a bf cell that's set to 0 18:48:37 -!- mee has joined. 18:48:41 brackets are nice for comments in the beginning of the program 18:48:50 otherwise, you have to be really sure the cell is set to 0 18:49:05 most mid-program comments don't require punctuation anyways 18:49:12 they're also nice for writing a polyglot. 18:49:23 // [ 18:49:27 C code follows 18:49:40 any sort of NOP/comment is great for writing polyglots 18:49:41 /* ] brainfuck code follows */ 18:49:43 it's almost necessary 18:50:08 -!- bsmntbombdood has joined. 18:50:13 very easy with C and BF since / and * are nops in brainfuck :) 18:50:48 I like Haskell's comment style. 18:51:12 i like literate haskell's comment style :) 18:51:28 -- lol comment here 18:51:58 -- lol code here 18:52:10 10 REM THIS IS A COMMENT 18:52:17 literate haskel huh? 18:52:27 CakeProphet: comments and code are switched 18:52:33 everything's a comment, unless preceded by -- 18:52:45 with the idea that comments are more important than the actual code 18:52:49 aaah.... you'd use that in things where you have more comment that haskell 18:52:57 *than 18:53:04 like.. in some kind of example 18:53:16 well, the idea is that you should use that for all your programs. 18:53:35 i hate comments, don't read code, write it. 18:53:36 because making a human understand what's going on is more important (and harder) than making the computer understand. 18:54:19 .....not really. I find it very easy to explain things to... people. 19:00:37 in writing? 19:01:32 -!- erider has quit (Read error: 104 (Connection reset by peer)). 19:04:02 what's (a+bi)/(c+di)? 19:04:22 calculate it. 19:04:30 :< 19:04:32 you only need middle school algebra or something? 19:04:36 i don't wanna :< 19:04:38 yeah 19:04:41 okay, i'll try 19:05:13 svn://nonlogic.org/pikhq/pebble/trunk/ 19:05:17 nah, i can't, at least i can't do it fast 19:07:13 hmmm.... it would be like... 19:08:05 ...I forgot how to divide polynomials. 19:08:13 hmm 19:08:24 you do something whose name i only know in finnish 19:08:40 part-fraction-factors or something :P 19:08:50 divide it in those. 19:09:27 I can multiply them though... so that's (a+bi)*(1/c+1/di) 19:09:32 right? 19:09:34 no 19:09:54 1/(a+b) is not a/a+1/b 19:10:00 *1/a+1/b 19:10:03 even i know that 19:10:04 :) 19:10:18 oh... yeah :P 19:10:32 I SUCK... AT MATH 19:10:44 for any values of a and b i can calculate A and B in A/a+B/b 19:10:53 but not the general case 19:11:01 i mean, i probably could, but it'd take long 19:12:56 you could change 1/(c+di) by multiplying it by something that equals one... and will result in a denominator of 1. 19:13:20 speaking of sucking, i got a scholarship for being 5th in finlands national math competition \o/ 19:13:45 my grades in math are of average 8 (4-10) 19:13:56 what times (c+di) will equal 1? 19:14:13 -!- erider_ has joined. 19:14:46 i'd've been divided first but i didn't understand a question right... finnish is so hard 19:15:05 CakeProphet: i have no idea, but i guess you can... calculate it? 19:15:45 dunno... I'm just trying to switch that division into a multiplication.... I forgot how to divide polynomials. 19:16:06 i know how you do it, but it's not trivial 19:16:14 and i don't know the term 19:16:15 does + = 1 in the cell or binary 2 19:16:31 ? 19:17:53 + in bf increments the current cell by 1 19:18:12 !bf +. 19:18:25 hmm... I need a linefeed right? 19:18:44 or a printable character 19:18:54 !bf +++++++++++++++++++++++++++++++++. 19:19:03 !bf +++++++++++++++++++++++++++++++++.>++++++++++. 19:19:09 !bf +++++++++++++++++++++++++++++++++.>+++++++++++++.++++++++++. 19:19:13 :) 19:19:18 !bf +++++++++++++++++++++++++++++++++.>+++++++++++++.>++++++++++. 19:19:22 . 19:19:36 I WASN'T EVEN TRYING 19:19:40 hmm 19:20:00 egobot is not here. 19:20:04 heh 19:20:17 !bf +. 19:20:47 basically... bfs state consists of an array of characters and a pointer variable. 19:20:59 + is equivalent to array[pointer] += 1 19:21:09 > is pointer += 1 19:21:30 < is pointer -= 1 19:21:32 etc 19:22:08 so it can show printable char 19:22:19 with the . command, yep. 19:22:29 1, of course, is unprintable. 19:22:35 chr(1) 19:23:02 can it show ints 19:23:09 yes 19:23:15 but not like you mean. 19:23:17 ...kinda... no in the way you're thinking probably. 19:23:20 yeah 19:23:28 it can show the ASCII characters for digits... 19:23:46 but... . doesn't print out the value in the cell... just its corresponding ASCII character. 19:24:40 -!- erider has joined. 19:24:51 You can, of course, do some itoa stuff on it. 19:24:52 sorry I was on my phone 19:25:07 !bf ++++++++++++++++++++++++++++++++++++++++++++++++. 19:25:22 the cells value is 48.... but the interpreter would print "0". 19:25:32 because the 48th ASCII character is "0" 19:26:16 ok so to do calc? 19:26:33 The same for ++++++[>++++++++<-]>. 19:27:00 addition of two cells... is fairly simple... you just make a loop in one cell that increments another. 19:27:17 Pretty much just multiplication. 19:28:07 two plus two... would be ++>++<[>+<-] 19:28:10 or something similar 19:28:45 [>+<-] would be a destructive addition... that dumps the result in the cell to the right of the current one 19:30:29 CakeProphet: do you know of an interactive shell for bf or just compilers and interpreters 19:30:53 you can make one in 15 minutes 19:30:54 egobot has one. 19:31:01 !help 19:31:05 yeah, that'd this channel 19:31:11 and really, EgoBot is offline. 19:31:23 *that'd be 19:31:40 erider, do you have Python? 19:31:47 yes 19:43:19 meh... I started working on one... but I never feel like doing the brackets. 19:45:28 triv with rec 19:53:18 i have two questions about bf, is the data initialized to 0? how do you print stuff? kernel calls? 19:53:35 (excuse my laziness :) ) 19:54:28 kernel calls? 19:54:30 it's all initalized to 0 19:54:35 and . is the print command 19:54:46 that prints the entire stack or whatever it's called? 19:54:48 ! will call asm INT n, where n is the value of the current cell. 19:55:12 nope... just the current cell 19:55:20 ok 19:55:38 might mess around with that someday :) 19:55:38 here's the interactive bf shell I was working: http://deadbeefbabe.org/paste/4999 it doesn't have [ and ] yet... which I don't feel like implementing (definetely the most time consuming out of all the commands) 19:55:51 ! is an addition command? I have only seen the 8 commands 19:56:04 ! isn't a normal command.... not that I'm aware of. 19:57:56 sorry, i just mislead people asking advice :< 19:58:01 erider: There's only 8 commands. 19:58:06 * oklopol is a sly bastard 19:58:07 +-><.,[] 19:58:24 From that, one can *do* many powerful things, however. . . 19:59:05 -!- boily has quit ("WeeChat 0.2.4"). 19:59:54 * CakeProphet always implements the bf array as a sparse-matrix-esque hash table.... to save space with all the zeros floating about. 20:00:33 Pikhq: what types of things 20:00:59 erider: Theoretically anything. 20:01:08 It's Turing complete, after all. 20:01:41 (although doing stuff like networking, graphics, etc. requires some additional support from the interpreter, to wrap that stuff around stdin and stdout.) 20:02:05 bf is kind of useless... not because it can't do a lot of things... it just doesn't have any OS-specific things. While it can COMPUTE anything... it can't necessarily communicate with the rest of the operating system like most other programs can. 20:03:16 it can't do things like draw windows... write to files... send things to a server in India... etc 20:03:21 CakeProphet: Sure it can (although the *implementation* of such things is lacking). 20:03:31 ...not the normal bf. 20:03:38 One merely needs to implement PESOIX, or something similar, and voila. 20:03:43 adding an "extension" to bf pretty much makes it something other than bf 20:04:04 It's not an extension to the language, it's an API which BF code can access via I/O. 20:04:40 how to you access input with , 20:04:52 do* 20:05:00 otherwise, I could argue that Python has gotos... I just haven't hacked it in as a trace function yet. 20:05:32 CakeProphet: I'm not saying that BF has it, just that it *can*. 20:05:44 Likewise, Python *can* do gotos, but it's not a native feature. 20:05:55 erider: Yeah, "," is the input command. 20:06:05 how does PESOIX do this without using -anything- other than the standard bf implementation? 20:06:35 Pikhq: input from where 20:06:54 stdin 20:06:57 whatever that may be. 20:07:12 typically it's a line-buffered keyboard input... in a shell window. 20:07:44 CakeProphet: Interfacing with PESOIX is done soley by stdin and stdout. 20:08:22 CakeProphet: so it bring in one char at a time 20:08:22 well, if you make '@' mean "open irc connection", you are changing the language, however, if you, like someone just said, make special characters change where stdio goes, you are pretty much just making an api 20:08:53 erider, yep... everything is character-by-character in BF... no "strings" in the typical sense... 20:08:58 technically, the bf array is just one giant string 20:09:26 And all PESOIX is is an API. . . Just outputting stuff selectively. . . In theory, at least, you could use the API on any esolang. 20:09:36 CakeProphet: by we control where the char are placed in the tape 20:09:51 right 20:09:54 -!- erider_ has quit (Read error: 110 (Connection timed out)). 20:10:02 but* 20:15:13 okay, in php, why exactly can't you chain operations like "$second_word=explode(" ",$a)[1];"? 20:16:03 ,>,>,><.<.<. 20:16:39 because... you can do it in visual basic 20:17:16 erider: Yup. 20:17:26 Inputs 3 chars, outputs in reverse. . . 20:17:33 And can be shortened by two. 20:17:41 ,>,>,.<.<. 20:19:10 interesting 20:19:49 and comments can but written with no delimited char right 20:20:02 s/but/be 20:21:08 hmm... how do i read the contents of an url in php? :) 20:21:16 Right. 20:21:17 (last time i ask :)) 20:21:27 oklopol: #php 20:35:30 +++++[>+++<-] Cell1 By 5 = 15 20:38:03 erider: Perfect code. 20:39:42 thanks I think I should modify my interpreter 20:45:16 -!- boily has joined. 20:46:52 Pikhq: can you < or | into , ie; ./bf foo.b < bar 20:48:20 erider: Of course. Input redirection is done by your shell, not by the Brainfuck code. 20:50:03 -!- boily has quit ("WeeChat 0.2.4"). 20:50:04 Pikhq: I tried to print chars from a file with ,[.,] and it went in to while(1) 20:50:44 erider: Does your interpreter make an EOF=-1 or 0? 20:51:55 Pikhq: I think EOF=0 20:52:54 or '\0' 22:56:32 -!- clog has joined. 22:56:32 -!- clog has joined. 23:09:12 * oerjan suggests cpx 23:09:23 if it cannot be more than 3 letters 23:09:56 (that's for oklopol) 23:10:57 cpx or cx? 2 is also good :) 23:11:02 CompleX 23:11:13 ComPleX 23:11:15 omg 23:11:16 leet 23:11:19 i like that 23:11:49 tlas ftw! 23:13:17 indeed 23:17:49 what can I learn playing with brainf**k 23:18:14 how to twist your brain into tiny little knots, obviously 23:18:46 aka fuck 23:19:14 how to build up more complicated algorithms from extremely simple parts 23:19:45 there it is 23:20:10 so its worth playing with :) 23:21:04 how to program with no type checking at all 23:21:17 (forth could also be used for that, i hear) 23:21:27 or assembly 23:21:42 yay no types 23:22:26 forth type is a cell 23:22:38 B has no types either 23:26:45 oerjan: so I need to know a lot about ascii to make interesting things 23:27:29 regarding the name of Parrot: why would anyone want to name a vm after a dead bird? 23:28:04 he's not dead 23:28:11 he's sleeping 23:28:42 erider: you need an ascii table i guess. 23:28:50 erider: You could just use an ASCII table. 23:28:57 Or use PEBBLE. :p 23:29:41 just trying to figure out what one would need 23:29:55 there are of course 3 blocks whose positions are easy to memorize: 0-9 start at 48, A-Z at 65 (64+letter number) and a-z at 97. 23:31:45 (note that 48 = 3*16, 64 = 4*16 and 96 = 6*16) 23:32:11 while teaching erider how to write complex programs, please teach me to be clever 23:33:00 i see you are on haskell, using map fromEnum is a nice way to get the ascii numbers for a string 23:33:31 or map ord but that requires an import 23:33:34 -!- jix has quit ("CommandQ"). 23:36:34 cells are only 0-254 wide? 23:36:34 one subtlety about brainfuck is that there are so many implementation variations: end-of-file, cell size and wrapping, tape size 23:36:58 0-255 is usually the minimum to call it brainfuck 23:37:09 (although things like boolfuck exist) 23:37:42 if EgoBot was here, you could choose between 8 bit, 16 bit or 64, i believe 23:38:05 http://cm.bell-labs.com/cm/cs/who/dmr/btut.html 23:38:43 oklopol: i am sorry that is not in my power 23:38:45 "All arithmetic in B is integer, unless special functions are written. There is no equivalent of the Fortran IJKLMN convention, no floating point, no data types, no type conversions, and no type checking. Users of double-precision complex will have to fend for themselves. " 23:38:50 gotta love a language like that 23:39:07 ah, yeah, B rox 23:39:14 it's C for massochists 23:39:54 I *love* the error messages 23:40:12 can gcc compile it? 23:40:18 dunno 23:40:27 there's probably a front-end around somewhere 23:40:54 It's where the ever-useless "auto" keyword in C comes from. 23:41:47 btw EgoBot's interpreter, EgoBFI, is available at http://esoteric.voxelperfect.net/files/brainfuck/impl/egobf-0.7.1.tar.bz2 23:42:04 auto v[10]; v[10]; /*no error?!?*/ 23:42:38 bsmntbombdood: Of course not. C doesn't do any bounds checking. 23:42:52 so auto is B's equivalent to C's plain int? 23:43:08 it's still undefined behavior in C 23:43:22 auto v[10] makes v have 11 elements 23:43:39 oerjan: B's only type is the machine word 23:43:42 since B doesn't have a type to use for declaration 23:43:51 notice the onderful syntax that was later nicked for wide characters in C 23:44:05 actually, C has auto too 23:44:43 what i mean is, since B has no types, it must use something else to declare a variable, so auto becomes the default word for this? 23:44:45 auto means "automatic variable": it has space allocatioed when the function is entered and that space is freed when the function exits 23:44:52 i.e. it is a local variable, on the stack 23:45:34 i can't find the function for dynamic allocation 23:45:53 oerjan: looks to be a long on my system 23:46:11 There is only one reason why B has one type of 4 bytes. . . 23:46:22 The system they were writing stuff on had that as a word size. ;) 23:47:17 Pikhq: have you used WSpace? 23:47:37 erider: No, I haven't. 23:49:49 if a="foo", how many characters is a[0]? 23:50:08 where byte = 9 bits, remember 23:50:18 hence the octal 23:50:44 SimonRC: Octal is 0-7, not 0-8. 23:50:47 what wait? 23:50:55 erider: regarding brainfuck comments in brackets, the easiest way to be sure it the brackets don't get run is to put them right after another set of brackets. 23:50:57 Pikhq: erm, yes 23:51:04 *that 23:51:13 but 3 octal digis is exactly one 9-bit byte 23:51:34 oh, wow, they use the old-style "backwards" assignment operators: "foo =+ bar" etc 23:51:36 Each octal digit is 8 bits. . . 23:51:47 How the *hell* do you get 24=9? 23:51:52 no... 23:52:11 one octal digit is log_2(8) = 3 bits 23:52:25 . . . Oh, right. 23:52:29 one _octect_ is 8 bits 23:52:31 I'm an idiot. 23:53:33 this is #esoteric. everyone is either an idiot or a genius at any time, just not the same always. 23:54:15 The fuck? They actually *are* using 9 bit bytes. 23:54:50 imagine if that had stuck, then octal would probably be more used than hexadecimal 23:55:07 erm, yeah 23:55:08 geniot 23:55:20 their machine had 36-bit words 23:55:36 but hexadecimal is so much cooler than octal. 23:55:56 of all base-2 systems hexadecimal is perhaps the coolest. 23:56:07 or at least the most useful (could easily replace decimal) 23:56:15 Well, now I know where the tradition of using octal for chmod comes from. . . 23:56:23 lament: Hexadecimal is base-16, not base-2. :p 23:56:36 base-power-of-2 i mean