< 1169164813 0 :CakeProphet!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1169165090 0 :CakeProphet_!unknown@unknown.invalid NICK :CakeProphet < 1169168027 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :maybe logfuck doesn't need a dup < 1169168727 0 :pikhq!n=pikhq@c-75-70-69-187.hsd1.co.comcast.net JOIN :#esoteric < 1169168754 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I'm devising a language based on the rhythm of sound. < 1169168783 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :where the rhythm is the data rather than the operation. < 1169168794 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :. . . < 1169168829 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :. . . < 1169168858 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :.. .. .. < 1169168865 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :. .. .. . < 1169168876 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :.-.-.-.-.--.--.--...--...-.-.-.-.-.-.-. < 1169168888 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :hmm.. < 1169168904 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I could probably have an infinite memory... despite being a finite medium. < 1169168911 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :because rhythm is infinitely divisble. < 1169168955 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It's a theoretically infinite medium, actually. < 1169168979 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Unless your arbitrarily limit the music size? < 1169169005 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I probably would... just to see if the inifitely-visibleness makes it infite. < 1169169005 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION recommend something like opcodes encoded in the notes, initial data encoded via rythm < 1169169017 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :nah.. no notes < 1169169032 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :So just a drumbeat, then? < 1169169044 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I'm going with a non-musical structure operating on the data. < 1169169049 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :rhythm only being the analogy for the data < 1169169057 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That's no fun. < 1169169067 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I want to be able to pay my code! < 1169169083 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it's technically a finite strip of inifitely divisble data with regular segments of "sound" and "no sound"... a binary encoding that can be divided by any ratio. < 1169169095 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(besides, at least with something like GNU Lilypad, there's a simple syntax for music encoding) < 1169169163 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :there will be maybe 3 sound-manipulation commands... and 3 or 4 pointer manipulation commands... < 1169169195 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the pointer is basically three pointers... forming two segments... on which the sound-manipulation commands operate. < 1169169242 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Make a rythmic output device, then. < 1169169252 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :with the control commands being proportional < 1169169254 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Maybe tie into MIDI and make it play your data like a drumbeat. < 1169169256 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :>:D < 1169169258 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :yeah, that seems to be a thing to do. < 1169169280 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(in addition to ASCII, maybe?) < 1169169297 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so if you have -----|--|-------|------ < 1169169331 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :doing "zoom tuk" (tuk is the formal name for the segment formed between the middle and right pointers) < 1169169334 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you would get... < 1169169351 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric : something like -------|--|-----|------ < 1169169397 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it's kinda like the golden ratio. < 1169169406 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Heheh. < 1169169415 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you take a part of the ratio... and make it the whole of the ration. < 1169169509 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :commands for operating on the data would be like... flip segments... < 1169169529 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :which gives you conditions... if both the flipped segments are the same type... nothing is changed. < 1169169543 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :otherwise... they swap type. < 1169169648 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that could actually be consider the string-rewriting paradigm. < 1169169662 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :if ASCII is converted into the rhythm... and the entire program is merely operations on that string. < 1169169837 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :other ideas could be to use polythym to program. < 1169169854 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you play two rhythms side by side... with the combinations being operations. < 1169170491 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :OH < 1169170498 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :how about a concurrent programming language. < 1169170505 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :with like... single character commands. < 1169170513 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :each thread is separate by two newlines. < 1169170534 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and they're all interpreted at the same time (albeit, with a nanosecond so between them), and on different resources. < 1169170540 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :haha... threaded BF < 1169172502 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :wrote up a spec for it: http://esolangs.org/wiki/Weave :D < 1169172788 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks there needs to be way to program a collection of processes instead of individual processes; you don't say "send to foo" in one and "receive from bar" in the other, but you specify a "copy from foo to bar". < 1169172792 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION realises there must be dozens of obscure academic papers on many ways of doing this. < 1169172795 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes to bed. < 1169172813 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...what? < 1169173262 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is organizing the esolang wiki's categories a bit. < 1169173266 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :they're kind of disgruntled. < 1169175743 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :owtf < 1169175750 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :why isn't AND a function in common lisp < 1169175752 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :stupid macros < 1169175806 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :I thought I could do (reduce #'and list) < 1169175815 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it isn't? < 1169175828 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I thought and was a valid function. < 1169175866 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :(funcall #'and 1 2) < 1169175874 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :> The function AND is undefined. < 1169176130 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :that's dumb < 1169177530 0 :pikhq!unknown@unknown.invalid QUIT :"leaving" < 1169179052 0 :bsmntbombdood!unknown@unknown.invalid NICK :bdsmbombdood < 1169180033 0 :bdsmbombdood!unknown@unknown.invalid NICK :bsmntbombdood < 1169180562 0 :RodgerTheGreat!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1169180807 0 :CakeProphet!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1169181870 0 :wooby!unknown@unknown.invalid QUIT :"BitchX: often imitated, never duplicated!" < 1169184170 0 :Sgeo!unknown@unknown.invalid QUIT :"Leaving" < 1169186015 0 :MM2!n=moversti@edu.haapavesi.fi JOIN :#esoteric < 1169193599 0 :clog!unknown@unknown.invalid QUIT :ended < 1169193600 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1169197890 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1169200690 0 :oerjan!unknown@unknown.invalid QUIT :"Destruction" < 1169205216 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :bsmntbombdood: ISTR there is a FAND, which *is* a function. < 1169205255 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :anyway, AND takes as many arguments as you want, so I suspect it is not useful to reduce with it. < 1169205293 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Discouraging the evaluation-control usage of macros is why Haskell has laziness, you know. < 1169210263 0 :MM2!unknown@unknown.invalid QUIT :Read error: 131 (Connection reset by peer) < 1169210352 0 :MM2!n=moversti@edu.haapavesi.fi JOIN :#esoteric < 1169219250 0 :tgwizard!n=tgwizard@c-9b3ee155.178-1-64736c10.cust.bredbandsbolaget.se JOIN :#esoteric < 1169226661 0 :sebbu!n=sebbu@ADijon-152-1-74-30.w83-203.abo.wanadoo.fr JOIN :#esoteric < 1169230497 0 :tgwizard!unknown@unknown.invalid QUIT :Remote closed the connection < 1169231377 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes to dinner. < 1169235304 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :bsmnt_bot is bored < 1169235319 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :!fuckyerself < 1169235359 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :make it say "* bsmntbot is bored" if idle for a day :) < 1169235364 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: make logfuck better! < 1169235366 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :easy < 1169235368 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::O < 1169235372 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :or come up with a better name < 1169235373 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i meant the bored thing :) < 1169235384 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :name, better? < 1169235391 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1169235408 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :XXXfuck, where XXX is the shortest possible string related to the subject < 1169235425 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :naaah < 1169235431 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :is the naming convention for languages that have relations with bf < 1169235441 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :I don't want it to have fuck in it, so that I can tell normal people about it < 1169235488 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :logarythm would be nice if combined with CakeProphet's < 1169235490 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1169235500 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'll try again < 1169235537 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1169235551 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i only come up with stupid wordplays :) < 1169235583 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :how about just "logic"? < 1169235591 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :logic? < 1169235608 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :okay, bad then < 1169235611 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1169235717 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :make it better how? < 1169235727 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what solution did you choose? < 1169235737 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :? < 1169235746 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :for the dup/drp thing < 1169235783 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :didn't < 1169235788 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :I think that dup isn't needed < 1169235809 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it is < 1169235821 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :as long as pooping in a [] is deffered to the ] < 1169235835 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :deffered? < 1169235888 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i didn't understand that < 1169235947 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :delayed < 1169235960 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah deferred < 1169235965 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :still < 1169235966 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :and s/poop/pop/ < 1169235984 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it starts making sence eventually .D < 1169235999 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so, ] pops -> it works? < 1169236006 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :I think < 1169236017 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :k < 1169236017 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :dup < 1169236024 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :shuwwit! < 1169236050 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :you can't dup < 1169236060 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah sorry < 1169236074 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1169236078 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i think you need to dup < 1169236086 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :I think you can do it without dup < 1169236134 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :do "get input -> subtract log(input) from input" < 1169236142 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :then i'm happy < 1169236250 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :hrm < 1169236278 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm not saying it's impossible < 1169236280 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but i am < 1169236394 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :I can't figure out how < 1169236473 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you can only do a subtraction of two adjacent numbers on the stack, there is no way to transmit ANY information between two numbers, so it is impossible to get the two numbers input and log(input) on top of the stack < 1169236595 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :I think it's still turing complete < 1169236602 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :nah < 1169236632 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :a turing complete system must be able to turn a number x to (x-log(x)) < 1169236638 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well < 1169236690 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm, i think it's not turing complete if a number used in x calculations must be input x times < 1169236712 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :turing completeness doesn'thave to do with input/ouput < 1169236725 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and i think if the example is impossible, other, more clear cases aren't either < 1169236739 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, okay < 1169236757 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1169236765 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :my example didn't work :) < 1169236767 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :argh < 1169236773 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :ACTION adds dup < 1169236777 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :why is that? < 1169236789 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it wasn't turing complete after all? < 1169236835 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :i dunno < 1169236835 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1169236893 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :with that, if you want to, at any point of execution, subtract a from log(a), you will have to duplicate the whole program sofar < 1169236939 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :,dg- < 1169236977 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :x-log(x) < 1169236979 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric ::/ < 1169236981 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i know < 1169236985 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm not blind :) < 1169237001 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :11 commands :( < 1169237062 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1169237081 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :i have to leave < 1169237086 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :bye < 1169239660 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1169241353 0 :anonfunc!n=dholman@67.126.84.72 JOIN :#esoteric < 1169241702 0 :helios24!i=helios@2001:5c0:8ea2:3304:0:0:0:2 JOIN :#esoteric < 1169243061 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :made a new language today (1 fully) < 1169243070 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :brainfuck with floating point arithmetic < 1169243076 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :which has been my goal for long < 1169243095 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :how can that work? explain. < 1169243112 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it adds a few constraints to programs < 1169243127 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you have to have as many >'s as you have <'s in one level < 1169243130 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :or, [] < 1169243142 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and input allowed only at "base" level < 1169243165 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :+++[------->+<]>: would print 3/7 < 1169243168 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :whatever that is < 1169243211 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :That >< constraint implies you can only use a finite number of cells. < 1169243224 0 :sebbu2!n=sebbu@ADijon-152-1-39-75.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1169243225 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1169243250 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i think it's turing complete, i don't care whether it is or not, tho, it's a nice toy < 1169243252 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Same as named whiles in pikhq's BFM < 1169243288 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :You get a Minsky machine that way, which is Turing complete. < 1169243304 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(Ignoring non-integer values) < 1169243322 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :;>++++>++++++++[<<[>>>+>>+<<<<[<->>>>+<<<]>>>[-<<<+>>>]<<<<-]>>>>>[-<<<<<+>>>>>]<<[-<<+>>]<-]<: < 1169243328 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :calculates sqrt of input :) < 1169243365 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the 8 in the beginning is the number of iterations, 4 is the initial guess < 1169243392 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm not yet sure whether it is possible to make an interpreter without adding even more constraints < 1169243418 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1169243424 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i still don't get how that works < 1169243435 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Only increment and decrement? Are you using differentiation implicitly? < 1169243439 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(i think i can implement any math-related function even with the constraint a sub-[] can't change a parent-[]'s data) < 1169243443 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1169243444 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1169243451 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Curiously I had the exact same idea today! < 1169243453 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i'm quite sure that's not turing-complete actually < 1169243455 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :difference is the name of the language < 1169243457 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :really :D < 1169243459 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :cool < 1169243480 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Probably caused by the logfuck discussion < 1169243513 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :lament, i think it is, and i'd add all bf features if they'd make algorithmic sence like <'s and >'s being predictable < 1169243547 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i mean, mathematically pretty hard to say how the differentiation works if there are for example inputs in a [] :) < 1169243588 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i just don't understand what the semantics of - are < 1169243590 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, i've thought about that some time ago, but heard about differential just a few months ago... and maybe the logfuck discussion too < 1169243600 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :lament, it decreases one < 1169243610 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :one 1/inf < 1169243618 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :You might want to look at non-standard analysis. < 1169243623 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :one 1/inf. < 1169243678 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, if you put [->++<] in brainfuck, you are multiplying a number. if you put [-->+<] then you either divide a number or do something unpredictable < 1169243690 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :so ++[->[->++<]] is exponentiation? < 1169243691 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :using differentials that makes sence too < 1169243713 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :err not like that < 1169243715 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that does what it does in bf < 1169243720 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :++[->++[->++<]] < 1169243731 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :0,0,8 < 1169243736 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :is the memory < 1169243749 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if you add a < < 1169243758 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :hm. < 1169243759 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i presumed you meant that < 1169243781 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :interesting < 1169243786 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :lament, most simple bf programs would work still... < 1169243796 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :[] is what does the funny stuff < 1169243803 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :still not sure if it's gonna be well-defined < 1169243823 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :It may be well-defined though not necessarily computable. < 1169243825 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :should a number go over / under zero during a loop, it is retried with a smaller increase < 1169243842 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it is possible to interpret if i add constraints < 1169243869 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :BUT, these constrains are already used in many mathematical functions done with bf < 1169243884 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you rarely depend on overflow < 1169243899 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and in math you rarely have to iterate through memory < 1169243907 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :so you define [expr] as lim n->0 of evaluating [expr] in a language where - and + mean subtract and add n < 1169243913 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :right? < 1169243942 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1169243973 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :possibly you could do that to the entire program and don't need the matching > and < restriction < 1169244014 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :nah < 1169244033 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1169244044 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'll try and find an example why it wouldn't work < 1169244044 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :There are some subtleties with that definition, since some values of n cause loops not to hit 0. < 1169244064 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :we define [] as checknig for when the index goes below 0 < 1169244083 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :actually no, we define - as having bounds-checking < 1169244098 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :that makes more sense since i assume you want to keep all numbers positive? < 1169244102 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :nah < 1169244104 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i don't < 1169244104 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1169244115 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :that does make it more difficult :) < 1169244147 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :There may be cases where wrapping around at infinity works nicely. < 1169244148 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you are missing the fact that inner []'s can move the pointer too, they are theoretically done infinity times < 1169244157 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :which is no problem with my constraint < 1169244158 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: doubtful < 1169244171 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Not at all doubtful. < 1169244192 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: not well-defined < 1169244201 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: that's fine, it's just a limit < 1169244210 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :(if it IS just a limit, which it doesn't seem to be) < 1169244213 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :It is well-defined if the limit is defined < 1169244278 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(at infinity) < 1169244288 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :>+++++>++++>++++<<[-[>]<-[<]>] for example would be undefined < 1169244301 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :nah, maybe not < 1169244325 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1169244330 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it makes sence actually < 1169244355 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's the same as in BF < 1169244359 0 :sebbu!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1169244374 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :weird stuff. < 1169244392 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :all i added to bf was this differentials thing, ; and :, you can figure what they are < 1169244435 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i actually thought making () a separate differentiation loop where constraints lie < 1169244438 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I thought they were just decoration :) < 1169244445 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and [] normal < 1169244447 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :no, addition < 1169244454 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :,.;: < 1169244454 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :io < 1169244489 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that's pretty logical notation for floating point IO < 1169244498 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1169244507 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :obvious, tho < 1169244515 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :almost like Ocaml < 1169244527 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :fuck you with your names i don't know :((((( < 1169244531 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :wuzzit? < 1169244571 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Ocaml is a functional language with object extensions. ML dialect. < 1169244617 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :okay < 1169244621 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :The point of my comment is that Ocaml uses +. etc. to mean floating point addition etc. < 1169244623 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :; and : are like it? :D < 1169244631 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ooo < 1169244645 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Because it doesn't have arithmetic overloading. < 1169244648 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1169244653 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :guttit < 1169244711 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but, i don't care whether it's touring complete, i can easily translate a calculation on it < 1169244721 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: Gut tit? < 1169244728 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1169244729 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :sure < 1169244738 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :I don't even want to think about what that's supposed to mean O_O < 1169244744 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :got it < 1169244756 0 :Sgeo!n=sgeo@ool-18bf61f7.dyn.optonline.net JOIN :#esoteric < 1169244800 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :now... now.... ()? < 1169244804 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :needed? is? < 1169244855 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :You can emulate ordinary [] I think < 1169244869 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmmmmmm < 1169244879 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Or rather, ordinary +- < 1169244897 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i don't know if the implicity will work everywhere < 1169244904 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :By having a cell with a fixed value. < 1169244916 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, i thought of that < 1169244990 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :1 could assign a 1 in the current cell, that was one thing i thought... another were ^ and v, ^ would convert a differential into it's counterpart number, v the other way xD < 1169245002 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :counterpart number... < 1169245056 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :I don't think any of those are strictly needed though. < 1169245136 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :maybe not, i just think the fact that (3 here)[->[SMTH]<] will execute SMTH infinity times will in some cases make it hard for the interpreter to know what to do, actually < 1169245136 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :If you keep one cell with a known value you can convert everything with a little copying. < 1169245147 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes, true < 1169245184 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but i liked the idea of using only one kind of numbers < 1169245197 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :everything being used as a differential when needed < 1169245210 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but that requires the <>-limit i'm afraid < 1169245218 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Well no matter what you do some limits will fail to exist < 1169245233 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :liek? < 1169245278 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :[>+<] < 1169245299 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :mem: 0 INF < 1169245327 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :0 on this level, 1 on the other, infinity steps done -> 0 INF < 1169245335 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not 0 < 1169245338 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but what there was < 1169245357 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :You will get inconsistencies. < 1169245401 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :+[>+<] (1 INF) >[->+++++<] (INF 0) < 1169245406 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i can't see them < 1169245431 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :What happens with [>+<]>+<[>-<] < 1169245438 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm just running the algorithm in my head, crash it and i see the inconsistencies < 1169245449 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :nothing < 1169245453 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :0 1 < 1169245457 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if there is stuff tho < 1169245462 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :in the beginning < 1169245463 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :then < 1169245493 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :[>+<] (0 INF) >+< (0 INF) [>-<] (0 0) < 1169245523 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :replace 0 with your var < 1169245533 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's what it'd've done < 1169245545 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you can, indeed, call that an inconsistency :) < 1169245562 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but, it could be made crash < 1169245575 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :or infinite loop < 1169245622 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :I was working on brainfuck -> logfuck conversions in math today < 1169245636 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :did it work? < 1169245643 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :dunno < 1169245657 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :well, i got conversions for everything, but i haven't tested them < 1169245661 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :I'll type em up < 1169245663 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ya < 1169245747 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :http://pastebin.ca/321969 < 1169245820 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :, < 1169245840 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1169245857 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :because , replaces the top < 1169245860 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :sorry, i'm once again mixing the new standard with the old one :) < 1169245923 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :don't think > and < are correct tho < 1169245930 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :look good? < 1169245931 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, actualyl < 1169245933 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1169245942 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :they are the same, yeah < 1169245956 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1169245985 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1169245987 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :xD < 1169246005 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i had to think it over a few times < 1169246024 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, if you have an interpreter for the latest standard, try em < 1169246031 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :I will < 1169246091 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm pretty sure a quine qouldn't work! < 1169246314 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :what's some brainfuck to test? < 1169246334 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :eh < 1169246341 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-. < 1169246355 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :...that won't be a good test < 1169246368 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :++++++++[->++++++++<]>.? < 1169246376 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :++++++++[->++++++++<]>+. < 1169246381 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :i'll just do hello world < 1169246384 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that would be a test < 1169246387 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1169246388 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :same thing < 1169246401 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--[<1g1--1g1--1g1--1g1--1g1--1g1--1g1--<1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--<1g1--1g1--1g1--<1g1-->>>>1-d]<1g1--1g1--d.<1g1--d.1g1--1g1--1g1--1g1--1g1--1g1--1g1--d.d.1g1--1g1--1g1--d.<1g1--1g1--d.>>1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--1g1--d.++++++++<]>+. < 1169246455 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :try that < 1169246482 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :1 < 1169246487 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :? < 1169246494 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :it prints "1" < 1169246498 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i know your problem < 1169246505 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :your's prints numbers? btw < 1169246519 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :no, it prints ascii < 1169246539 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if a cell is empty, bf assumes it 0 < 1169246546 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :mine does too < 1169246546 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yours doesn't have it < 1169246548 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1169246577 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i thought a - would use the underlying number if there was one and only making a new one when the stack is empty < 1169246588 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*make < 1169246672 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :[<1g1-- this here will use the number in the last cell, right? < 1169246686 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :huh? < 1169246695 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hey < 1169246696 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1169246699 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it would < 1169246700 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not < 1169246746 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :+[->+<]>. < 1169246748 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :try that < 1169246791 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :What's it supposed to do? < 1169246795 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :print a 1 < 1169246800 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1169246804 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :it hangs forever < 1169246805 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :put numeric io on < 1169246808 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :a-ha < 1169246812 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :show the code < 1169246829 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :1g1--[1-<1g1-->d] (stacks: 1:[0] 2:[1]) d ([0, 0] [1], so end loop sith [0] [1]) ] < (stack now [0 1]) d. (print topmost... 1) < 1169247094 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :point me where it goes wrong < 1169247100 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :bug in interpreter < 1169247100 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :....and win a cookie! < 1169247104 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i knwo < 1169247145 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :more like, i knew it! < 1169247222 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if not secondary: < 1169247223 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : secondary.append(0.) < 1169247223 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : primary.append(secondary.pop()) < 1169247229 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the bug was the no else? < 1169247236 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :no < 1169247238 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :okay < 1169247243 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :in the '-' code < 1169247271 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1169247280 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i should've read that :) < 1169247291 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :I need to write a stack object < 1169247293 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :pop returns none and you can append that? < 1169247296 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you don't < 1169247318 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you could, but since that is already done, no use < 1169247326 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that as in that interpreter < 1169247347 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the function is easily fixed < 1169247369 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well yeah, stack might be easier < 1169247456 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :class stack: < 1169247456 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : def __init__(self): < 1169247456 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : id=[] < 1169247456 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : def push(a): < 1169247456 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : id.append(a) < 1169247457 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : def pop(a): < 1169247459 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : if id: < 1169247461 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : return id.pop() < 1169247463 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : else: < 1169247465 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : return 0 < 1169247476 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :27 seconds < 1169247491 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm getting godd it seems < 1169247492 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::\ < 1169247501 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1169247504 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :min 27 secs < 1169247513 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :then it makes more sence :) < 1169247547 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :since i had a moment of thought on [] or recursion but then remembered [] is a list :D < 1169247665 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :yes! < 1169247668 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :it works! < 1169247692 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1169247703 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the progz? < 1169247711 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :hello world < 1169247715 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :good < 1169247776 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :for a brainfuck interpreter, a hello world usually find all bugs < 1169247803 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :I hope so < 1169247830 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, now it's brainfuck with multiplication and addition :) < 1169247842 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :actually all basic arithmetic < 1169247842 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1169247854 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :more complex math is loads easier too < 1169247860 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i can do sqrt < 1169247866 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :3 extra instructions though :( < 1169247867 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if you can wait < 1169247870 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah :( < 1169247915 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :sqrt is >1 11g1-- >gg1g<-- p p < 1169247938 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :or >1 TWO DIV (1,5) < 1169250710 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1169250724 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :ei 1/5 == .2 < 1169250747 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(floor(number), 1/(number-floor(number))) < 1169250759 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :? < 1169250774 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1169250798 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :then what do you mean? :D < 1169250830 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :the gives (0.0, 5.0) for .2 < 1169250850 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, i don't know what you meant by (1,5) :) < 1169251036 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :yes!! < 1169251049 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :.1 is now 31 chars! < 1169251058 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what did you do? < 1169251092 0 :CakeProphet!n=CakeProp@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1169251109 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :http://pastebin.ca/322047 < 1169251150 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :erm, crap < 1169251152 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :buggy < 1169251183 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :yeah, doesn't work for numbers > 1