00:00:40 hmm... do i do a generic number-> bsmntbombdood-code function or english? 00:00:43 what did you imply? 00:01:06 dude, you are a genious 00:01:12 That loop code works perfect 00:01:24 well, thank you 00:02:16 now I need to think about the math 00:02:35 and write a spec 00:03:43 god i love metaprogramming :O 00:03:49 how come i never did it before? 00:03:50 >>> def printnumsfromntozero(n): 00:03:50 return makenumber(n)+"[.1-].]" 00:03:50 >>> printnumsfromntozero(7) 00:03:50 '11g11g11g11g11g11g1------------[.1-].]' 00:03:50 >>> runsome("11g11g11g11g11g11g1------------[.1-].]") 00:03:52 7.0 6.0 5.0 4.0 3.0 2.0 1.0 0.0 00:04:11 hmm 00:04:28 should open c++... i'll start liking that lang soon :< 00:04:54 hmmm 00:05:15 yeah, the ordo is not optimal 00:05:27 i mean O(n) to create a number 00:06:12 In the loop, you have to pop the stack 00:06:25 is that so? 00:06:47 my bot does that, believe, it's not that nice 00:06:51 *believe me 00:06:59 i'll get some coffee 8| 00:11:50 okay 00:11:53 added sqrt 00:11:55 as 'q' 00:12:04 now try 11g1--qg. 00:12:13 and wait 10 min for the generic one 00:15:06 hmm 00:15:27 does python have err... err.... err..... binary logical operators? 00:17:35 hmm i assumed being able to create 0.5 automatically makes it easy to create 0.25 etc :) 00:17:54 oh 00:17:56 it does... 00:19:12 argh 00:19:20 I can't figure out how to multiply 00:19:33 binary lowho? 00:19:35 loop 00:19:49 oklopol: no, with logs there's a better way 00:19:57 okay 00:20:01 what is it? 00:20:27 11g1--qqqqg = 0.0625 00:20:34 ">g true 00:20:55 #define ADD > ZERO <-- 00:20:59 then inverse would be nice 00:21:11 right, but I don't want to have to add another operation 00:21:26 trues 00:21:31 but, q is bad too? 00:21:44 yeah, I don't want any extra ops 00:21:44 makes fractions nice to do 00:21:48 okay 00:21:53 then it's loop 00:22:02 no 00:22:09 there has to be some way to do it with logs 00:22:20 yes 00:22:23 changing base 00:22:28 :\ 00:22:33 ? 00:22:34 i can't think of anything else 00:22:44 What do you mean changing base? 00:22:47 hmm, i might be wrong 00:23:00 i'll test before i say anything more stupid 00:23:44 maybe inv. log (exponent) is needed 00:24:59 yeah 00:25:05 i was wrong 00:25:14 haven't fiddled with logarithms in ages 00:25:14 that makes me sad :( 00:25:22 :( 00:25:27 -!- ihope has quit (Read error: 104 (Connection reset by peer)). 00:29:42 i thought there was a correlation between either logarithms with inverted base, but there seems not to be 00:29:53 (i'm not good at math, i just guess :)) 00:30:17 yeah, the coffee >> 00:30:56 -!- sebbu has quit ("@+"). 00:31:13 ok, for now i've added an operation "p", which inverts "g" 00:31:49 so now to multiply you can do ">g yeah ok 00:33:54 but, if you need decimal numbers, i'd say square root being a sister operation of a 2-base logarithm would make a nice addition to the lang... unless there is a nice way to do numbers with logs 00:34:07 decimal numbers -> floating point values 00:34:19 -> rational non-integer numbers 00:34:29 -> the right term fuck it 00:35:03 oklopol: back, sorry, kk, thanks 00:35:35 you need logs when calculating loans etc 00:35:35 what's a decimal number? 00:35:55 lament, i used the wrong term 00:36:13 a->v mean s/a/v 00:36:19 ... 00:36:22 s/v/b 00:36:39 ...someone kill me 00:36:59 * ryanakca gives oklopol a poison cookie :) 00:37:13 :) 00:40:07 argh, how to do this 00:40:08 so many people get the terminology wrong :( 00:40:10 they make me sad :( 00:41:31 aARARARaRARARAR 00:45:08 what, bsmntbombdood? 00:45:18 lament, i'm an idiot 00:45:27 inverting a logarithm 00:45:31 2**... 00:45:39 I don't want to have an extra command 00:45:44 ah okay 00:45:51 you said something peeish 00:46:02 yeah 00:47:30 my source: http://bsmntbombdood.mooo.com/logfuck.py.txt 00:49:45 read 00:49:53 nice 00:50:03 all my iffy parts fixed 00:50:05 nice work 00:50:19 but, i had to make it in 10 minutes to be first :) 00:50:27 heh 00:50:50 * oklopol likes q :'( 00:50:51 :DD 00:51:25 You can compute square roots withs logs 00:52:30 ah okay 00:52:34 shomme! 00:54:42 one sec 00:54:45 k 00:54:50 darn 00:54:57 i'm gonna hate myself when i see it :) 01:01:53 hrm 01:02:32 does it work? 01:02:34 well, sqrt(x) == 2**(.5 * log(x)) 01:02:43 :) 01:02:58 since sqrt is the only way to get 0.5, that's hard 01:03:03 no 01:03:03 you can get close tho 01:03:06 oh 01:03:15 #define DIV >g #define ZERO 1g 01:03:23 #define TWO 1 ZERO 1-- 01:03:25 well, with p, true :) 01:03:44 1 TWO DIV 01:03:47 is .5 01:03:49 but, you see, then you don't need sqrt 01:03:54 ye 01:04:07 right 01:04:08 so... 01:04:13 so, it's p or q 01:04:15 floating points numbers are a tad... limited. 01:04:23 CakeProphet, you are limited 01:04:29 :D 01:04:29 LOL NO 01:04:31 oklopol: p can do more than q 01:04:37 CakeProphet: What's your point? 01:04:38 yes 01:04:43 much more 01:05:02 a ha! 01:05:08 got it 01:05:11 so, you are a stupid head 01:05:11 #define SQRT >1 TWO DIV :O 01:05:27 yeah, okay 01:05:32 i can make a num conversion 01:05:52 and it'll make it to the spec and i'll be a hero -_____- 01:06:14 well... 01:06:16 What do you mean num conversion? 01:06:19 hrm.. 01:06:29 conversion of a number into lf-code 01:06:44 oh 01:06:58 but, it wouldn't be very optimal 01:07:01 easy tho 01:07:10 I'm going to change output from decimal to ascii now I think 01:07:25 yeah, for non-integers 01:07:28 *integers 01:07:45 >>> float("0." + "".join(["565656534" for x in xrange(100000)])) 01:07:46 0.56565653456565657 01:07:48 >>> 01:07:49 :( 01:07:57 I want giant floating point numbers!!!! 01:08:54 CakeProphet: gmp 01:09:01 i want 10-base to be illegalized 01:09:20 I want to use a base-5 numeral system! 01:09:24 THE LAW OF FIVES. 01:09:35 How do you implement dup in lf? 01:09:40 I can't figure it out 01:09:45 hmm... 01:10:02 you could consequitely move items from one stack to the next. 01:10:06 till you... get to the one you want? 01:10:12 dup 01:10:16 not lift 01:10:30 well... 01:10:32 it's close. :D 01:12:00 hmm 01:12:07 It's not turing complete unless I can implement dup I think 01:12:20 since [] is destructive 01:12:55 hmm, there is no way to use a number in a calculation without even then only having it in one place again... i think 01:13:08 you can only add a 1 01:13:21 Implement two stacks-of-queues. 01:13:24 like Stue. :D 01:13:29 except... two 01:13:31 TwoStueFuckLogs 01:13:36 you could call it. 01:13:41 no 01:13:42 and using that one IN ANY WAY with the number to duplicate will destroy the original number 01:13:43 too complicated 01:13:50 and you have the same prob with the new one 01:13:53 oklopol: yep :/ 01:14:10 i think i can prove it's impossible... but that's all i can do :\ 01:14:23 I could make > copy isntead of moving 01:14:26 ...if it's impossible, that's pretty obvious tho :) 01:14:30 yeah 01:14:43 but that causes other problems 01:14:58 such as.. not being able to remove items. 01:15:02 because it just copies. 01:15:11 you can. 01:15:15 oh 01:15:20 you could just have a copy command. 01:15:25 CakeProphet: no 01:15:28 that copies from stack to other stack 01:15:32 too many instructions 01:16:00 [ could copy the topmost, ] could pop :P 01:16:39 nah, wouldn't work... i think 01:16:42 hmmm 01:16:49 because you still couldn't dup for example 01:17:06 the dup would be ">0<[>]<" 01:17:11 s/the/then/ 01:17:18 s/0/1g/ 01:17:57 you're right 01:18:00 I think that works! 01:18:15 i didn't understand > and < right, yeah, it was good 01:18:26 s/understand/...grasp :) 01:20:51 crap, that doesn't work 01:21:09 :\ 01:22:11 mine says list index outta range 01:22:18 but i didn't allow that anyway 01:22:24 so it should 01:23:18 [>0]< 01:23:24 that would dup right? 01:23:32 eh 01:23:41 yeah 01:23:43 i thnk 01:23:47 no 01:23:58 wait 01:24:43 no 01:24:56 that does nothing 01:26:08 n, -> (start of loop) n n, -> n, n -> (end of loop) n 0, n -> n, n -> n n, 01:26:09 hmm.. 01:26:24 I wonder how you would use a tree as a languages data structure. 01:26:29 yes 01:26:33 my friend did that 01:26:49 it is nice 01:27:10 you can have tree data structures as vars then 01:27:14 very convenient 01:27:53 You could probably do something with genetics. 01:27:54 and trees. 01:27:59 and fractals. 01:28:01 and chaos 01:28:04 and evolution. 01:28:09 > goes left, < goes right, ^ goes up, so navigating is like bf but you can reserve infinite certain memory for vars 01:28:25 hmm... 01:28:27 that's cool. 01:28:36 you could take a lisp-ish approach and make the program a tree. 01:28:40 true 01:28:44 but he's not good 01:28:49 with the branches acting as... erm.. 01:28:51 you could 01:29:01 conditional pathways? 01:29:07 aaagh 01:29:18 you could just code it as a tree, no ascii shit 01:29:31 i don't understand why everything must be coded in ascii... 01:29:36 or unicode 01:29:55 except for cellular automatons 01:29:56 ok 01:29:57 of course 01:30:04 bsmntbombdood, what? 01:30:05 We make > copy instead of move 01:30:09 < acts as normal 01:30:12 okay 01:30:17 could do something like wireworld... but different. 01:30:18 ah 01:30:21 yeah 01:30:25 electrical circuitry type programming. 01:30:32 make it a GUI 01:30:34 it could be fun. :D 01:30:36 how do you drp? bsmntbombdood 01:30:41 oklopol: [] 01:30:46 yeah 01:30:58 what was wrong with my n, -> (start of loop) n n, -> n, n -> (end of loop) n 0, n -> n, n -> n n, tho? 01:31:05 what fails? 01:31:11 We should all COLLABORATE 01:31:11 the move 01:31:13 and make something sweet 01:31:22 but according to my vision.. 01:31:24 why does it fail? 01:31:27 because I said so. 01:31:31 CakeProphet, sure :) 01:31:39 now [ pops 01:31:46 FRACTALIC SELF-REPRODUCING EVOLUTIONARY GENETICS CODE 01:31:49 now 01:31:51 how 01:31:53 think 01:31:58 but but, what was wrong with the move? :'( 01:32:14 It was destructive 01:32:31 okay 01:32:35 how would it go then? 01:32:41 if not like that 01:32:53 i did it destructively in n, -> (start of loop) n n, -> n, n -> (end of loop) n 0, n -> n, n -> n n, i think 01:33:06 write that in the language 01:33:06 I'd like to make an esolang larger than a few commands and a tiny interpreter. 01:33:17 i did, but it fails 01:33:22 like... a major project... 01:33:39 oklopol: exactly 01:33:43 but, why? 01:33:56 how do the stacks evolve then? 01:34:07 crap, borked 01:34:19 because making > copy is not nice if it's not needed 01:34:27 because it's not very intuitive 01:34:40 * CakeProphet is thinking. 01:34:47 Yeah 01:34:48 and i think an esoteric language should always be intuitive... according to it's own rules 01:35:03 now we can't drop 01:35:13 ah 01:35:15 a genetic language isn't coming into my head intuitively. 01:35:15 yeah 01:35:35 but it seems like it would be simple. 01:36:00 you have some stuff... and some other stuff... and some stuff that tests that stuff... 01:36:08 and something to put it all in... an environment. 01:36:13 that really sums it up :) 01:36:19 and stuff starts dying.. 01:36:26 and stuff starts procreating. 01:36:28 yay... genetics. 01:36:37 which inevitably creates evolution. 01:37:04 AHA 01:37:04 i thought of making a language with the most basic component being flock movement... but if that's not done yet, i pity mankind 01:37:06 simplified DNA 01:37:18 a series of.... codes\ 01:37:22 that determine shit 01:37:33 and make a bunch of them... 01:37:42 or better yet... just make one starting code... the source code. 01:37:55 which spawns off offspring.. 01:38:05 two source codes? 01:38:07 yes. 01:38:09 two source codes. 01:38:11 that mate. 01:38:26 yeah 01:38:31 swap genes... reproduce... you have a bunch of source codes now. 01:38:39 first of all you need a lot of redundancy 01:38:48 and some start dying... the ones that you don't want. 01:38:52 nah... just two genetic strands. 01:39:16 but I don't want DNA.... the thought of coding in DNA-like language kinda makes me want to puke. 01:39:40 the codes you have first should be quines that are altered then executed until more new executable code is randomly created 01:40:00 maybe borrow some ideas from Thue-like-ness? 01:40:05 but, the language should aim at creating itself 01:40:05 but.. not direct string replacement. 01:40:09 yah. 01:40:26 I've been tossing through ideas like that. 01:40:37 a language that contains the instructions for creating itself 01:40:38 it need not have any other operation than cloning itself, changing thing to their "synonyms" etc 01:40:59 well... there needs to be some form of sexual interchange... otherwise you just have a bunch of clones. 01:41:19 well, yeah 01:41:26 we can leave out randomness then 01:41:29 which is good 01:41:36 could have it as an option. 01:41:40 non-determinism is cool sometimes. 01:42:16 because with one we'd need a seed, with two (that reproduce collaboratively) they are each others seeds, more sensible 01:42:21 yeah 01:42:29 but the seed could then be a random program 01:42:46 since all programs should of course be always-executing 01:43:01 but, redundant operations just wouldn't produce themselves 01:43:19 hmmm... the program instructions could correspond with each other... 01:43:23 like... 01:43:25 so there would always be a random amount of nops that always die 01:43:29 yes 01:43:35 do different things for two different pairings? 01:43:40 or... however we pair them up. 01:44:01 yes, these pair could be made so that best result i gotten 01:44:04 *pairs 01:44:07 *is 01:44:19 my s's are becoming extinct 01:44:25 haha... a self-optimixing language. 01:44:29 :) 01:44:36 fuck compilers. 01:44:39 did you coin that term just now? 01:44:42 just make the language do it itself. 01:44:57 ...well.. it was a typo. 01:44:59 but sure. 01:45:01 I coined it. 01:45:15 okay 01:45:22 i thought it was brilliant :) 01:45:37 since it mixes two progs while optimizing automatically 01:46:02 now, english again 01:46:06 by program.. do you mean hard file or... separate 'halves" 01:46:12 it could be either I guess. 01:46:19 i need more complicated english here than in my homework :\ 01:46:21 you could have two different files get it on as well. 01:46:34 file-sex. 01:46:52 you could do like dna 01:47:10 each instruction is two bytes, like +/ () %% etc 01:47:24 and you know how it works 01:47:38 eh... my biology is fuzzy. 01:47:40 okay 01:47:42 but I get the picture. 01:47:45 they sort of... interchange right? 01:47:52 random one of the pair is picked 01:48:12 hmmm... I don't think randomality could produce optimizations... but... who knows. 01:48:39 mixing program "¤¤ ## 1%" with "aG oo /\" could be "¤G #o %\" for example 01:48:44 oooh.. 01:48:48 the optimization wouldn't be there. 01:48:50 you could optimize it afterwards 01:48:54 it would be in the... massive amounts of this occuring. 01:48:59 and... which ones "live" 01:49:04 by being more efficient. 01:49:06 alright.. cool. 01:49:26 well, optimizing isn't really fair play in a sence... nature doesn't have it :P 01:49:39 it would be neat if you could strategically plan the flow of an evolution chain... to produce some desired result... but that sounds kind of far-fetched and vague. 01:50:07 we'd just have an algorithm to check for sanity in the program to skip evolution when a species is due to die pretty soon 01:50:10 what about environment... no environment? Should the programs start killing each other? What about a "species change" 01:50:21 :D 01:50:34 all is not always peachy in the wild. 01:50:38 you can always have a 2D map to emulate them living there... 01:50:42 haha 01:50:46 s/to/and 01:50:50 ah... 01:51:00 that could be another part of the program? or... too much? 01:51:12 hmm 01:51:14 like... the spaces could be different. 01:51:24 huh? 01:51:27 like a 2D language. 01:51:31 separate things 01:51:36 but with... programs running around in it. :D 01:51:53 you'd make programs (prolly at random), then put 10000 of them on the screen and see what happens 01:52:12 the dna would be executed differently when doing different thigs 01:52:14 *things 01:52:29 like, walking could be specified in a certain part of the code 01:52:37 all codes equal length for simplicity 01:52:43 http://bsmntbombdood.mooo.com/logfuck_spec.txt 01:52:48 you're fast 01:53:01 yah... I like complexity springing out of simplicity... 01:53:10 ah... how about functional? 01:53:12 yeah, ok, it's quite a simple lang :) 01:53:18 for bsmntbombdood 01:53:47 an organism is a set of functions... each being the original code we were talking about... pairs of opcodes. 01:53:51 functional is not that good since it needs what's it called... 01:53:55 ah yeah 01:53:59 but then no string 01:54:03 we can forget about it 01:54:06 I got the idea from when you mentioned walking. 01:54:08 a structure then 01:54:09 walking is a function. :D 01:54:42 a creature would map the command to walk in any function it wants 01:54:49 once again depending on it's code 01:54:57 hmm... 01:55:01 and, it would create functions at random 01:55:01 I kinda follow 01:55:26 and then there should be functions for EATING PEOPLE 01:55:50 I kinda liked having deterministic functions though... random could help spur on genetics.. somehow. 01:56:10 yes, once again it would be feeded all the necessary information, and requested what it'll do, it would map these commands into whatever functions it wants to 01:56:12 or smth 01:56:26 yeah 01:56:36 functions should be deterministic 01:56:45 but new ones could be created 01:56:49 Start off with just two creatures... and an environment source... either being in different files or in the same source... either way. 01:56:52 righto 01:57:02 ah.. I get what you mean. 01:57:38 The environment would provide much of the constaints... while perhaps evolving and changing itself. :) 01:57:48 as creatures effect it. 01:58:00 i loved making 2D life simulator when i was little (with set vars, not code) 01:58:09 little... i'm still little 01:58:11 smaller 01:58:49 the rest of the conditioning would come from interactions with creatures... collisions in the environment basically. 01:58:53 haha, plants that are creatures that lost the ability to move at some point :D 01:58:57 so cool 01:59:10 hmm... 01:59:12 yeah 01:59:22 hmmm.... energy? 01:59:30 like, hp? :P 01:59:39 might as well... while we're at it... planning a big-ass game of life. 01:59:45 well.. like... energy. 01:59:45 hehe :=) 01:59:53 i'd like their code to be eaten :) 02:00:09 no variables, just wrecking of each others functions when hit 02:00:34 stationary creatures would eventually get better at either eating other creatures or gaining energy from the environment (like a form of photosynthesis... although maybe not from any "light" source) 02:01:10 trues... the code could be in such a format that removing it would probably not change anything 02:01:39 should there be set functions for actions? 02:01:50 or... should it somehow determine which function to use? 02:02:11 i think it should do it's own mapping, but it's kinda too random then 02:02:14 well... there should be a "sex" function... 02:02:21 that... determines sex 02:02:26 male, female, asexual... something else. 02:02:30 :) 02:02:48 or, when encountering, a function to determine what they do to each other 02:02:53 yeah 02:03:10 but... I like gender too. :D 02:03:17 true 02:03:30 when actually implementing 02:03:37 when they collide... behavioristic traits determine what actions are taken... which are functions themselves. 02:03:39 a simpler one should be done first 02:03:44 with set functions prolly 02:03:47 and such 02:03:47 aha... "behaviors" are functions that determine what function is to be used! 02:03:56 yes 02:04:03 higher-order functions. 02:04:10 taking the other creatures functions to determine it 02:04:18 yeah. 02:04:27 so the functions would need to have some sort of manipulatable data. 02:04:37 they look at each others code, if it seems the other would attack, there's no use emitting seed on it 02:04:38 :) 02:04:40 okay 02:04:44 haha 02:04:45 far-fetched 02:04:56 it sounds do-able though. 02:04:57 we'll create the ultimate AI another time... 02:05:06 at least... basics. 02:05:09 basics first... 02:05:18 there will need to be a lot of modality in the source I think.. 02:05:25 no simple universal commmand set like BF 02:05:26 the language should have a lot of functions for determining stuff about itself too :) 02:05:46 or at least... the symbols carry different semantics depending on where they're at. 02:05:54 a definetely like the idea of "behaviors" and "actions" 02:05:58 but, would this be a game for two ppl to play making their own populations and seeing which one wins or just experiment? 02:06:00 and maybe "traits"... for simple axiomatic shit. 02:06:17 I was kinda thinking you could use it to... compute shit... 02:06:27 far-fetch yeah... it sounds more like a fun game. 02:06:29 hehe :) 02:06:32 like corewars... but less competitive. 02:06:43 or.. more strategic. 02:07:17 i've not yet seen the real strategy in corewars, but i must've gotten something wrong, never played 02:07:55 so... traits (test functions), actions (executive functions that employ traits), and behaviors (functions that use traits, combined with the input of another creatures behavior function to trigger a specific action) 02:08:45 yeah, if those are made by the creator of the creature, would be cool 02:08:50 oh oh oh 02:09:00 environment... could be a set of symbols on a 2D space. 02:09:06 with each one mapping to a function.. 02:09:10 or functions 02:09:44 or.. just like... basic commands and stuff 02:09:46 either works. 02:09:51 both maybe... 02:10:07 <<>.> okay, this is a nop since i should be doing my tasks :) 02:10:20 ...? 02:10:26 nopol <3 02:10:41 this discussion, i don't have time for it now :D or for anything 02:10:47 i have school in 4 hours 02:10:50 it 4 am 02:10:54 *it's 02:10:54 pfft... there's always time. 02:10:58 I've gone tons of shit I could be doing. 02:11:05 but... there are a lot of tasks :\ 02:11:37 and if i don't get them before tomorrow, i'll not be able to do the matriculation exam of english this spring 02:11:50 (might be finland spesific) 02:12:06 because i forgot to do them when i should've 02:12:14 I have a tendency to... leave projects unfinished... and start a lot of stuff. 02:12:22 me too 02:12:23 and.. not finish crap because I get distracted by ideas. 02:12:34 i'll finish them usually when i can do it in 4 hours :) 02:12:40 yeah. 02:12:45 if you have to stop and continue later. 02:12:46 it kills it. 02:13:02 one time i took my 3 year old unfinished projects and finished them all during the afternoon 02:13:17 (but they were mostly hello worlds :)) 02:13:55 yeah, i'm bad at continuing programming since i've already completed it in my head :\ 02:14:06 I usually start bots, languages, weird quick mini-languages for parsiing, strange and useless "helper functions", etc 02:14:19 and of course sometimes i don't remember my idea that well 02:14:24 if i haven't thought about it 02:14:26 hmm... I like the idea of the environment code being basic... but some optional complexity. 02:14:45 you have some basic stuff... river, grass, mountain, weird-wall-thing.. 02:14:52 okay, i have to go now, really :) 02:14:52 cu 02:14:54 and then you have "structures"... which are functions. 02:14:56 hahaha 02:14:58 alright 02:26:44 -!- anonfunc has joined. 02:27:23 -!- anonfunc has quit (Client Quit). 02:27:26 -!- anonfunc has joined. 02:41:35 -!- ryanakca has quit (Read error: 104 (Connection reset by peer)). 02:41:42 hmm 02:41:45 that was easy 02:41:52 i had one left :) 02:42:11 i'm good at assessing that, it seems 02:42:22 the number of items in a list 02:51:02 >.>> 02:51:11 * CakeProphet is still working out that idea... 02:51:16 it sounds feasible... surprisingly. 02:51:39 but with like... 4 languages... 02:51:42 at the least 02:51:44 i still have a word test tomorrow, gonna read for that after a little family guy + coffee break :) 02:51:50 hehe 02:51:51 4 languages? 02:51:57 yeah. 02:52:22 So... behaviors conditional run through actions based on what's occuring... they'll use a very abstract language. 02:52:32 i already saw simpsons, futurama and friends, after fg i'll have nothing unless i start watching anime :\ 02:52:36 actions will be somewhere inbetween... they perform manipulations on the source code of traits. 02:52:59 traits will be simple event-based programming... they perform actions based on how their own soruce code is manipulated. 02:53:01 by actions. 02:53:32 these are programmed initially by the programmer? 02:53:41 an action would be like... grazing... 02:53:49 and a trait like... grass (I'm assuming environment will be traits) 02:53:50 and they are altered when the thingies have fun? 02:53:51 yeah. 02:54:07 behaviors and actions will largely be altered by reproduction. 02:54:18 traits... I think... will be altered mostly through interaction. 02:54:58 It leads to some cool ideas. 02:55:29 I've never heard of a language that does operations based on how its source code is manipulated from an outside influence. 02:55:31 the 2d map exists too? 02:55:35 yeah. 02:55:38 good 02:55:42 it'll be a map of functions... basically. 02:55:49 and some primitive commands. 02:56:10 that is the main interface between creatures, it should be spec'd first 02:56:15 as much as possible 02:56:31 I was thinking it would be a big grid of symbols... followed by some function definitions. 02:56:39 for various symbols. 02:56:44 one character each 02:57:02 programmers can see the functions then ans decide their action on them? 02:57:04 it would most likely follow a language similar to the traits language... since the environment will be largely event driven. 02:57:21 Probably. 02:57:30 you would just need to peak under the soruce of the environment. 02:57:49 I see the environment being code that's mostly manipulated. 02:57:52 it makes a lot of sense. 02:57:56 hmm, prolly would be intentionally left for the programmers to see? 02:58:09 the code 02:58:13 Sure. 02:58:23 It's no fun poking in the dark. 02:58:28 frokfrokfrokfrokfrokfrokfrokfrokfrokrfokfrokfrokfrokfrokfrok 02:58:34 sorry 02:58:41 i'm a flooder normaly 02:58:42 hmm... let's call it Grass 02:58:44 *ll 02:58:48 hehe :) 02:58:50 I'm not sure what to do with logfuck 02:58:57 fuck it 02:58:57 why? 02:59:02 yeah 02:59:04 with your log 02:59:09 ...yup 02:59:13 heh 02:59:21 but, what ya mean? 02:59:27 well.. Grass was the name for a theoretical fractal-based Thue-like language I had in my mind. 02:59:28 or, just what to do? 02:59:31 because it was nature-ish 02:59:44 oklopol: Right now, it's not very usefull 02:59:46 fractal-based, i don't see that 02:59:53 bsmntbombdood, sure it is :) 03:00:07 I'm not sure how to do the looping operators 03:00:18 okay... they didn't work yet? 03:00:23 yeah, they work 03:00:32 The implementation is fine 03:00:39 > copies lead to both dup and drp? 03:00:44 well... fractal based as in... repeated self-similar manipulations of the source code (like Thue, but more complex logic involved) will produce any sort of arbitrary "bytecode"... that could be read by an image creator. 03:00:50 oklopol: no, that's the problem 03:00:58 okay 03:00:59 I think i'm going to have [ not pop 03:01:15 well, my bot has it like that :) 03:01:35 hmmm.. 03:01:36 my bot's flooded our channel for 6 hours now, every 3 seconds 03:01:40 i love watching that 03:01:44 if we finish this lang... we could put it into a bot. 03:01:47 how awesome would that be 03:01:51 haha :D 03:01:53 a big database of creatures and maps. 03:02:23 tho, wouldn't be that interactive, i mean you couldn't see but the result 03:02:49 seems like a crude GUI would be the best result. 03:03:04 yes 03:03:16 or at most just a display 03:03:24 a screen and a bar for loading maps, creatures and opening a connection 03:03:26 of whats going on 03:03:37 heh.. I kinda like good ol' text files. 03:03:41 with the output being all fancified 03:04:16 -!- pikhq has joined. 03:04:17 i don't like the whole concept of having a graphical interface for a non-graphical operation 03:04:25 hey pikhq 03:04:26 I need to find out if logfuck is turing complete 03:05:48 make that... one lang 03:06:18 hmm, if it's final, i can try and make something outta it as well 03:06:27 It's not final 03:07:28 ah okay 03:07:34 I can't decide what to do with it 03:08:22 you don't have a list structure, so it's hard to make an interpreter 03:08:32 you could find an isomorphism tho 03:09:32 just list all basic operation sequences that do anything sensible and find a language proven turing complete that has them or just a subset of them 03:09:53 there was at least one... with i think less functionality 03:10:01 that was similar 03:10:03 very 03:10:07 well, two stacks make a tape 03:10:11 yeah 03:11:33 I can't figure out how to make cat 03:11:41 inc: 1g1-- 03:11:48 dec: 1- 03:11:52 :DD 03:11:56 yeah 03:12:00 well.. 03:12:03 you have a stack 03:12:12 [,.1] or smth wont work? 03:12:17 1[,.1] 03:12:26 oklopol: that won't stop on eof 03:12:33 [,.] 03:12:36 then 03:12:41 1[,.] 03:12:43 because the , pops the stack 03:12:56 huh? 03:12:59 why? 03:13:24 1[1,.] if it pops 03:13:30 i'll check your spec 03:15:14 1[,><.] should work if > copies, once again i don't remember, no copy in the reference 03:16:00 It doesn't copy 03:16:11 That messes stuff up 03:16:50 1[,[>1g]<.] then? 03:17:21 read in, copy, move right, add a 0, pop it while ending loop, move copy back left 03:18:18 ? 03:18:35 doesn't work? 03:18:40 what is wrong? 03:18:41 EOF is -1 03:18:46 okay 03:19:08 1[,[>1g]<.1g1--] 03:19:15 satisfied? 03:20:13 almost 03:20:20 what is wrong? 03:20:23 That prints an eof char 03:20:26 ah 03:20:30 yeah 03:21:09 whoa 03:21:12 you figured out dup 03:21:26 1[,[>1g]<1g1--[1-.]] 03:21:31 how about now then? 03:21:45 nope 03:21:46 eof will jump off both loops 03:21:48 :( 03:21:53 what now? 03:22:32 eh 03:22:35 only prints one char 03:22:35 sorry 03:22:56 1[,[>1g]<1g1--[1-.1g]] 03:22:57 now 03:23:02 since ] pops 03:23:50 okay 03:24:06 !! 03:24:08 workage 03:24:15 huh? 03:24:23 noooo! 03:24:25 it works 03:24:29 mine or yours? 03:24:32 yours 03:24:37 1[,[>1g]<1g1--[1-.1g]] this? 03:25:00 yeah 03:25:04 AND I NEEDED ONLY 10 TRIES!! 03:25:11 :\\\\\\\\\\\\\ 03:25:52 the spec should provide certain things that floating point arithmetic on a computer doesn't, normally 03:26:05 good job 03:26:09 what do you mean? 03:26:38 you use logs for multiplication, might be that the error margin grows with many operations 03:26:55 which one wouldn't expect normally in integer arithmetic 03:27:00 hmm 03:27:50 anyway, 0 as end condition should be abs(top)<0.00005 or smth :) 03:28:21 i dunno 03:28:25 not important 03:29:16 what i don't see is why EOF ends inputting since i only convert one of the dup'd values to (value+1) for testing :) 03:29:21 -!- CakeProphet has quit (Read error: 145 (Connection timed out)). 03:29:41 whats the 1g1-- for? 03:29:46 +=1 03:29:56 for -1 -> 0 03:30:03 ah 03:30:06 i see it now 03:30:14 [ never pops? 03:30:21 [ never pops 03:30:23 yeah 03:30:29 how does 1g1-- add one though? 03:30:46 0 - 1 = -1. x --1 = x+1 03:31:20 oops 03:31:24 yeah, I read it wrong 03:31:43 with dup you can make a number n on the stack in O(logn) 03:31:47 tho it's complicated 03:31:49 I switched postfix and prefix in my head accidently 03:32:03 yeah, it's common :\ 03:33:37 well, I'm satisfied now 03:33:42 (with the language) 03:33:56 how to add two topmost elements? 03:34:01 without inserting code 03:34:06 before them 03:34:16 >1g<-- 03:34:28 yeah 03:34:29 true 03:34:57 i love the > and <, like get-outta-my-way commands 03:35:15 since only the stuff moves, you stay put (hmm, might be just me xD) 03:35:26 yeah 03:35:36 You always stay on the primary stack 03:36:28 i see the 1g as 0 now, forgot it means the same as everywhere else 03:36:44 wish it didn't need p :( 03:36:50 why g, by the way? 03:36:56 loG 03:37:06 yeah... but there is l, you know :) 03:37:13 l looks like 1, o looks like 0 03:37:27 _ could represent a log -__________- 03:37:41 just lying around... 03:37:45 heh 03:37:52 fuck :O 2½ hours left 03:38:17 "-__-" == log base 2, "-___-" log base 3 ... 03:38:35 and i've not read yet, not watched my episodes and talking naked on IRC about programming 8|| 03:38:39 I can't even remember why I chose 'p' 03:38:42 hehe :D 03:38:53 -__- is my other nick in quakenet! 03:38:57 maybe exPonent 03:39:03 You're doing nude IRCing? 03:39:04 yeah, third there too 03:39:17 pikhq, what do you think about my language 03:39:18 i'm always nude, if you can handle the knowledge :) 03:39:32 if not, then... i'm lying 03:39:57 bsmntbombdood: I think my brain is *dead*. 03:40:05 Give me a summary this weekend. 03:40:11 ok 03:40:20 hmm, you can't take the log of 0 03:40:21 ? 03:40:25 m i rihgt? 03:40:35 log 0 is undefinded 03:40:36 log(0) is undefined. 03:40:38 okay 03:40:42 thought so 03:40:50 you should define it 03:40:52 for fun 03:41:08 log(0) == -infinity 03:41:17 yeah 03:41:18 e^x=0. Solve for x. 03:41:27 2^x=0 03:41:43 not ln, log2 03:41:54 Oh. 03:41:54 it's the same for all bases 03:42:10 Fine. 03:42:17 b^x=0, where b is your base. 03:42:20 Solve for x. 03:42:23 Have fun. 03:42:56 x=-oo 03:43:09 i think it's nice enough 03:43:19 lim_{x \to -\infty}{2^x} = 0 03:43:21 (lim x->-oo b^x)=0. . . 03:43:25 ye 03:43:30 Doesn't mean that b^-oo=0. 03:43:34 ;) 03:43:59 pikhq: LaTeX pwns j00 03:44:00 :P 03:44:01 true, i know that, just wasn't sure if i could represent it that formally 03:44:09 but, fortunately you BOTH did 03:44:36 bsmntbombdood: I don't remember the LaTeX syntax for limits; sorry. 03:44:47 latex? 03:44:49 (I've not had to use it) 03:45:04 oklopol: It's a typesetting system which excels at math. 03:45:12 * pikhq needs to leave 03:45:13 -!- pikhq has quit ("leaving"). 03:45:47 :O 03:46:30 oklopol: lim_{x \to -\infty}{2^x} = 0 gets rendered to this: 03:46:40 http://www.mathbin.net/7252 03:47:11 i know 03:47:24 it was obvious from the syntax for one 03:47:33 plus i already knew what you meant :) 03:47:59 cool bin tho :\ 03:48:38 okay, now i'm neither coding nor talking about coding 03:48:42 maybe i'll open the bool 03:48:47 ..........k 03:49:00 c u 03:49:17 bye 04:06:28 damnit 04:06:46 oklopol: That cat program doesn't work unless > copies 04:06:49 which it shouldn't 04:08:04 argh 04:20:21 heh, fun program: 1[11g1--11g1--11g1-->g1g<--p>g1g<--p1-.1] 04:21:05 -!- calamari has joined. 04:22:38 (that prints beep chars endlessly) 04:30:04 1[,[>1g]<1g1--[1-.1g]] this? weird 04:30:13 it certainly won't work if > copies... 04:30:51 yeah 04:31:18 what? 04:31:19 no 04:31:28 It works only if > copies 04:32:57 1:1 -> [:1 -> ,:1 I -> [:1 I I -> >:1 I, I -> 1:1 I 1, I -> g:1 I 0, I -> ]:1 I, I -> <:1 I I 04:33:04 if no copying 04:33:26 [>1g]< doesn't dup 04:33:39 1:1 -> [:1 -> ,:1 I -> [:1 I I -> >:1 I I, I -> 1:1 I I 1, I -> g:1 I I 0, I -> ]:1 I I, I -> <:1 I I I 04:33:42 if dopying 04:33:44 *copying 04:33:54 I don't understand your notation 04:33:57 it triplicates if > copies 04:34:03 no 04:34:09 oper: stack1, stack2 -> next 04:34:29 I == input 04:34:37 what is wrong with it? 04:34:45 please tell me where it goes wrong 04:34:47 :\ 04:35:10 [ = do nothing to stack 04:35:15 > move top over 04:35:22 1g drop 0 on 04:35:29 ] pop zero off, end loop 04:35:32 ah 04:35:33 okay 04:35:35 < move back over 04:35:58 mine works if EITHER > copies or [ duplicates 04:36:07 but i meant it with [ duplicates 04:36:20 [ has never duplicated 04:36:21 if there is neither in the language, how do you duplicate? 04:36:23 okay 04:36:31 i just imagined it then 04:36:36 I'm starting to think there's no way to dup :( 04:36:40 okay 04:36:45 then make [ duplicate 04:36:57 That doesn't make sense 04:37:02 [ push ] pop 04:37:23 then there's no way to drop 04:38:20 yeah 04:38:27 same prob as before 04:38:49 If we got rid of p we could add a dup command 04:39:05 nooooooo 04:39:19 2 log commands is better than stack opers 04:39:22 hmm 04:39:37 you did have [ duplicate at some point of testing 04:39:37 I'll keep trying to think of ways to emulate p 04:39:39 i'm sure 04:39:51 nope 04:41:17 okay 04:41:57 i just suggested that, you thought it didn't work, which it didn't 04:42:01 but i stuck with it :) 04:42:07 hard to change 04:42:15 anyways, that doesn't work now 04:42:40 i like [ duplicate more than > duplicate (you need one of them) because it's more logical 04:42:45 but then there's no drop 04:42:52 > copying you have both 04:42:56 ...no 04:43:08 yes, [] is drop 04:43:09 yes 04:43:12 esyesy 04:43:27 wait 04:43:41 nope 04:43:52 because [] will keep dropping untill it gets to 0 04:44:08 01[] 04:44:11 and if > copies we have no way to put a 0 under the top 04:44:16 yeah 04:44:18 tru 04:44:18 -!- digital_me has quit ("leaving"). 04:44:33 -!- digital_me has joined. 04:44:37 damn :D you're one step ahead of me all the time 04:45:15 what if 04:45:21 log 0 would be drop? 04:45:42 that doesn't make sense 04:45:55 i think it does, but maybe not :) 04:46:26 g should never take more than one off the stack 04:46:50 it wouldn't 04:46:57 it just wouldn't put anything back in 04:47:31 anyway, you could only wipe out numbers divisible by 2 :) 04:47:50 i meant if you tried 0g it would leave nothing there 04:48:00 then 2 would be dropped with gg 04:48:11 and 2.1 with infinite amount of ggggggg... xD 04:48:19 so no 04:48:29 -!- GreaseMonkey has joined. 04:49:30 hmm 04:49:45 how does one undo a log without a special function to do it... 04:49:49 you can make that work with many kinds of little nonsence 04:50:13 you could have [ not copy a 0 but pop it :) 04:50:26 so ig[ would start a non-dup loop 04:50:30 and [ a dup look 04:50:38 That wouldn't do anything 04:50:46 1g[ 04:50:53 wouldn't? 04:51:05 yeah, it wouldn't :) 04:51:57 well, add a drp, make [ or > push, then it'll work 04:52:18 I don't want more than 10 commands though :( 04:53:22 well, i think it'd a good way to handle log(0) to make it a drop that drops another from the stack :) 04:53:30 it's undefined 04:53:49 That would make g very very weird 04:53:50 so... why not 04:53:54 nah 04:54:03 g can't take more than one arg from the stack 04:54:11 why is that? 04:54:18 you don't take random logs from input 04:54:28 you always know when you put 0 in 04:54:36 and you always do it for dropping 04:54:41 it's true it's not intuitive 04:54:44 Because you can only take the log of one number 04:54:52 so g taking 2 numbers doesn't make sense 04:55:17 yes, but log(0) is an error, that would just be a try {} catch() to drop 04:55:23 -_______- 04:55:33 what's this lang? 04:55:46 logfuck :) 04:55:47 GreaseMonkey: http://bsmntbombdood.mooo.com/logfuck_spec.txt 04:56:00 GreaseMonkey: http://bsmntbombdood.mooo.com/logfuck.py.txt 04:57:48 basically, you have to choose between side-effects and overloading 04:57:54 if you don't want a new command 04:58:03 side-effects don't seem to do it 04:58:33 so... g could be overloaded for input it can't handle yet 05:01:14 1[1,1g1--[1-.1g]] actually 05:01:21 no dup needed i think... 05:01:48 bsmntbombdood, try that! 05:02:37 !!!!!!!! 05:02:40 it works 05:02:47 goods 05:03:00 but, still, dup and drp, needed are 05:03:12 fuck 8|| i gotta go to school 05:03:21 school hols here :D 05:03:43 school :( 05:03:44 -!- Sgeo has quit ("Leaving"). 05:03:46 school in an hour here and holidays in a few months 05:04:35 I don't see where that code drops out of the loop 05:04:37 on eof 05:11:36 it does, tho? 05:11:38 right? 05:12:38 1[1,1g1--[1-.1g]] -1 won't go in the inner loop, [ won't drp it tho, so it'll go outta the outermost loop too 05:18:04 -!- digital_me has quit ("Lost terminal"). 05:19:48 bsmntbombdood, please respond, it'll bug me the whole day otherwise :) 05:19:49 oh 05:19:59 i can dl the official code tho 05:22:43 i can't run it tho 05:22:44 :)) 05:22:46 :))))) 05:30:11 i bags we make a massive BF-style lang with a shitload of instructions and call it BrainDead 05:31:32 afk food 05:39:45 oklopol: yes, it works 05:40:36 Why can't you run it? 05:41:15 anyway, bedtime 05:51:53 -!- calamari has quit ("Leaving"). 05:57:33 b4x0r 06:18:14 -!- oklofok has joined. 06:19:46 -!- oklopol has quit (Read error: 104 (Connection reset by peer)). 07:32:56 -!- oerjan has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:00:47 -!- ShadowHntr has joined. 08:07:23 -!- sebbu has joined. 08:30:13 -!- oerjan has quit ("Delirium"). 08:33:34 gtg zzz gnight 08:34:35 -!- GreaseMonkey has quit (".,,._ {o_O} _.,,."). 09:24:40 -!- ShadowHntr has quit ("End of line."). 10:16:29 -!- Asztal has quit ("closing VM"). 11:39:57 -!- helios24 has joined. 11:55:13 -!- sebbu2 has joined. 12:14:28 -!- sebbu has quit (Read error: 110 (Connection timed out)). 12:36:59 -!- MM2 has quit (Read error: 110 (Connection timed out)). 13:02:33 -!- MM2 has joined. 13:03:41 -!- jix__ has joined. 13:17:41 i couldn't because i have an old version of python 13:17:51 i could dl a new one now 13:17:58 but i was in quite a hurry 13:23:25 -!- oklofok has changed nick to oklopol. 13:28:00 -!- anonfunc has quit. 14:10:57 -!- calamari has joined. 14:18:24 -!- calamari has quit (Read error: 104 (Connection reset by peer)). 14:20:20 -!- calamari has joined. 14:20:48 -!- MM2 has quit (Read error: 110 (Connection timed out)). 14:37:37 -!- sebbu has joined. 14:37:53 -!- Asztal has joined. 14:47:19 -!- calamari has quit ("Leaving"). 14:52:00 -!- jix__ has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 14:56:15 -!- sebbu2 has quit (Read error: 110 (Connection timed out)). 15:54:32 -!- tgwizard has joined. 16:00:07 -!- jix__ has joined. 16:06:30 -!- Asztal has quit (Read error: 110 (Connection timed out)). 16:18:59 -!- jix__ has quit (Read error: 54 (Connection reset by peer)). 16:19:15 -!- jix__ has joined. 16:37:02 I think a major impediment to good esolanging is that we make stuff up. 16:37:26 If we didn't just make stuff up, we could have invented stuff like this: http://home.pipeline.com/~hbaker1/Use1Var.html 17:06:02 -!- helios24 has quit ("Leaving"). 17:16:32 okay, let's stop making stuff up. 18:22:13 making what up? 18:42:45 -!- jix__ has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 18:48:59 -!- Asztal has joined. 19:04:17 -!- tgwizard has quit (Read error: 110 (Connection timed out)). 19:11:53 -!- tgwizard has joined. 20:18:44 BTW, I recommend reading about single-use variables. They are fascinating 20:30:21 -!- sebbu2 has joined. 20:31:38 -!- sebbu has quit (Nick collision from services.). 20:57:26 -!- Asztal has quit (Read error: 110 (Connection timed out)). 21:05:48 -!- oerjan has joined. 21:06:48 -!- jix__ has joined. 21:21:03 For a language depending heavily on single use variables, check out Clean. 21:28:46 -!- Sgeo has joined. 21:33:11 -!- tgwizard has quit (Remote closed the connection). 21:40:12 oerjan: Already done so. 21:40:24 -!- jix__ has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 21:47:05 -!- RodgerTheGreat has joined. 21:48:29 RodgerTheGreat: hi 21:49:03 RodgerTheGreat: read about uniquiness types. They rock for esotericness! 21:49:14 ok, cool. 21:49:19 I'll look into it 21:51:23 ooh 21:51:29 yeah, that's a good idea 21:52:29 now read this, which gives VM ideas: http://home.pipeline.com/~hbaker1/LinearLisp.html 21:57:30 -!- sebbu2 has quit (Connection timed out). 22:34:26 hmph 22:59:31 -!- pgimeno has changed nick to pgimeno42. 23:08:31 -!- pgimeno42 has changed nick to pgimeno. 23:20:13 -!- oerjan has quit ("Death"). 23:22:38 -!- CakeProphet has joined. 23:23:04 MMM 23:23:30 mmm 23:43:33 -!- CakeProphet_ has joined.