00:56:56 Find the error: >>>>>>>>>>>>>>>>>>>>>>><>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 01:52:10 <{^Raven^}> The R programming language - an esolang missing from the Wiki: http://www.jbum.com/idt/r.html 01:52:25 * {^Raven^} goes off to hide again... 02:24:28 -!- ihope has quit (Connection timed out). 02:39:50 -!- GregorR-S has joined. 02:40:08 -!- GregorR-S has changed nick to GregorR. 02:40:17 You know what's awesome? 02:40:28 Paying for an internet connection and not actually getting one. 02:40:41 * GregorR is at school, becaues his home network (as per usual) doesn't work. 02:40:44 *because 04:01:52 -!- calamari has quit (Connection timed out). 04:25:25 -!- rabidpoobear|afk has joined. 04:26:15 -!- rabidpoobear|afk has changed nick to rabidpoobear. 04:45:21 -!- poiuy_qwert has quit (Read error: 104 (Connection reset by peer)). 04:52:05 -!- rabidpoobear has quit. 05:07:46 -!- calamari_ has joined. 06:11:34 -!- bsmntbombdood has quit ("all your basment are belong to bsmntbombdood"). 06:14:25 -!- GregorR has quit ("Time to go suffer my lack of usable network at home."). 07:28:36 -!- calamari_ has quit ("Leaving"). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 09:02:44 -!- Keymaker has joined. 09:03:01 'ello 11:46:20 is there something stupid song about some banana phone or not?! 11:46:36 i don't know whether i have dreamed or not 12:20:18 -!- GregorR has joined. 12:35:45 hi gregor 13:39:08 -!- poiuy_qwert has joined. 13:42:58 -!- jix has joined. 14:16:27 -!- ihope has joined. 14:59:38 -!- ihope has quit (Read error: 110 (Connection timed out)). 15:34:07 hi 15:34:25 hi 15:35:48 -!- ihope has joined. 15:36:36 hi (2) 16:10:45 moin 16:13:13 Ello. 16:13:40 Can BackFlip be compiled into SMATINY yet? 16:14:19 argh.. does this "c!='\n'||c!=EOF" mean that c can be neither \n or EOF? 16:14:27 i've lost my sense of logic 16:14:36 Is that a Haskell expression? 16:14:39 c 16:14:42 Keymaker: that is true 16:14:46 ok 16:14:55 Oh right, Haskell uses /=, not !=. 16:14:56 the expression allways evaluates to true ... 16:15:04 not your statement... 16:15:12 mine? :p 16:15:19 or ihope's? 16:15:25 "c!='\n'||c!=EOF" mean that c can be neither \n or EOF? << wrong 16:15:38 c!='\n'||c!=EOF << true whatever c is... 16:15:58 ok 16:16:15 if c == '\n' then c != EOF and the other way around... one of them has to be true... and true || whatever (and the otherway around) is always true.. 16:17:40 * ihope attempts to come up with a witty way to say "AFK" 16:17:53 ah. so, what do i do if i want condition in which c can be anything but not \n or eof? 16:18:35 Keymaker: do !(c=='\n' || c== EOF) or c!='\n' && c!='\n' 16:18:49 cheers 16:20:43 -!- GregorR has quit (Remote closed the connection). 16:21:21 is this a correct start "int main(int argc, char *argv[]){"? somewhere i've seen "**argv" and so on.. i can't understand these 16:23:15 Keymaker: yes 16:23:39 **argv is the same as *argv[] (there is an obscure difference for sure but it doesn't matter) 16:23:58 ah, ok 16:23:59 an array of unknown size is a pointer... 16:24:46 so, could i have something like int *memory that would work as an "infinite" array? 16:24:57 Keymaker: no 16:25:02 ah 16:25:07 Keymaker: you have to use malloc to obtain memory from the system 16:25:18 and if you need more than you allocated you have to realloc... 16:25:35 phew.. luckily i don't need such things right now 16:25:43 but that changes the value of the pointer so if you have multiple references to that memory location you have to be careful... 16:32:22 -!- GregorR has joined. 16:32:48 -!- GregorR has changed nick to GregorR-W. 16:46:13 -!- calamari has joined. 16:46:18 -!- ihope has quit (Read error: 110 (Connection timed out)). 16:56:06 hi 16:56:26 'lo 17:08:11 Keymaker: I recommend doing some assembley language programming first 17:08:26 C will make more sense then, apparently 17:08:47 * SimonRC has always wondered why people found pointers hard to understand. 17:09:25 heh 17:09:43 perhaps i just stick to brainfuck :p 17:09:54 I recall taking very little time to understand them. 17:10:17 The problem with Java is... incompetant people can bullshit their way through it. 17:10:20 :-) 17:10:32 SimonRC: i never learned asm or c... but i think i'm able to program in both of them... 17:10:49 i have never read any good explanation about those pointers nor experimented them.. so i guess i will never get around learning them 17:11:17 Keymaker: Hint, learn some ASM. 17:11:31 Keymaker: if you want to program in c you have to know pointers 17:11:45 grhh! aaargh 17:12:41 Keymaker: so.. learn asm first (but not x86 asm that's ugly) 17:12:51 haha 17:13:41 what makes asm so special i should learn it? pointers? 17:14:19 It just gives you a better understanding of the nature of pain. 17:14:23 i think i could program some stuff in it, though 17:14:23 Also, computers. 17:14:30 heh 17:14:34 Keymaker: if you want to access the memory you have to use pointers... 17:14:45 what do i do with memory?! 17:15:07 ... 17:15:09 ? 17:15:23 ? 17:16:28 Also, learn x86 ASM, it's less ugly :) 17:16:34 *lazer eyes at jix* 17:16:39 *laser even* 17:16:57 GregorR-W: arm is really beautiful asm! 17:17:12 Yeah, I really love using two instructions to get a fegging static pointer into a register. 17:17:14 That rocks 17:17:27 Or is it three? 17:17:37 GregorR-W: ldr r1, =pointer one instruction? 17:17:39 where is the problem? 17:17:56 Oh wait, I'm not thinking of ARM, I'm thinking of SPARC. 17:18:01 * GregorR-W tries to dredge up some ARM. 17:18:15 in arm you can write r1 += r2 << 4 in ONE instruction 17:18:31 add r1, r1, r2, lsl #4 17:19:52 oh.. it has no divide instruction... that's the only bad thing... 17:20:03 by abusing array indexing and struct offset? 17:20:08 but it has a 32bit * 32bit => 64bit multiplication 17:20:15 SimonRC: what? 17:20:35 "< jix> in arm you can write r1 += r2 << 4 in ONE instruction" "< SimonRC> by abusing array indexing and struct offset?" 17:20:57 SimonRC: no... arm allows you to shift at least one argument of many instructions by a constant 17:22:04 MIPS uses two instructions to load a 32-bit value to a register. 17:22:18 jix: handy 17:22:28 * SimonRC writes jvm assembly 17:22:31 fizzie: arm uses two words (one instruction with a relative address to the value in the pool) but only one instruction 17:24:06 "lui $at, 0x1234" to load the upper 16 bits, and then "ori $rX, $at, 0x5678" to combine that with the lower 16 bits. (Where $at is the register typically reserved for the assembler to use in pseudo-instructions, and $rX the target register.) 17:26:05 ldr is the instruction to get the value a pointer (fetched from a register) is pointing to... but it allows you to specify a constant or a register offset (which can be shifted!)... 17:26:34 ARM is funky; I've read the instruction set cheat-card once or twice. 17:26:34 hmm, array indexing! 17:26:49 so ldr, =pointer translates to ldr, [pc, #offset_to_the_value_in_the_pool] 17:27:19 isn't {^Raven^} using a computer that uses an arm cpu? 17:27:45 condition codes are really cool too... 17:28:12 if you want to execute 1 or 2 instructions conditionally you don't have to branch (jump) just suffix them with the condition... 17:28:58 yeah, I've heard of that. 17:29:19 * SimonRC would like a CPU suited to functional langs. :-) 17:29:25 HAHA 17:29:42 hint: not the LISP machine. 17:29:50 jix: ahem... 17:30:04 SimonRC: i thought of haskell and... 17:30:10 i don't want a cpu that works like haskell... 17:30:28 Consider the amount of analysis that a modern CPU does to re-order instructions, considering which instructions are prerequisites of others... 17:30:39 yeah... 17:31:15 expression-based machine language doesn't seem so far off... 17:32:01 hardware support for GC would help, as would really fast indirection. 17:32:47 e.g. *(**(*foo+3)+2) in one instruction. 17:33:21 hardware string => pointer hash tables would be useful... 17:33:25 and an extra bit in every word to say whether it has been evaluated yet or not. 17:33:55 jix: I believe the VAX has an instuction to do hashes of blocks of memory ;-) 17:34:13 (well, it had one to solve quartic equations, so why not?) 17:34:28 SimonRC: computing the hashes of the strings could be done before executing them... 17:34:52 but looking them up can't be done because in dynamic languages methods could be redefined at runtime 17:36:15 no, I mean there would be a bit to say wether a word was an actual value or a thunk telling you how to calculate it. 17:36:24 .'. no penalty for lazy evaluation. 17:36:35 SimonRC: yeah but i was talking about fast dynamic method lookup 17:36:50 because that's one bottleneck of many languages like ruby... 17:39:26 hmm, yeah 17:39:45 ruby isn't too bad though, because it uses symbols 17:39:51 now python... 17:52:57 -!- Keymaker has left (?). 18:12:12 * SimonRC thinks of something many BASICs can do but Java can't... 18:12:21 RESUME NEXT 18:13:22 If you have caught an error condition but you have fixed it, it allows you to continue after the statement that caused the error. 18:13:56 also, RESUME allows you to re-try the statement. 18:16:21 * SimonRC goes 18:23:55 what is the traditional first version/release number for x.x.x-x .. 0.1.0-1 ? 18:38:07 -!- tgwizard has joined. 18:39:32 calamari: Probably 0.1.0 18:39:40 And only jackasses use four numbers in their releases. 18:39:47 heh 18:40:05 I found some examples of 0.0.0-0 so I'll probably use that for a default 18:41:07 of course release 0 only makes sense to computer science types :) 19:02:33 -!- kipple has joined. 19:50:51 -!- ihope has joined. 20:08:04 -!- CXI has quit (Read error: 104 (Connection reset by peer)). 20:08:25 -!- CXI has joined. 20:25:48 <{^Raven^}> jix: Yup, several of my machines are ARM based 20:26:49 <{^Raven^}> conditional execution of almost any instruction is/was a unique feature of the ARM 20:29:55 <{^Raven^}> calamari: I've got a few released proggies that are version 0.00. Darn those bug free coding sessions. 20:30:13 hehe 20:30:22 Bug-free coding sessions... 20:30:33 <{^Raven^}> It's a curse 20:30:50 Just code while sleepy. Then you'll get to have lots of time working before you release :-) 20:31:24 a couple days ago we drove up north for a funeral and the changing landscape (how the trees changed with elevation, etc), reminded me of my adventure game 20:31:40 still need to finsih that thing 20:33:22 <{^Raven^}> it looks unlikely that there will be a 2k comp this year 20:33:30 that's okay 20:33:45 I can release it anytime 21:19:27 -!- rabidpoobear has joined. 21:47:47 Let's see here... 21:48:17 ::= "0" | "1" | epsilon 21:48:43 ::= "1" | "0" 21:48:57 ::= "0" | "1" 21:49:12 No backtracking required there, I think. 21:50:51 Well... not much backtracking. 21:51:21 * ihope sees how well Parsec can handle it 22:12:35 :O] 22:16:35 -!- khaladan has joined. 22:26:19 {^Raven^}: my new favorite handheld is arm based... 22:31:14 -!- jix has left (?). 22:37:54 My "phone" is ARM-based, but it runs Symbian. :/ 22:57:19 <{^Raven^}> Too many ARM based machines are running WinCE 22:58:18 * {^Raven^} lives not too far from an ARM HQ 23:26:02 -!- tgwizard has quit ("Leaving"). 23:45:52 -!- ihope_ has joined.