< 1270857661 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :With the FFI issue, it seems it would be bad to make public API functions use fastcall < 1270857670 0 :augur!~augur@129-2-175-79.wireless.umd.edu JOIN :#esoteric < 1270857696 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Windows has 3 or 4 different calling conventions in its public API, BTW. < 1270857730 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's a bit of a microsoftism, in the sense that I think GCC got it to be compatible with MS __fastcall. Though I'm not entirely sure of the history. < 1270857731 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :o.O that sounds.. annoying < 1270857762 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :ugh, being sick sucks :( < 1270857827 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :coppro, feel better soon < 1270857866 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :I certainly hope so :/ < 1270857903 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :coppro, there's a possbility you won't? :( < 1270857924 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :well, I've been fighting this damn thing on and off for two weeks < 1270857946 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :coppro, see a doctor? < 1270857956 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :have; says it < 1270857959 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :*says it's just a cold < 1270857966 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :feels like just a cold too < 1270858003 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :As long as it really IS just a cold < 1270858042 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It's... CANCER < 1270858097 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :that would seriously suck :( < 1270858168 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :why do I hate myself? < 1270858196 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It's from all that copprophilia. < 1270858258 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION groans < 1270858352 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :no sane human being could possible want to do what I am doing right now... therefore I am insane < 1270858366 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but logical. < 1270858385 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :coppro: what are you doing? < 1270858399 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :playing IWBTG < 1270858402 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1270858420 0 :Tritonio_GR1!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1270858455 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :coppro: that's only valid classically, I think < 1270858482 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :okay... I've made it past the up-falling apples < 1270858488 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pfft, that's easy < 1270858512 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :now for the clouds :( < 1270858524 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :wimp, that part of the game is easy < 1270858549 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1270858685 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it would be nice to have a logical operation that didn't need parenthesising < 1270858691 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :like with nand you still need delimiters of some sort < 1270858692 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :you must be using some dictionary I don't know of < 1270858706 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :coppro: More vitamin D? :-> < 1270858706 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but if we had an operation where we could specify either left or right associativity < 1270858718 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and have it stand in for all our operations < 1270858731 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :then we could just say a logical expression is a list of variables and quantifiers, pretty much < 1270858803 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i tihnk that's impossible though :( < 1270858804 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*think < 1270859337 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION despises seeded grapes < 1270859356 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :what about seeded bananas? < 1270859394 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :How ARE you supposed to eat these damn things?!? < 1270859420 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1270859471 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Me: Can I just swallow the seeds? Dad: No. Me: What will happen if I do? Dad: Nothing < 1270859479 0 :augur!~augur@129-2-175-79.wireless.umd.edu JOIN :#esoteric < 1270859781 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that sounds like a problem with your dad, not the seeds. < 1270859797 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i suggest sending him in for repairs. < 1270859809 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pi - sqrt(pi)^2 = -0.0000000000000008881784; this thing really shouldn't be called "real" < 1270859827 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, so, does that mean I should just eat the damn seeds? < 1270859828 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :unreal arithmetic < 1270859847 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :if you want to < 1270859965 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :on the flip side, i vaguely recall a long time ago my dad said one _should_ eat the cores of apples. i also vaguely recall recently reading apple seeds _are_ poisonous. < 1270860041 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :Apple seeds contain trace amounts of cyanide < 1270860049 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :but they are undigestable in any case < 1270860053 0 :MizardX!~MizardX@unaffiliated/mizardx JOIN :#esoteric < 1270860066 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION finds a video called "how to eat seeded grapes properly" < 1270860082 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :saved by the internet :D < 1270860135 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Not that helpful < 1270860145 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :He goes over what DOESN'T work < 1270860173 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION vaguely recalls when he had seeded grapes, he just ate the damn seeds < 1270860178 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :http://www.associatedcontent.com/article/961122/how_to_eat_nonseedless_grapes.html < 1270860211 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i think chewing the seeds was a bit mixed experience, though < 1270860230 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Nonseedless, what a nice way to put it. Why not unnonseedlessless? < 1270860254 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Maybe "how to eat seedy grapes" would have had the wrong connotations. < 1270860275 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: lawl wtf < 1270860290 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I ate "non-seedless" grapes for years, we grew them in our back yard :P < 1270860295 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The proper way to eat them ... is to eat them :P < 1270860309 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Including the seed>? < 1270860342 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :This is so complicated for Sgeo! < 1270860348 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :And how /do/ you open a banana anyway? < 1270860374 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm i've heard there's been some recent progress on banana opening technique < 1270860384 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :as in, the way i've always done it is not the best < 1270860399 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :alise: Sledgehammer. < 1270860406 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the problem with the monkey technique is that... I forget < 1270860411 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :there's something wrong with it, anyway < 1270860413 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Heavier the better. < 1270860420 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so i'd stick to what you're doing < 1270860434 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(i usually make a small break by the stem, then unwrap) < 1270860468 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :alise: it's probably messy or something < 1270860484 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://www.flickr.com/photos/philgyford/4505748943/sizes/o/ < 1270860484 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :                                                        | < 1270860484 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric :                                                       /< < 1270860487 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :they're _monkeys_ after all < 1270860494 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :thank you, myndzi < 1270860525 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What's wrong with eating the peel, exactly? < 1270860534 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :(Not that I eat banana peels) < 1270860576 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :alise: they shouldn't use 100%, that looks unprofessional and makes us think they grew up in north korea or something < 1270860608 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i expect it's somewhat stringy? < 1270860635 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also probably covered in pesticides < 1270860693 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I don't think monkeys care about pesticides so much < 1270860715 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :probably why they're endangered. < 1270860787 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :wait, he actually suggests blowing the seeds out of your mouth < 1270860857 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i guess it goes with the outside recommendation from earlier. < 1270860876 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :this seems ill-adapted to norwegian conditions. < 1270860893 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Completely tangential, but: http://forums.mtgsalvation.com/attachment.php?attachmentid=104059&stc=1&d=1270799424 RoE is going to be awesome. < 1270860932 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Steam, for the moments where it worked, showed RoE in My games, as a trial thing < 1270860940 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Too bad I can't get Steam to not crash < 1270861010 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Rise of the Eldrazi? < 1270861024 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, not sure < 1270861155 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: indeed! < 1270861183 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks he'll actually be playing at the prerelease < 1270861224 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :augur: i thought your comment about grammars was more interesting than the conversation around it < 1270861234 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::x < 1270861238 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :sewing grammars! < 1270861346 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes that one < 1270861356 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its quite interesting < 1270861366 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :wanna hear about them? :x < 1270861372 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :NO < 1270861384 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i was just leaving, give me a there line explanation (short lines) < 1270861389 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*three < 1270861424 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ok here goes < 1270861437 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :okay i won't count that as one cuz i like you. < 1270861503 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :a sewing grammar consists of two sets of n-dimensional string vectors like (where 0 is the empty string); one set is the basis, the other is the rules. < 1270861582 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :vector concatenation is what you expect, e.g. + = . the vector language of the grammar is just the basis closed under right-concatenation with the rules < 1270861617 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :e.g. b + r0 + r1 + ... for b in the basis, and r0, r1, ... in the rules < 1270861633 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :the string language is the set of strings generated by applying some function to the members of the vector language < 1270861678 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i'm sorry we'll have to ignore that last line, you went over quota < 1270861683 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1270861684 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1270861709 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so just as an example, take the classic non-CF language a^n b^n c^n < 1270861728 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :taken < 1270861743 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that has no solutions for n > 2. i know this! < 1270861754 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :let the basis be just <0,0,0>, and let the rules be just , and let the string-generating function be f = xyz < 1270861775 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1270861787 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :<0,0,0> + + + ... is , obviously. < 1270861794 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :obviously < 1270861803 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :or take a^n b^m c^n d^m < 1270861817 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : and <0, b, 0, d> < 1270861826 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :let the basis be <0,0,0,0> and let the rules be and <0,b,0,d> < 1270861827 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :yep. < 1270861829 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :and there you go. < 1270861848 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i wish we had more courses about grammarness < 1270861867 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :or take the word duplicate language ww for w in {a,b}* < 1270861878 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : for all letters < 1270861882 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :B = <0,0>, R = , < 1270861883 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1270861901 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :sewing grammars: pretty easy. < 1270861925 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :also i find it intriguing, what can you express with it? < 1270861930 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :now, how you get more traditional CF languages i dont know. < 1270861930 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i guess depends on f < 1270861948 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :the paper i learned about them from just addressed these kinds of phenomena < 1270861957 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :for palindromes, just make f reverse the latter one < 1270861957 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :balanced nested parens, for instance? no clue. < 1270861973 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i think that's why they let you have a function and not just concatenation in the end < 1270861979 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :true. the problem with having f as a non-concatenative function is that it could be almost anything < 1270861988 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :sure < 1270861997 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's why "i guess depends on f" < 1270862001 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1270862003 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1270862007 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :go to sleep oklopol. :p < 1270862018 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well not so much sleep as algebra < 1270862023 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, maybe sleep too < 1270862054 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :thanks for showing me the ways of sewing ~~~> < 1270862424 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :algebra! < 1270862637 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :algae bras < 1270863418 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Huh, Caml was developed to implement Coq. < 1270863437 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ML, on the other hand, originated in LCF (later HOL, Isabelle, etc.). < 1270863440 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Proof war! < 1270863937 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :alise: thats rather interesting < 1270863992 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Making a language in order to implement a language? < 1270864020 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: it makes sense < 1270864032 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :well, proof systems are really complex < 1270864038 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1270864040 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so you want an expressive functional language to do it in < 1270864060 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so actually making caml then making coq is way less effort in the long run than e.g. writing coq in c < 1270864066 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(and longer-lasting bitrotwise) < 1270864074 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Why not Haskell? < 1270864085 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :or some other language. i imagine that imperative languages might be useful for some sorts of logic < 1270864128 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote host closed the connection < 1270864186 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: didn't exist at the time < 1270864191 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :+ not very performant, < 1270864195 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :+ personal taste < 1270864198 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but yeah, this was way before haskell < 1270864200 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :late 80s early 90s < 1270864281 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :haskell debuted 5 years after caml, just fyi. caml: 1985, haskell: 1990 < 1270864306 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Should I attempt to learn O'Caml? < 1270864326 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :yes. < 1270864345 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :i need a name for a language phenomena < 1270864349 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :anyone care to help? :X < 1270864355 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :well, its not really a language phenomena < 1270864372 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Any way to avoid tutorials that assume I've never seen a functional language before? < 1270864373 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its a formal property of certain kinds of grammars, but it relates to linguistic phenomena < 1270864486 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Any reason to learn O'Caml when I know Haskell < 1270864520 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: diverse perspective. < 1270864546 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: O'Caml has objects. < 1270864559 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :You can drink the OOP coolaid. < 1270864566 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Koolaid, too. < 1270864579 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ACTION drinks pikhq's Koolaid < 1270864608 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :http://www.post-gazette.com/pg/10099/1048991-67.stm?cmpid=newspanel1 I'd drop TV in a heartbeat < 1270864630 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :i have a TV. < 1270864631 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :augur: you mean the phenomena of using -a plural nouns in the singular? < 1270864632 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I mean, I almost never turn on a TV, I use Hulu. If it came down to Hulu vs. rest of the Internet, I would drop Hulu < 1270864633 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its connected to my PS2. < 1270864650 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: no. i presume you mean "data" as a singular? < 1270864650 0 :Oranjer!~HP_Admini@adsl-71-8-66.cae.bellsouth.net JOIN :#esoteric < 1270864653 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :s/Hulu/Hulu and .. other means of watching shows/g < 1270864659 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :augur: and, _phenomena_ < 1270864753 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :well, its work pointing out that both of those words are loan words, and so its invalid to say that it's an -a plural. it's merely an irregular plural, english has no class of -a plurals as an actual class of the language, they exist only epiphenomenally as an artifact of the source language. < 1270864778 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :second, "phenomena" is an accepted, tho less common, singular form of the word < 1270864799 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :third, "data" in many dialects is a mass noun (like milk), hence "the data is" ~ "the milk is" < 1270864854 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I still prefer "the datum is". < 1270864874 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :But, then, I'm a nerd who thinks English isn't complex enough. :P < 1270864889 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :english morphology isnt complex, this is true < 1270864906 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but then, neither is latin or greek, in the grand scheme of things. < 1270865082 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but english has plenty of complexity syntactically < 1270865095 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :if you want some introductions to this complexity, i would be happy to provide. :) < 1270865118 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Sure, why not? < 1270865156 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::o < 1270865168 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :my favorite example is extraction islands and parasitic gaps < 1270865243 0 :Oranjer!unknown@unknown.invalid PRIVMSG #esoteric ::O < 1270865251 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so you can do these things like extract sub-elements, right < 1270865252 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :for instance < 1270865265 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :John saw [the man] ==> [the man] that John saw ___ < 1270865271 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :To add two floats together you need to use a different operator, +. (note the trailing period). < 1270865274 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :That sounds fun < 1270865277 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1270865287 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :and you can do it from both subject and object position < 1270865298 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :[the man] saw John ==> [the man] that ___ saw John < 1270865309 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but you can only do it once < 1270865312 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so for instance < 1270865365 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :[the man] saw [the woman] ==> [the man] that ___ saw [the woman] ==> ... ==> John saw [the man] that ___ saw [the woman] =/=> [the woman] that John saw [the man] that ___ saw ___ < 1270865388 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: make sense? < 1270865413 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :not the why behind it, but just the fact of the matter < 1270865438 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What's with the ;; thing? < 1270865456 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :augur: o.O < 1270865461 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1270865463 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: stop trying to learn ocaml. < 1270865467 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it's not a very good language < 1270865480 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That's about it. < 1270865486 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but, also, don't diss things like that; they're design choices < 1270865494 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: i presume you understand roughly what im showing with "John saw [the man] ==> [the man] that John saw ___" < 1270865495 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :yes? < 1270865508 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yeah. < 1270865551 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :and i presume you get what i'm showing with "[the man] that the woman saw ___ ==> John saw [the man] that the woman saw ___" < 1270865552 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :yeah? < 1270865577 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :"o.O" is not a reaction of not understanding. < 1270865587 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :oh ok :p < 1270865595 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its an expression of "thats fucking weird"? < 1270865623 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1270865631 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :want some more weirdness? :) < 1270865662 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: ignoring syntactic ugliness is a prerequisite for learning ocaml < 1270865687 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :John saw [the man] before he met him ==> [the man] that John saw ___ before he met him < 1270865692 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but < 1270865710 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :well no lets say not "met him" but "met the woman" < 1270865732 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :John saw the man before he met [the woman] =/=> [the woman] that John saw the man before he met ___ < 1270865735 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :English's syntax is crazy when you actually think about it. < 1270865771 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :to some degree. its quite well behaved, but it has a bunch of bizarre phenomena. this one actually is apparently a universal phenomena of language, but < 1270865773 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Hm. Should I switch to speaking Lojban? < 1270865783 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so you see how that last one is weird? < 1270865799 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yeah. < 1270865799 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :you cant extract out of an adverbial clause "before he met the woman" < 1270865845 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ok now watch this < 1270865864 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :suppose that john saw the woman before he met that same woman < 1270865866 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :now: < 1270865880 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :[the woman] that John saw ___ before he met ___ < 1270865979 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :whats up with that, huh < 1270866011 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :if you extract out of the main clause object position, having the gap in the adverbial object position is no longer bad < 1270866084 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :the examples of that sort of thing multiply when you look at the different positions for the different gaps. < 1270866293 0 :zzo38!~zzo38@h24-207-48-53.dlt.dccnet.com JOIN :#esoteric < 1270866347 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Can you write a music using Bohlen-Pierce notes? < 1270866388 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :what is a music. < 1270866493 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Bohlen-Pierce music is music that the notes follow 3^(n/13) instead of 2^(n/12) < 1270866522 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :your grammar is horrible < 1270866527 0 :Oranjer!unknown@unknown.invalid PRIVMSG #esoteric :I think I heard of that! < 1270866539 0 :Oranjer!unknown@unknown.invalid PRIVMSG #esoteric :on my local college radio station, I believe < 1270866542 0 :Oranjer!unknown@unknown.invalid PRIVMSG #esoteric :that or NPR < 1270866631 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: sorry about that, i got augur wound up by criticising _his_ english < 1270866644 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Your Englishes all are sucks. < 1270866644 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it's all my fault, really < 1270866658 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: yes only my english was grammatical, and you're not a native speaker. ;) < 1270866680 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :augur: hasn't prevented me from correcting native speakers before < 1270866693 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I think anarchy golf is broken (it is now maintenance?), did I break it by setting the PID too much? < 1270866701 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Oerjan speaks better English than many a native speaker. < 1270866714 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well writes < 1270866717 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Well. At least types it. No idea how well he speaks it out loud. :P < 1270866717 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :true, but it DOES mean that your judgments are not reliable. your book knowledge might be, but your judgments are not. < 1270866763 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :augur knows english when he sees it. also, pornography. < 1270866771 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1270866777 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its true tho < 1270866783 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Do most people NOT know pornography when they see it? < 1270866797 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :you can have exquisite book knowledge of english, but your intuitions about english will never match a native speakers < 1270866799 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :"There are all these naked people putting their body parts into each other in this picture ... what's going on?" < 1270866803 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :the same is true for any language < 1270866808 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :augur: Dude, all that's merely a matter of how much correct English he's seen. Of course, hardly any non-native speaker is going to be exposed to the foreign language as much as a native speaker is... < 1270866822 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: no, it doesnt matter how much correct english he's seen < 1270866834 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I don't like to watch pornography < 1270866849 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :there are certain things that are not possible for a non-native speaker to get, for some reason. < 1270866869 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :at least not without extreme attention given to the issue in question < 1270866926 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes to play some Worms < 1270866942 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its a difference between knowledge of facts of the language, vs knowledge of the procedure that resulted in those facts < 1270866984 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :native speakers possess procedural knowledge that is independent of the particulars, and hence they can produce judgments for arbitrary expressions < 1270867003 0 :Oranjer!unknown@unknown.invalid PRIVMSG #esoteric :can this procedural knowledge ever be taught to a non-native speaker? < 1270867013 0 :oerjan!unknown@unknown.invalid TOPIC #esoteric :DO NOT FEED THE AUGUR | http://tunes.org/~nef/logs/esoteric/?C=M;O=D < 1270867014 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :second-language speakers, on the other hand, learn things as facts about particular words or constructions < 1270867019 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Oranjer: Yarly < 1270867023 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :Oranjer: some of it can, some of it cant. < 1270867032 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :we dont actually _understand_ the procedural knowledge, so < 1270867038 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Some of it can, some of it Kant. < 1270867074 0 :augur!unknown@unknown.invalid TOPIC #esoteric :DO NOT FEED THE AUGUR | /augur eats oerjan | http://tunes.org/~nef/logs/esoteric/?C=M;O=D < 1270867085 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yipe < 1270867094 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Let's go back to porn :P < 1270867102 0 :augur!unknown@unknown.invalid TOPIC #esoteric :DO NOT FEED THE AUGUR | /augur eats oerjan out | http://tunes.org/~nef/logs/esoteric/?C=M;O=D < 1270867105 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Or is that what you mean tby "eat" < 1270867107 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Hahaha < 1270867109 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Win. < 1270867114 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1270867126 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :i aims to please < 1270867205 0 :oerjan!unknown@unknown.invalid TOPIC #esoteric :Topic closed by the moral police | http://tunes.org/~nef/logs/esoteric/?C=M;O=D < 1270867217 0 :augur!unknown@unknown.invalid TOPIC #esoteric :Topic closed by the moral police | fuck the police | http://tunes.org/~nef/logs/esoteric/?C=M;O=D < 1270867265 0 :Gregor!unknown@unknown.invalid TOPIC #esoteric :Topic closed by the moral police | fuck the police | (pics or it didn't happen) | http://tunes.org/~nef/logs/esoteric/?C=M;O=D < 1270867327 0 :augur!unknown@unknown.invalid TOPIC #esoteric :Topic closed by the moral police | fuck the police | (pics or it didn't happen) | http://www.motherrussiasdaughters.com/images/euro-pornstars/euro-babe_2.jpg | http://tunes.org/~nef/logs/esoteric/?C=M;O=D < 1270867354 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I like the dagger style :P < 1270867370 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Also, you came up with that link in a distressingly short amount of time :P < 1270867402 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :google images: "police uniform sex" < 1270867402 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you think i just said augur knows his pornography for no reason, do you? < 1270867414 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :i know my google-fu, more accurately. < 1270867418 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :IIRC, that's not HIS pornography :P < 1270867423 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :OR SO YOU CLAIM < 1270867425 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :decidedly not. < 1270867433 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :sorry, the "his" was a typo < 1270867444 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :actually it wasnt < 1270867445 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :or misremembering, rather < 1270867447 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its just a different his. < 1270867455 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :argh < 1270867473 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :english lets you say "I know my X" to mean "I know a lot about X" < 1270867493 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :as opposed to meaning "I know the X that belongs to me" < 1270867507 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :similarly for other possessive pronouns. < 1270867516 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I was just riffing off the ambiguity :P < 1270867541 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ACTION riffs off gregor's ambiguity < 1270867543 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :;o ;o ;o < 1270867563 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ACTION rips off augur's ambiguity < 1270867578 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::x < 1270867582 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :hot < 1270867592 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Did I say "ambiguity"? < 1270867595 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I meant "clothes" < 1270867645 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Can we go back to English now? X-P < 1270867663 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :also consider pied piping < 1270867703 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ofcourse its considered bad form to strand your prepositions, eg "who(m) are you talking to" vs. "to who(m) are you talking" < 1270867730 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but in some cases, you have to do more than just move the preposition along with the WH phrase < 1270867733 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Oh pffft. < 1270867738 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :To consider that bad form is quite outdated. < 1270867749 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :true, but it was an example of pied piping < 1270867751 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: hey, i was trying to subtly get us _away_ from English, here. and failing miserably. < 1270867759 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :To whom is it that you are speaking? < 1270867761 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :where you bring the extra but (the preposition) with you < 1270867767 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but consider < 1270867772 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :This is the kind of language up with which I cannot put. < 1270867773 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hot piping pies < 1270867776 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :"john was shocked by a book about joan of arc" is acceptable, but if you want to ask who the book is about < 1270867786 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :"who was john shocked by a book about" < 1270867788 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :this is pretty horrible < 1270867799 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :and it doesnt get better by pied piping the preposition: < 1270867806 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :"about who was john shocked by a book" < 1270867807 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :also horrible < 1270867813 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but if you take the whole NP its fine: < 1270867816 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :A book about Joan of Arc John was shocked by; to whom it is that you are speaking is John. < 1270867818 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :"a book about who shocked john" < 1270867819 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Police police police police police police police. < 1270867821 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :dammit s/hot piping/piping hot/ < 1270867826 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: XD < 1270867835 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Police, in Buffalo < 1270867839 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :HAWT BEASTIALITY < 1270867840 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :we,, sorry, "a book about who was john shocked by" < 1270867844 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :a ni way < 1270867847 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i'ma go now < 1270867853 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :see you cool dudes tomorrowz < 1270867858 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :alise: see you < 1270867874 0 :alise!unknown@unknown.invalid QUIT :Quit: Leaving < 1270867896 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :"john read about about joan of arc" < 1270867912 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :=?=> "who did john read a book about" < 1270867928 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :=?=> "about who did john read a book" < 1270867940 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :whomsoever < 1270867942 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :=/=> "a book about who did john read" < 1270867960 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so here youve got pied piping that is _bad_ < 1270867985 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :noone understands this phenomena/on either < 1270868023 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The famous Dr. Daniel Noone understands most everything. < 1270868040 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its true < 1270868155 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :Daniel Noone is an ancestor of Noonien Soong < 1270868166 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Booh hiss at Trek references :P < 1270868176 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :you should see this paper im working on < 1270868184 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Boo hiss at working on things. < 1270868185 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :>_> < 1270868194 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :my example sentences are all star trek references < 1270868214 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :specifically, instead of using the classical example "brutus stabbed caesar", i have "worf stabbed gowron" < 1270868222 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :insted of "a small brown dog" its "a small brown targ" < 1270868246 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Ow. < 1270868247 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :My brain. < 1270868250 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I needed that for thinking. < 1270868261 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :thinking is overrated. < 1270868298 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Druhhhhhhh < 1270868329 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I invented how to make up Pokemon Red on 8x8 ASCII only display with 7 buttons it works fine < 1270868335 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ive decided that im going to use example sentences, in a series of papers, such that if you collected the example sentences together in order of appearance < 1270868352 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :they actually outline a plot of an episode of some random scifi show < 1270868446 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :OK, I like that idea a bit < 1270868458 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ACTION sobs silently to himself in the corner. < 1270868526 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :my intention is to make the sequence of sentences unassuming, so that you wouldnt realize whats going on unless you're astute < 1270868533 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :seq 100 1100 > /dev/dsp < 1270868544 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :e.g. using farscape, babylon 5, firefly, efc, etc. < 1270868547 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :less well known scifi < 1270868575 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :that way, if someone comes up to you afterwards and indicates that they recognize the story, you've discovered a fellow nerd < 1270868580 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :and made a new friend < 1270868612 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :augur: Yes I suppose that helps. But first you have to figure out the best way to make the example like that < 1270868621 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :s/friend/stalker/ < 1270868623 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its not that hard < 1270868629 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: theres a difference? < 1270868633 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric : But gimme a minute! < 1270868638 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Damn, you put another line in there. < 1270868641 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Ruined my nonsense zinger.' < 1270868647 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1270868655 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :i aims to displease < 1270868671 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Basically, you aim to alter net pleasure. < 1270868682 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Once I was testing some computer and I typed in: yes > /dev/dsp < 1270868696 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ACTION does that :P < 1270868705 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Well that's unpleasant. < 1270868732 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :You can type yes yyyyyyy to make it lower pitch < 1270868740 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :The more "y" you add, the low pitch < 1270868798 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :is this in bash? < 1270868805 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Sure. < 1270868863 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :thats useless < 1270868895 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :allit does is loop printing yyyyyyy < 1270868896 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1270868909 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :But you can put > /dev/dsp < 1270868916 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :oh ok < 1270868916 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And then it will sound < 1270868934 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :permission denied! D: < 1270868941 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :whats /dev/dsp < 1270868971 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I think you might also be able to use > /dev/audio or | aplay -t raw < 1270868971 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :42nd notes. Just calculated that. Friggin' Chopin. < 1270868985 0 :lament!~lament@S0106002312fa554a.vc.shawcable.net JOIN :#esoteric < 1270868995 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ah well, im on a mac so < 1270869013 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Dood, they're the 7-tuplets of triplets! WTFWTF *boom* < 1270869015 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Use the equivalent mac command, I don't know what it is < 1270869020 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :neither do i :D < 1270869034 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Doesn't Mac have OSS? < 1270869036 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Probably "yes" is the same, though < 1270869044 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: have you implemented the theory in Generative Theory of Tonal Music yet? < 1270869061 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :augur: Nope! < 1270869067 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :lame < 1270869068 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :do so! < 1270869072 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :augur: I've chosen to implement my fingers onto this piano instead. < 1270869080 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :o ok < 1270869989 0 :oerjan!unknown@unknown.invalid QUIT :Quit: Later < 1270870362 0 :zzo38!unknown@unknown.invalid QUIT :Remote host closed the connection < 1270870482 0 :Oranjer1!~HP_Admini@adsl-71-8-66.cae.bellsouth.net JOIN :#esoteric < 1270870534 0 :Oranjer!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1270872385 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1270872840 0 :augur!~augur@c-68-54-80-152.hsd1.md.comcast.net JOIN :#esoteric < 1270873665 0 :lament!unknown@unknown.invalid QUIT :Quit: lament < 1270874102 0 :Oranjer!~HP_Admini@adsl-71-8-66.cae.bellsouth.net JOIN :#esoteric < 1270874278 0 :Oranjer1!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1270874430 0 :Quadrescence!unknown@unknown.invalid QUIT :Ping timeout: 245 seconds < 1270874580 0 :Quadrescence!~Quad@unaffiliated/quadrescence JOIN :#esoteric < 1270874864 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Would it be entirely wrong to say that a VM is an interpreter for machine code? < 1270875014 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :no < 1270875358 0 :oklopol!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1270875380 0 :oklopol!~oklopol@a91-153-122-35.elisa-laajakaista.fi JOIN :#esoteric < 1270875866 0 :Alex3012!~chatzilla@ool-18b989d3.dyn.optonline.net JOIN :#esoteric < 1270876113 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1270876209 0 :oerjan!~oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1270876313 0 :oklofok!~oklopol@a91-153-122-35.elisa-laajakaista.fi JOIN :#esoteric < 1270876347 0 :oklopol!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1270876519 0 :Guest_126!~Guest_126@95.147.220.175 JOIN :#esoteric < 1270876545 0 :Guest_126!unknown@unknown.invalid QUIT :Quit: Disconnected from OpenPilot Forums < 1270877290 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1270877571 0 :Oranjer!unknown@unknown.invalid PART #esoteric :? < 1270877581 0 :Quadrescence!unknown@unknown.invalid QUIT :Ping timeout: 252 seconds < 1270878161 0 :Quadrescence!~Quad@unaffiliated/quadrescence JOIN :#esoteric < 1270878197 0 :lament!~lament@S0106002312fa554a.vc.shawcable.net JOIN :#esoteric < 1270878469 0 :lament!unknown@unknown.invalid QUIT :Client Quit < 1270879064 0 :oerjan!unknown@unknown.invalid QUIT :Quit: leaving < 1270886305 0 :oerjan!~oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1270886399 0 :clog!unknown@unknown.invalid QUIT :ended < 1270886400 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1270886896 0 :kar8nga!~kar8nga@jol13-1-82-66-176-74.fbx.proxad.net JOIN :#esoteric < 1270887163 0 :gm|lap!~gm@unaffiliated/greasemonkey JOIN :#esoteric < 1270887661 0 :Gracenotes!unknown@unknown.invalid QUIT :Remote host closed the connection < 1270889880 0 :jcp!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1270890457 0 :coppro!unknown@unknown.invalid QUIT :Quit: I am leaving. You are about to explode. < 1270890989 0 :oerjan!unknown@unknown.invalid QUIT :Quit: leaving < 1270891754 0 :kar8nga!unknown@unknown.invalid QUIT :Remote host closed the connection < 1270892307 0 :lament!~lament@S0106002312fa554a.vc.shawcable.net JOIN :#esoteric < 1270894255 0 :Gracenotes!~person@wikipedia/Gracenotes JOIN :#esoteric < 1270894960 0 :tombom!~tombom@wikipedia/Tombomp JOIN :#esoteric < 1270896285 0 :lament!unknown@unknown.invalid QUIT :Quit: lament < 1270898283 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds < 1270900923 0 :adam_d!~Adam@cpc2-acto6-0-0-cust48.brnt.cable.ntl.com JOIN :#esoteric < 1270901136 0 :gm|lap!unknown@unknown.invalid QUIT :Quit: ilua < 1270904604 0 :adam_d!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1270905129 0 :BeholdMyGlory!~behold@unaffiliated/beholdmyglory JOIN :#esoteric < 1270905353 0 :Tritonio_GR!~Tritonio@athedsl-255233.home.otenet.gr JOIN :#esoteric < 1270905549 0 :alise!~alise___@212.183.140.3 JOIN :#esoteric < 1270905634 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Good morning! < 1270906100 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Cool, G(12) > G_64 where G = goodstein function. < 1270906105 0 :Quadrescence!unknown@unknown.invalid QUIT :Ping timeout: 245 seconds < 1270906111 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Admittedly it has a rather more complex definition. < 1270906158 0 :Quadrescence!~Quad@c-24-131-149-41.hsd1.mn.comcast.net JOIN :#esoteric < 1270906161 0 :Quadrescence!unknown@unknown.invalid QUIT :Changing host < 1270906161 0 :Quadrescence!~Quad@unaffiliated/quadrescence JOIN :#esoteric < 1270908420 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://upload.wikimedia.org/wikipedia/commons/1/15/Champernowne_CF.png the champernowne constant has a pretty fucked up continued fraction < 1270908425 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :that last term isn't even the complete one < 1270908543 0 :kar8nga!~kar8nga@jol13-1-82-66-176-74.fbx.proxad.net JOIN :#esoteric < 1270910898 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION plays with Prolog < 1270911294 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :coool < 1270912063 0 :oerjan!~oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1270912286 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :wow symbolic differentiation in prolog is like... stupidly fucktardedly easy < 1270912316 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(X, X, 1). < 1270912317 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(X, Y, 0) :- \+ X = Y. < 1270912317 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(U+V, X, A+B) :- d(U,X,A), d(U,V,B). < 1270912317 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(U*V, X, (U*A) + (V*B)) :- d(V,X,A), d(U,X,B). < 1270912317 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(U/V, X, (V*A) / (U*B) / (V^2)) :- d(U,X,A), d(V,X,B). < 1270912317 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(U^V, X, (V*(U^(V-1))) * A) :- d(U,X,A). < 1270912338 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :err omit that X,Y,0 line I just added it and it messes things up < 1270912351 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- d(x^2, x, R). < 1270912352 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :R = 2*x^ (2-1)*1. < 1270912373 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :foo(X,R) :- d(X^2,X,E), R is E. < 1270912373 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- foo(34, R). < 1270912373 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :R = 68. < 1270912548 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what's \+ ? < 1270912586 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :\+ X succeeds iff X fails < 1270912587 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but ignore that line; it breaks stuff < 1270912587 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I need to condition on X being a symbol < 1270912594 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :otherwise every differentiation gets the extra possibility R = 0 < 1270912600 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :because of what your variables could be < 1270912604 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1270912604 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- d(X*Y,Y,X). < 1270912605 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :X = 1, < 1270912605 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Y = 1*** ; < 1270912605 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :X = ** * 1+** * 1, < 1270912605 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Y = ** * 1+** * 1 ; < 1270912606 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ERROR: Out of local stack < 1270912609 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(where ** represents "anything") < 1270912614 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so 1*** is 1*something < 1270912634 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(i.e. "what values for X and Y make the derivative of X*Y over Y equal to X?") < 1270912680 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I like how we use the fact that arithmetic isn't automatically evaluated to return a symbolic expression, but we can then easily numerically evaluate it < 1270912686 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :because it's just the tree structure of prolog arithmetic < 1270912721 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i think your U^V is wrong < 1270912726 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :btw if you use UPPERCASE VARIABLES as the variables for d it enumerates all the possible cases for the variable and the result... which is often not what you want < 1270912731 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :unless V is a constant < 1270912744 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(x^x, x, R) otoh will give you the expression < 1270912746 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: yes... < 1270912752 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I need to figure out how to express is-constant < 1270912766 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: I think I can express it as: "V does not mention the variable" < 1270912776 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no, you just need to use the multivariable chain rule properly :) < 1270912795 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yeah but i'm lazy < 1270912847 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and this is nice and short < 1270912857 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :d(U^V) = V*(U^(V-1))dU + ln U * U^V * dV < 1270912908 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Fiine. < 1270912937 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: but log is floating-point in prolog :( < 1270912940 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oh, wait, that's only if you evaluate it < 1270912944 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so the symbolic result will be precise < 1270912948 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ha! this is perfect < 1270912973 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: I hope that prolog uses the same precedence as your expression < 1270912977 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(I really suck at operator precedence) < 1270912985 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I know I have redundant parens in < 1270912989 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(U*A) + (V*B) < 1270912993 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and I think in (V*A) / (U*B) < 1270913024 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: that rule broke my system < 1270913038 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :you can do d(X^2, X, R) < 1270913041 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but not d(x^2,x,R) < 1270913078 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you lack a rule for constants < 1270913118 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also, division has a bug, should be (V*A - U*B) / (V^2) iirc < 1270913136 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :er right < 1270913139 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i suck at mentally parsing things :( < 1270913154 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm or is that the wrong sign... < 1270913173 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :that is right i think < 1270913205 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :term_variables(+Term, -List) < 1270913205 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : Unify List with a list of variables, each sharing with a unique variable of Term.47This predicate used to be called free_variables/2 . The name term_variables/2 is more widely used. The old predicate is still available from the library library(backcomp). The variables in List are ordered in order of appearance traversing Term depth-first and left-to-right. See also term_variables/3. For example: < 1270913206 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i'm unsure of the order of the terms < 1270913206 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric ::))) < 1270913207 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :that sounds helpful < 1270913228 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: i just looked it up that's right < 1270913232 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1270913253 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :dammit, term_variables only works for UPPERCASES < 1270913262 0 :tombom_!~tombom@wikipedia/Tombomp JOIN :#esoteric < 1270913280 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well of course, those are the variables, duh < 1270913341 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1270913345 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but I support differentiation on littles too < 1270913347 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1270913348 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(X, Y, R) :- atom(X), \+ X = Y -> R is 0 ; R is 1. < 1270913360 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(you can do this as two, shorter rules but then d(x,x,R) says R = 1 and then false which is irritating) < 1270913368 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so will your ^ rule work now? < 1270913435 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well i don't know why it didn't work the first time, how do you encode it? < 1270913444 0 :tombom!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1270913554 0 :adam_d!~Adam@cpc2-acto6-0-0-cust48.brnt.cable.ntl.com JOIN :#esoteric < 1270913656 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(U^V, X, V*(U^(V-1)) * A + log(U) * U^V * B) :- d(U,X,A), d(V,X,B). < 1270913812 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :looks right to me < 1270913815 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :food -> < 1270913970 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: it works at the expense of totally breaking things < 1270913981 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :because I basically have to add the default rule that d(x) = 1 < 1270914135 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: also at the expense of, you know, not actually giving correct results < 1270914204 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but you _already_ have d(X,X,1) < 1270914331 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1270914334 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :just changed things: < 1270914340 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :constant(X, Y) :- number(X) ; atom(X), \+ X = Y. < 1270914340 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(X, Y, R) :- constant(X, Y) -> R is 0 ; X = Y -> R is 1. < 1270914365 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- d(x^2,x,E). < 1270914365 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E = 2*x^ (2-1)*1+log(x)*x^2*0. < 1270914370 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :that *0 is fucking everything up < 1270914376 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :paren issue? < 1270914413 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :um that's correct, that term is supposed to cancel out when the exponent is a constant < 1270914444 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(log(x)*x^2*0) < 1270914452 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :+ has lowest precedence < 1270914540 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :then how come foo(n,R) = 0 for all n? given < 1270914545 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :foo(X,R) :- d(X^2,X,E), R is E. < 1270914549 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :or is your rule in addition to the previous one? < 1270914722 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what rule < 1270914738 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what do you mean by "all n" < 1270914775 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :if you evaluate foo(3,R), say, then of course you are doing d(3^2, 3, E) which is nonsense < 1270914799 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you cannot substitute values until _after_ you have differentiated with a proper variable < 1270914863 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :this worked before though :) < 1270914867 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :with the other rules you can use uppercase vars too < 1270914898 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :only by luck. if you differentiated 3*x at x=3 it would break < 1270914953 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :hmm, right < 1270915030 0 :FireyFly!~firefly@unaffiliated/firefly JOIN :#esoteric < 1270915076 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: but prolog has no function to substitute lowercase atoms does it? < 1270915124 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't know, but i'm sure you can write one < 1270915166 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :that's a shame though I thought it was so awesome :( < 1270915166 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: mind - < 1270915169 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :upper case i more efficient since it's essentially in-place update < 1270915174 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(X^2,X,E) with no constraints on X (e.g. argument) should work < 1270915180 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it enumerates all the possible input pairs and output expressions < 1270915182 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*is < 1270915193 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- d(X^2,X,E). < 1270915194 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :X = ** ^ 2, < 1270915194 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E = 1 ; < 1270915194 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E = 2*X^ (2-1)*1+log(X)*X^2*0 ; < 1270915194 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :X = ** + **, < 1270915195 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E = 2* (** + **)^ (2-1)* (1+1)+log(** + **)* (** + **)^2*0 ; < 1270915197 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :X = ** + **, < 1270915198 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E = 2* (** + **)^ (2-1)* (1+ (1+1))+log(** + **)* (** + **)^2*0 < 1270915227 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :eek :D < 1270915246 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: writing a substitution function probably won't be so easy, as i have to handle variadic stuff < 1270915253 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :prolog should just be LOGICALLY CURRIED :))) < 1270915272 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also i didn't say there _wasn't_ a function to substitute lowercase atoms, i said i didn't know < 1270915304 0 :Quadrescence!unknown@unknown.invalid PRIVMSG #esoteric :fuk currying < 1270915309 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: i looked and couldn't find one < 1270915322 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oh wait, d only ever generates function expressions with two arguments < 1270915323 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :convenient < 1270915327 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and the function is always constant < 1270915401 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders why subst(X, X, Y, Y). < 1270915401 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :subst(F(A,B), X, Y, F(A2,B2)) :- subst(A,X,Y,A2), subst(B,X,Y,B2). < 1270915401 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :doesn't parse < 1270915403 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the second line in particular < 1270915429 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: I wish you could do it for uppercase vars it'd be a lot prettier < 1270915465 0 :FireyFly!unknown@unknown.invalid NICK :FireFly < 1270915467 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :um why can't you < 1270915487 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :because you can't bind X < 1270915487 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :or wait < 1270915488 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :can you do < 1270915496 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(X^2, X, E), X is 34, R is E. < 1270915496 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :? < 1270915504 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :sure < 1270915516 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*X = 34 < 1270915524 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1270915528 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :hmm problem is that generates the correct result /but/ < 1270915543 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :then it says it has more terms < 1270915544 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and going on loops < 1270915546 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(trying every other number to see if it's 34) < 1270915600 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the problem is d/3 tries to substitute values for X < 1270915602 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :apart from that it works < 1270915613 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ah you can just put ! after < 1270915618 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :foo(Xv,R) :- d(X^2, X, E), X = Xv, R is rational(E), !. < 1270915648 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- foo(pi, R). < 1270915648 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :R = 6.28319. < 1270915649 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(I removed the rational()) < 1270915659 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :still, it seems cleaner to do it with x < 1270915665 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :because then we can do more symbolic jiggery-pokery < 1270915723 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :still, this is awesome < 1270915729 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :imagine how awkward it would be in C :-) < 1270915748 0 :Quadrescence!unknown@unknown.invalid PRIVMSG #esoteric :alise: Which prolog do you use? < 1270915756 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :SWI < 1270915760 0 :Quadrescence!unknown@unknown.invalid PRIVMSG #esoteric :thought so < 1270915773 0 :Quadrescence!unknown@unknown.invalid PRIVMSG #esoteric :I might play with prolog a little more today. I haven't in so, so long < 1270915779 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :gprolog sort of doesn't feel terribly prologish to me and i think has weird names for some procedures I use intuitively < 1270915785 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :all the ones that aren't gprolog or SWI just seem really 90s < 1270915789 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(or completely dead) < 1270915795 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(or tied to some stupid platform) < 1270915815 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :sisctus is probably fine i've never tried it though < 1270915815 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :alise: you may want to start with d(X, Y, Z) :- var(X), !, something... < 1270915869 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :define something :P < 1270915907 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that thing with constant above, perhaps < 1270915921 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so unify the two? or two separate ones? < 1270915929 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :if I unify them then d(x,x,E) won't work < 1270915931 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(nor d(x,y,E) < 1270915931 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :) < 1270915951 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :anyway constant(X, _) always fails if X is a var < 1270915954 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :because X is neither a number nor an atom < 1270915980 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :alise: well rewrite the case anyway, the point is _not_ to substitute the first argument ever < 1270915990 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(X, Y, A) :- var(X), !, X = Y -> A = 1. < 1270915991 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(X, Y, A) :- constant(X, Y) -> A = 0 ; X = Y -> A = 1. < 1270915994 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :is that acceptable? < 1270916003 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i mean I'm not quite sure what you want it to do < 1270916011 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh hm < 1270916020 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well i guess < 1270916038 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :constant(X, Y) :- number(X) ; atom(X), X \= Y. < 1270916041 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :is this the function at risk of substituting? < 1270916083 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the risk of substituting is in _all_ the d clauses for specific functions < 1270916103 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i see < 1270916103 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :whenever you pass an (upper case) variable as the first argument < 1270916109 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but I'm stil not sure what you want me to do!! < 1270916111 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*still < 1270916140 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i want you to prevent that substitution by doing a check for the first argument being variable, then cutting and handling it specially < 1270916161 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yes -- but specially how? < 1270916169 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Cutting is lame < 1270916172 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :do you want to break that d(X^2, X, E) generates all the possible in/out pairs? < 1270916176 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :if so, I hate you and all your children < 1270916193 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh in that case move along, nothing to see here :D < 1270916202 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1270916202 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i thought that was a bug < 1270916254 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1270916257 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :no that's awesome < 1270916272 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I still need to figure out how to write < 1270916274 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :subst(F(A,B),... < 1270916277 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :without syntax erroring < 1270916313 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :there is a predicate for breaking up terms into head + list of arguments < 1270916324 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but you can't pattern match? < 1270916325 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :super fucking lame :( < 1270916335 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :anyway oerjan since when are you a prologer? < 1270916350 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :very barely < 1270916361 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :"very barely" is not a time. < 1270916382 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :although for a long time i guess. i'm not quite sure, may have been already in high school < 1270916395 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: It is very barely a time. < 1270916408 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(that i found a book on it. i'm pretty sure i didn't have an actual implementation) < 1270916478 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : Evaluate Expr. Although ISO standard dictates that A=1+2, B is A works and unifies B to 3, it is widely felt that source-level variables in arithmetic expressions should have been limited to numbers. In this view the eval function can be used to evaluate arbitrary expressions.53The eval/1 function was first introduced by ECLiPSe and is under consideration for YAP. < 1270916479 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :widely felt my ass < 1270916486 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(LULZ INNUENDO) < 1270916622 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Why Father Widely ... whyyyyyy < 1270916628 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1270916638 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: hmm I dislike your exponential rule because there is no precise evaluation for log in Prolog < 1270916643 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :because it has no precise irrational type < 1270916655 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :maybe I should reinstate my other one only for the case where V is constant < 1270916695 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :perhaps. < 1270916785 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :or just accept that the world is imprecise < 1270916821 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1270916825 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Term =.. [Funtor|Args] < 1270916828 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*Functor < 1270916937 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- subst(x^(x-x), x, y, R). < 1270916937 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :R = y^ (y-y) ; < 1270916937 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :false. < 1270916937 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yay hooray < 1270916947 0 :MigoMipo!~migomipo@84-217-7-76.tn.glocalnet.net JOIN :#esoteric < 1270917052 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- subst(2*(x-y) + 0, x, flower, E). < 1270917052 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E = 2* (flower-y)+0 ; < 1270917052 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :false. < 1270917052 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- subst(2*(x-y) + 0 + (x*log(x/y)), x, flower, E). < 1270917052 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :false. < 1270917056 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ok, so I need to handle single arg functions too :P < 1270917123 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i'm thinking that prolog would make an excellent CAS < 1270917277 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders how you're meant to do a map in prolog < 1270917397 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I was hoping it'd be something awesome, like < 1270917408 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :member(X, L), Y is X+1, assert(member(Y, L2)) < 1270917411 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :A YouTube video that I left in a tab overnight spontaneously decided to start playing < 1270917755 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: is it healthy to try and remove "foo ; false" things? < 1270917756 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :like you get the one right result then a false < 1270917762 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I'm trying to change my code to stop it < 1270917870 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :um < 1270917955 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't know whether that is possible. < 1270917991 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it is if you fuck with your code a lot :D < 1270917992 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"I've tried to teach people autodidactism, but I've realized they have to learn it for themselves." --shapr < 1270918004 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :false is what afaiu what you get when there _are_ no more results < 1270918024 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: well yeah < 1270918036 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but i mean if you tweak your program so that prolog thinks that there cannot be any more results < 1270918038 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(as opposed to maybe there might be) < 1270918040 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't bother to prompt < 1270918043 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so you get no falses < 1270918050 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh. < 1270918061 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well i guess that's just a matter of adding cuts... < 1270918107 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yeah :P < 1270918156 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but then you need to be careful not to ruin your actual wanted multiple results < 1270918167 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1270918178 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :urgh, i shouldn't have defined a map function < 1270918180 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :bugs everywhere < 1270918184 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :how am i meant to dooo this < 1270918188 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :manually recursive function?# < 1270918220 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't know < 1270918308 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- d(x^2, x, E), subst(E, x, 42, E2), R is E2. < 1270918309 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E = 2*x^ (2-1)*1+log(x)*x^2*0, < 1270918310 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E2 = 2*42^ (2-1)*1+log(42)*42^2*0, < 1270918310 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :R = 84.0 ; < 1270918310 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :false. < 1270918310 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yay! < 1270918323 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :this is beautiful < 1270918345 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Making an Algebra system in Prolog? < 1270918372 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :well < 1270918372 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i just implemented differentiation :P < 1270918373 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but yeah i suppose i might do that < 1270918399 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :constant(X, Y) :- number(X) ; atom(X), X \= Y. < 1270918401 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(X, Y, A) :- constant(X, Y) -> A = 0 ; X = Y -> A = 1. < 1270918401 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(U+V, X, A+B) :- d(U,X,A), d(U,V,B). < 1270918401 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(U*V, X, (U*A) + (V*B)) :- d(V,X,A), d(U,X,B). < 1270918401 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(U/V, X, (V*A - U*B) / (V^2)) :- d(U,X,A), d(V,X,B). < 1270918402 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(U^V, X, V*(U^(V-1)) * A + log(U) * U^V * B) :- d(U,X,A), d(V,X,B). < 1270918404 0 :Quadrescence!unknown@unknown.invalid PRIVMSG #esoteric :alise: can I see your diff program? < 1270918408 0 :Quadrescence!unknown@unknown.invalid PRIVMSG #esoteric :is that it? < 1270918409 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Quadrescence: yes, see above :P < 1270918410 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1270918430 0 :Quadrescence!unknown@unknown.invalid PRIVMSG #esoteric :is subst() a predefined func? < 1270918435 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- d(x^(x/2), x, E). < 1270918435 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E = x/2*x^ (x/2-1)*1+log(x)*x^ (x/2)* ((2*1-x*0)/2^2). < 1270918442 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Quadrescence: it doesn't handle functions other than those enumerated so it's not "production ready" < 1270918445 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i'll show the whole file < 1270918540 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://pastie.org/912899.txt?key=f9lcfe9rul5yb1kzk4czg < 1270918548 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :if you evaluate symbolically like in foo2, the only cuts you need are the two in subst < 1270918557 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(otherwise everything has one more potential result which always fails) < 1270918560 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :that's just aesthetics though < 1270918566 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :more convenient when using the REPL < 1270918570 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :for foo you really do need the ! though < 1270918578 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :otherwise it loops forever trying every number and failing because it isn't Xv :-) < 1270918632 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Quadrescence: you can also use this procedure to do a (really crappy) "search" for derivatives: < 1270918633 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- d(X*Y, X, Y). < 1270918634 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :X = ** * 1, < 1270918634 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Y = 1 ; < 1270918634 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :X = ** * 1+** * 1, < 1270918634 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Y = ** * 1+** * 1 ; < 1270918635 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ERROR: Out of local stack < 1270918646 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(** meaning "anything that follows the rules of the function", I think) < 1270918665 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :also d would be better if it accepted any expression that doesn't mention the variable as constant but it doesn't < 1270918695 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :still, despite its flaws i think it shows just how awesomely awesome prolog is < 1270918735 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Quadrescence: If I were trying to make this actually useful for anything I'd start by, say, making the code handle function compositions and then doing cases for sin and the like < 1270918803 0 :Alex3012_!~chatzilla@ool-18b989d3.dyn.optonline.net JOIN :#esoteric < 1270918808 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :also it makes some assumptions... < 1270918811 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- d(x/x, x, E). < 1270918812 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E = (x*1-x*1)/x^2. < 1270918815 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :like x is not 0 < 1270918848 0 :Quadrescence!unknown@unknown.invalid PRIVMSG #esoteric :alise: Yeah, I am aware, jeez what do you take me for, sum kinda idoit??? < 1270918854 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and really there should be a simplification function so that it says things like "-1" instead of "(x*0-1*1)" < 1270918860 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Quadrescence: aware of what? < 1270918900 0 :Quadrescence!unknown@unknown.invalid PRIVMSG #esoteric :alise: idk < 1270918904 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :okay :P < 1270918930 0 :Alex3012!unknown@unknown.invalid QUIT :Ping timeout: 245 seconds < 1270919028 0 :Alex3012!~chatzilla@ool-18b989d3.dyn.optonline.net JOIN :#esoteric < 1270919043 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :He's Alex ... < 1270919045 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :FROM THE FUTURE < 1270919051 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :(1002 years in the future) < 1270919082 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Dun dun DUNNNNNNNNNNN < 1270919093 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :he's come here to investigate why civilization collapsed < 1270919136 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :unfortunately the people in 3012 don't understand cosmic irony < 1270919166 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It takes more than 1000 years to rediscover cosmic irony. < 1270919173 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1270919192 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :(It does not, however, take 1000 years from an apocalypse to discover time travel) < 1270919193 0 :Alex3012_!unknown@unknown.invalid QUIT :Ping timeout: 265 seconds < 1270919196 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :1003 years to be exact. < 1270919259 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: depends how deep the apocalypse < 1270919303 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I don't know that I've ever heard apocalypi described in terms of depth ... < 1270919346 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well you need to remove all knowledge that could be used to rebuild civilization fast... < 1270919495 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :`addquote I don't know that I've ever heard apocalypi described in terms of depth ... < 1270919510 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :146| I don't know that I've ever heard apocalypi described in terms of depth ... < 1270919695 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :[[ “N*Sync is the best band ever!” => “For all bands xx, N*Sync is better than band x (or, x=N*Sync).” A quick listen can easily show this statement false.]] < 1270919785 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :[[ A buggy line from a song (Everybody Loves My Baby, Jack Palmer and Spencer Willson, 1924): “Everybody loves my baby; My baby don't love [anybody] but me.” => “For all persons x, x loves my baby. For all persons y, if my baby loves y, then y is me.” If true, one can conclude the speaker is his own baby, and is narcissistic. ]] < 1270919789 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :this is the best page about basic quantifiers ever < 1270919838 0 :oerjan!unknown@unknown.invalid QUIT :Quit: leaving < 1270920495 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- d(x^x^x,x,E), subst(E, x, 42, E2), R is E2. < 1270920496 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ERROR: Out of global stack < 1270920497 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :a deficiency < 1270920544 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :although that's just in is < 1270920555 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so you could fix it by substituting, e.g. something better at arithmetic :P < 1270920565 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(given a few dozen oodles of memory naturally) < 1270920573 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :still stack overflows suck < 1270920638 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(other operations merely cause overflow) < 1270922188 0 :Tritonio_GR!unknown@unknown.invalid QUIT :Quit: Leaving. < 1270922419 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oh lol ** doesn't mean anything < 1270922422 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it means infinite :D < 1270922429 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :nesting < 1270922699 0 :oerjan!~oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1270922726 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :heh, zeilbeger would so approve of using prolog to do stuff < 1270922744 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it's proved if you ran "seq(N), \+ prop(N)" for a while and it hasn't spit out a counterexample < 1270923243 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: apparently var(X) is very unsound < 1270923244 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :logic-wise < 1270923262 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and \+ plus copy_term/2 plus ! can express var/1 < 1270923274 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so cut really is quite insidious... < 1270923280 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1270923329 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :quite obvious really (that var/1 is unsound; \+/1, copy_term/2 and !/0 doing var/1 is new to me) < 1270923340 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :foo(X) :- var(X), X=1, then foo(X): X = 1, but foo(1) fails < 1270923352 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :although < 1270923353 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :why would you need copy_term... < 1270923358 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: i don't know, but oleg said it < 1270923365 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :are you going to question oleg? < 1270923371 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"With var/1, logic programming becomes programming in inconsistent logic." <-- well prolog /is/ turing complete... < 1270923379 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Prolog's built-in negation predicate \+/1 is just as dangerous as var/1: indeed, negation can express var/1 in one line: < 1270923380 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : vr(X) :- \+ \+ (X=0), \+ \+ (X=1). < 1270923382 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1270923384 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: i see < 1270923386 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :\+/1 < 1270923386 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :OR < 1270923388 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :copy_term/2 < 1270923389 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :OR < 1270923390 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :!/0 < 1270923394 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :can all express var/1 on their own < 1270923397 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :now THAT is scary! < 1270923411 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well i knew \+ could be expressed with ! and fail < 1270923426 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : Prolog's built-in negation predicate \+/1 is just as dangerous as var/1: indeed, negation can express var/1 in one line: < 1270923428 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : vr(X) :- \+ \+ (X=0), \+ \+ (X=1). < 1270923428 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : Only a variable can be, alternatively, unified with two distinct atoms (e.g., 0 and 1). The double-negation is symptomatic. The evaluation of ?-vr(X). succeeds with the answer X=_G180 (the variable X remains unbound). Goals vr(0), vr(1), vr(2), vr([0]), and vr([X|Y]) all fail. < 1270923428 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : In the above example, the cause of unsoundness is obvious: the negated goal \+ (X=0) binds an existing free variable. This is called ``floundering''. Some Prolog systems report a run-time warning or an error in this case (floundering is not decidable statically). SWI Prolog, which is used for all tests here, lets floundering go undetected. < 1270923434 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :\+ X :- X, !, fail. < 1270923435 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so basically negation makes prolog consistent < 1270923436 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :hah! < 1270923440 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :\+ X . < 1270923469 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and what use is prolog without negation... < 1270923471 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ok, some use, but not that much < 1270923519 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and yeah fail can express it < 1270923534 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: you do not even need ! I think? < 1270923537 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :nt(X) :- X -> fail ; true. < 1270923544 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so basically I'm learning that 99% of prolog is inconsistent < 1270923551 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What's terrible about expressing var/1 on one line? < 1270923560 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: var/1 makes prolog's logic inconsistent < 1270923567 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Oh < 1270923571 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :For uniformity, we use the name vr/1 and define it here as the alias to the built-in var/1. We first ask the question if there is a value of X that makes foo(X) derivable from the current database of rules and facts. The Prolog system says yes and gives one such value, 1: < 1270923572 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : ?- foo(X). < 1270923572 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : X = 1 < 1270923572 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : Yes < 1270923572 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : ?- foo(1). < 1270923574 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : No < 1270923576 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :If we verify the answer and check if indeed foo(1) is derivable from the current knowledge, we get the answer no. With var/1, logic programming becomes programming in inconsistent logic. We cannot generally trust any results. < 1270923591 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : The well-known elegant implementation of lambda-calculus in Prolog relies on copy_term/2. Because of that, copy_term/2 is the least objected to. Alas, copy_term/2, too, expresses var/1, also in one line: < 1270923592 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : vr(X) :- copy_term(X,0), copy_term(X,1). < 1270923596 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : Finally, cut, by itself expresses var/1: < 1270923596 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : noteq(X,X) :- !, fail. < 1270923596 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : noteq(_,_). < 1270923596 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : vr(X) :- (noteq(X,0), !, fail); (noteq(X,1), !, fail); true. < 1270923599 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What does var do? < 1270923644 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :var(X) succeeds iff X is a free variable; X remains unbound < 1270923647 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so e.g. var(X) but not var(1) < 1270923653 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :alise: -> ; can be defined with ! as well. i sort of think of ! and fail as more primitive. < 1270923656 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :which lets us distinguish whether we're searching for instances of X < 1270923659 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :or checking if 1 satisfies it < 1270923662 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :in foo(X) :- ... < 1270923663 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: true < 1270923673 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :That.. doesn't sound that useful < 1270923674 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I've just been tihnking of -> and ; as language constructs < 1270923675 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*thinking < 1270923714 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Although I guess when it comes to functions that return stuff through a free variable or something, it's a nice sanity check < 1270923714 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :ais523: brain ping < 1270923735 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: it's basically for practical purposes < 1270923747 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :like, you want to avoid pathological really-high-complexity behaviours < 1270923755 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :when prolog tries searching < 1270924382 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so now I'm on a prolog kick :P < 1270924402 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :prolog-funge? < 1270924792 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I considered that momentarily: but the slowness would be unbelievable. < 1270924803 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :And, besides, it's not really suited for that. < 1270924811 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :You never solve any constraint problems in Befunge. < 1270924871 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So how's the ml-funge doing < 1270924987 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It turns out I only work on things that take my fancy at this very second :) < 1270925013 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Bah :-P < 1270925027 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Well, hey, give me motivation. :P < 1270925112 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You get to beat AnMaster at speed? I don't know. < 1270925161 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: You did that with D, and Tango at that. < 1270925171 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :And Tango is possibly the worst code ever. < 1270925179 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :No challenge at all :) < 1270925194 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Tango is pretty good IMO < 1270925210 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The issues are mostly in the GC (which does not originate in Tango) < 1270925233 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And my workaround for that was to use C malloc/realloc/free :-P < 1270925537 0 :augur!~augur@wal-sas002.wireless-pennnet.upenn.edu JOIN :#esoteric < 1270926008 0 :Tritonio_GR!~Tritonio@athedsl-255233.home.otenet.gr JOIN :#esoteric < 1270926468 0 :b3n4dd1!~tarik@193.48.172.6 JOIN :#esoteric < 1270926768 0 :lament!~lament@S0106002312fa554a.vc.shawcable.net JOIN :#esoteric < 1270926823 0 :jcp!~jw@bzflag/contributor/javawizard2539 JOIN :#esoteric < 1270926910 0 :oklofok!unknown@unknown.invalid NICK :oklopol < 1270927051 0 :b3n4dd1!unknown@unknown.invalid PART #esoteric :? < 1270927918 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1270927955 0 :lament!unknown@unknown.invalid QUIT :Quit: lament < 1270928297 0 :aschueler!~alec@host81-156-146-158.range81-156.btcentralplus.com JOIN :#esoteric < 1270928510 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: do you know if there is a predicate that will let me check if a certain thing is a predicate of a certain arity? < 1270928518 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :say I'm given foo/1, could I say foo-is-a-predicate-with-arity-1? < 1270928537 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :like as a test < 1270928547 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ispredicate(X) :- predwitharity(X, 1) < 1270928573 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :("barely", he said) < 1270928606 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i distinctly recall SWI had an index < 1270928607 0 :coppro!~coppro@unaffiliated/coppro JOIN :#esoteric < 1270928626 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and predicates organized by subject < 1270928698 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yeah but it's hopeless to look up :) < 1270928707 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i keep finding almost-but-not-quites :(( < 1270928831 0 :Tritonio_GR!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds < 1270928977 0 :Tritonio_GR!~Tritonio@athedsl-255233.home.otenet.gr JOIN :#esoteric < 1270929036 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://www.swi-prolog.org/pldoc/doc_for?object=section%282%2c%274.14%27%2cswi%28%27%2fdoc%2fManual%2fexamineprog.html%27%29%29 < 1270929385 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :alise: ^ < 1270929449 0 :jcp!unknown@unknown.invalid QUIT :Quit: I will do anything (almost) for a new router. < 1270929455 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :find(x) := { ircsay("oerjan: " x "?"); awaitreply() } < 1270929475 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i actually stumbled upon that page before though :-D < 1270929485 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :though i don't see that it has what i want? < 1270929497 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :current_predicate? < 1270929515 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1270929517 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :current_functor < 1270929523 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oh, predicate would work better < 1270929544 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so: < 1270929553 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :current_predicate(X/N), current_functor(X, 1). < 1270929554 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :well < 1270929555 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :X/1 < 1270929577 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oh, then current_functor is redundant < 1270929597 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you'd think < 1270929621 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- forall(predicate_, P, forall(empty, X, call(P,X))). < 1270929621 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :true. < 1270929639 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :forall P:A=>Prop : forall X:Empty : P X < 1270929647 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :where empty(_) :- fail. < 1270929651 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :predicate_(X) :- current_predicate(X/1). < 1270929652 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and < 1270929655 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :forall(S,X,P) :- \+ (call(S,X), \+ call(P)). < 1270929682 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :you can also use forall(requirements,foo) where all variables are substituted -- this is built into SWI and so you can sweep the evil negation under the carpet < 1270929700 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :then: < 1270929701 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- forall(predicate_(P), forall(empty(X), call(P,X))). < 1270929702 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :true. < 1270929790 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :nice that we have such reasoning tools in a "dumb" constraint solver < 1270929817 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you might want to update the fungicide page btw. I pushed the alternative IP list thing. Still, to really become faster I need a new funge space. But that will have to wait for a bit due to lack of time for something as complex. < 1270929823 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :hmm wait isn't forall(S,X,P) :- \+ (call(S,X), \+ call(P)). exists < 1270929842 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Maybe make a release? < 1270929861 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, no time currently. I don't think I will make one very soon. < 1270929872 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :messing around with sf.net, freshmeat and so on takes some time < 1270929969 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, does fungicide test stack stack begin/end much? If not that might be interesting < 1270929981 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(forall x, P) = (~exists x, ~P), so if \+ (call(S,X), \+ call(P)) is exists x:S, P < 1270929984 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :then forall is... < 1270929993 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :\+ \+ (call(S,X), \+ \+ call(P)) < 1270930016 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :lol I can prove that there exists an element of the empty set such that false but not that forall elements of the empty set... < 1270930026 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :maybe i should just use forall < 1270930063 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, remember the alternative IP list needs to be explicitly enabled. Since it turned out to use more memory for "normal" programs < 1270930081 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :How much more? < 1270930125 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it is due to larger constant basically. For large number of threads it is insignificant < 1270930140 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :wait no < 1270930143 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :\+ (call(S,X), \+ call(P)) < 1270930143 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :How much more? < 1270930144 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :is right < 1270930150 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"there is no example of S such that not-P" < 1270930155 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but I think it may hit 500 kB extra due to creating a pool to allocate from < 1270930159 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :something around that size < 1270930183 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :plus a small increase since it uses pointers. So 4 or 8 bytes extra per IP < 1270930188 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :depending on pointer size < 1270930191 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- forall(empty, X, (X, \+ X)). < 1270930191 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :true. < 1270930192 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You haven't even measured the difference and you're making it a compile-time optional optimization? Sigh... < 1270930192 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :heyhey, it works < 1270930209 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I have measured it. I just don't remember the values off the top of my head < 1270930224 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :In any case, less than a megabyte... < 1270930240 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I would love to see AnMaster's perfect OS. Actually, no, I really wouldn't < 1270930241 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Seems pointless to leave it an option < 1270930243 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :s/$/./ < 1270930267 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes. And on my pentium3 system (which is where I test 32-bit x86) it was measurably slower on "few threads" programs < 1270930286 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :hmm well < 1270930288 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :used life.bf to test with < 1270930298 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :~20% slowdown < 1270930309 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(\+ \+ foo(X)) is exists X such that foo(X) < 1270930315 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :example, < 1270930318 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :exists_true(X) :- bool(X), X. < 1270930319 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :20% for one bigger memory allocation? Makes no sense < 1270930321 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, on my core 2 duo it wasn't measurably slower for life.bf < 1270930331 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :\+ \+ \+ \+ foo(X) = forall foo(X) then :-) < 1270930336 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, correct, but I suspect cache effects < 1270930360 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :which doesn't work < 1270930365 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :eh what I have works < 1270930370 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, since it wasn't measurable on a core 2 duo, some cache or branch prediction effect seems likely < 1270930378 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If you're worried about old small-cache processors lump it in some kind of EMBEDDED_SETTINGS :-P < 1270930394 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well, my desktop is still a sempron < 1270930448 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, the systems I test on are: pentium 3 @ 996 MHz (x86), Sempron 3300+ @ 2 GHz (x86_64), Core 2 Duo @ 2.26 GHz (x86_64) < 1270930496 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cache sizes are: Sempron: 128 kB, Pentium 3: 256 kB, Core 2 Duo: 3072 kB < 1270930503 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is according to /proc/cpuinfo < 1270930511 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't know if the last one is per-core or not < 1270930524 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there is one such line for each core, so it may be < 1270930570 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't think it is < 1270930582 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway, since those are the ones I have available I'm not surprised if your results doesn't match mine. Especially not for the Pentium 3 box < 1270930595 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :does pentium 3 even do branch prediction? < 1270930661 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The original Pentium did branch prediction < 1270930682 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in my experience my pentium 3 box seems to gain a lot more from profile feedback compilation than the newer systems do. < 1270930706 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :perhaps it's predictor is cruder < 1270930743 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If you had a Pentium 4 it'd probably gain even more, since they can take over a 100 cycles to recover from a misprediction :-P < 1270930761 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, alas I don't have one any more. One day it's heat sink wasn't enough < 1270930770 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it was *charred* when I opened the case. < 1270930776 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1270930982 0 :augur!~augur@wal-sas002.wireless-pennnet.upenn.edu JOIN :#esoteric < 1270931037 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :http://www.youtube.com/watch?v=DQV8jUpjRm0 MINDRAPE TIME < 1270931144 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway another good reason to make the new one an option is that it isn't as well tested yet. < 1270931213 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, anyway a test like {}{}{} possibly both with some data to copy and with no copy might be interesting. I assume ccbi2 will be fast with it? < 1270931253 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also perhaps a {-rep-}-rep that is {{{{{{{ ... }}}}}}} < 1270931259 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like y-rep-n I guess < 1270931349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, memory wise I know cfunge will use a lot on that, since with 32-bit cells the initial funge stack is 4 pages + a few bytes to keep track of stack top, stack array size and such < 1270931416 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :speed wise it shouldn't do too bad. CCBI1 will probably do extremely badly, CCBI2 I have no idea. the interesting bit will be watching rcfunge[12] and language::befunge < 1270931488 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: whoa < 1270931492 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: my differentiator integrates too < 1270931501 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :well sort of... < 1270931507 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- d(E, x, x*0+2*1). < 1270931508 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E = x*2 ; < 1270931508 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :false. < 1270931508 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- d(E, x, 2). < 1270931508 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :false. < 1270931509 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(there is some more optimisation I could do on memory allocation if it would turn out to be required, but I haven't seen any such cases yet) < 1270931515 0 :alise!unknown@unknown.invalid PART #esoteric :? < 1270931518 0 :alise!~alise___@212.183.140.3 JOIN :#esoteric < 1270931526 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i expect that to be rather unreliable :D < 1270931537 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: naturally; it will only accept inputs in the exact form that it outputs < 1270931539 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, ? < 1270931547 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, who was that to? < 1270931551 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :me < 1270931557 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :YOU WILL NEVER KNOW < 1270931562 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :darn < 1270931570 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh alise I expect. < 1270931585 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :NO ONE EXPECTS ALISE < 1270931596 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1270931612 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, nice monty python reference. < 1270931626 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :LIES < 1270931639 0 :Alex3012_!~chatzilla@ool-18b989d3.dyn.optonline.net JOIN :#esoteric < 1270931662 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :?- d(E, x, 1/x*x^ (1/x-1)*1+log(x)*x^ (1/x)* ((x*0-1*1)/x^2)). < 1270931663 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E = x^ (1/x). < 1270931664 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :JUST LIKE A MAGIC < 1270931706 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, why did you make the lines dashed in the memory graphs? the light blue cfunge-32 was hard enough to see against the light grey background as it was before. Now it is near impossible < 1270931724 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :rcfunge2 is even harder to see < 1270931730 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :he wanted the graphs to be dashing, obviously < 1270931735 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, hah < 1270931805 0 :Alex3012!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1270931807 0 :Alex3012_!unknown@unknown.invalid NICK :Alex3012 < 1270931908 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Because previously some lines were identical < 1270931921 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1270931927 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, select more visible colours then? < 1270931937 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I do not select the colours, gnuplot does < 1270931947 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION adds - differentiation < 1270931970 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :d(U+V, X, A+B) :- d(U,X,A), d(U,V,B). < 1270931970 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :whoops, spot the bug < 1270931980 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, can't you give it a colour scheme by some command line option or something iirc? Also I think it selects for white bg, not gray bg < 1270931990 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which may cause the default to be suboptimial < 1270931992 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AFAIK I can't < 1270932011 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And yes, it does, but it unfortunately also sets a transparent bg on the svgs, which I haven't looked into fixing < 1270932021 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :gnuplot> help colornames < 1270932023 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :[...] < 1270932026 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : See `set palette`, `linestyle`. < 1270932046 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, seems you can. < 1270932063 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Set palette looks complicated. < 1270932094 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so it does < 1270932138 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, on the other hand, gnuplots docs generally looks complex. Due to being quite verbose I guess. < 1270932169 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION adds sin, cos, log differentiation... < 1270932307 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, but yes, with sane colours for that background (and probably ones that work reasonably for white too, you might want to view it directly, I do when firefox decides to make it small) non-solid lines is indeed better. < 1270932318 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but the current colours are piss poor. < 1270932352 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :For postscript I had a sed that replaced a yellow (yellow on white! completely invisible) in the .ps with an earlier-used colour (which was fine for dashed) < 1270932369 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm. < 1270932382 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you could do sed for svg too < 1270932384 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Do you have issues with other colours than the cyan? :-P < 1270932416 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well, the one for rcfunge2 is even worse than the one for cfunge-32, < 1270932462 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, plots/horizontal-p.b98/10000000/line-memtime.svg show some rcfunge-like effects for ccbi2 it seems? Any idea why? < 1270932463 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ah right, that yellow. < 1270932476 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, no rcfunge1 is yellow < 1270932492 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, stinkhorn is quite bad too < 1270932497 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the colour I mean < 1270932506 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Right, that yellow is the one I meant. < 1270932519 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :IMO the rcfunge2 one is fine < 1270932527 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but yeah: cfunge-32, rcfunge2 and stinkhorn are near invisible. (well not rcfunge2 when it goes up/down/up/down) < 1270932546 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I can see rcfunge2 very clearly :-P < 1270932546 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, this is on my desktop display < 1270932549 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :let me try my laptop < 1270932556 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it has worse colour reproduction < 1270932559 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But yes, monitors and eyes vary so meh < 1270932580 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well depends on angle of viewing < 1270932590 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :my desktop monitor has pretty wide viewing angle < 1270932593 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That too, yes < 1270932596 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :much wider than my laptop < 1270932616 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :All in all colours in SVGs should be selectable by the web browser just like they are for text :-P < 1270932631 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Lenovo didn't waste money on two things at least: the built in speakers and the screen < 1270932647 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, eh? < 1270932670 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :text in HTML* < 1270932673 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, oh btw, that red of ccbi1 is of varying width on my laptop < 1270932677 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :unlike on my desktop < 1270932698 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in, it is thinner when it goes horizontally than when it climbs < 1270932713 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://pastie.org/913291.txt?key=lbuqu2b1boebwbep7707iq woot < 1270932718 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :what fun toys. < 1270932720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, could be due to higher DPI in the laptop perhaps? < 1270932724 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :well, toy, singular. < 1270932725 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, or older firefox < 1270932742 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It looks such here. Don't know why, don't really care. < 1270932745 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oh, look: foo no longer works. < 1270932748 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I don't really care, though < 1270932756 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm < 1270932778 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://pastie.org/913294.txt?key=mef5jrherk5iytbbn98kyg < 1270932791 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, any idea about that rcfunge-ish allocation pattern for ccbi2 in plots/horizontal-p.b98/10000000/line-memtime.svg though? Something related to the gc? < 1270932798 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(I assume you use the gc in some parts still?) < 1270932907 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw in the table below it indicates it ran more runs with ccbi2 than with cfunge? why? It doesn't seem to be "run as many times as possible until timeout" because it doesn't add up to the timeout < 1270932916 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :both cut off way below that < 1270932921 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Have you read the rankings page? < 1270932921 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :seems unfair :/ < 1270932931 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes but I don't remember anything about that bit < 1270932936 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Read it again. < 1270933068 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yay my derivative works for a complex expression... well < 1270933071 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :with a large margin of error < 1270933084 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :3015981 ~= 3.01298e+06 < 1270933089 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, not mentioned on the main rankings page(?) I'm talking about the "ran" column for individual problems sizes for a given problem- < 1270933093 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :s/-$/./ < 1270933120 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, like the last table at http://users.tkk.fi/~mniemenm/befunge/fungicide-rankings/horizontal-p.b98.html < 1270933121 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Right, it's under "Measurements" on the Fungicide page < 1270933143 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you said the *rankings* page just a few lines ago < 1270933150 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not odd I couldn't find it then < 1270933162 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, my mistake < 1270933211 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"If the time was less than a minute, it is run once more. This result is discarded. (A sort of cache-cleaning thing between the memory and time measurements.) Then, ten time-measured runs are performed." < 1270933229 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes and? < 1270933232 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :eh, why only the disarcd-run for that. Why not for the larger sizes too? < 1270933239 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Because it'd take forever < 1270933258 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, did that discarded run change the timing at all btw? < 1270933261 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If it takes 3 hours to run I'm not going to run it three times just to watch it timeout < 1270933263 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :timings* < 1270933283 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Maybe a bit < 1270933291 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Can't remember, may not've looked at it < 1270933348 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :should have tested that before IMO. Seems silly to do it without any indication of that it is actually needed ;P < 1270933397 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It seems sensible since there are likely some cache effects due to the memory-measuring process < 1270933401 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, anyway, yn-rep and y-rep-n will be a bit faster too now than what is shown in the rankings < 1270933443 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I decided to it before finding out that some things take eons to run < 1270933452 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1270933455 0 :lament!~lament@S0106002312fa554a.vc.shawcable.net JOIN :#esoteric < 1270933461 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So then I dropped it for the longer times < 1270933473 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why is there porn in the /topic, by the way? < 1270933486 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :weird < 1270933488 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Why would there ever not be? < 1270933501 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well that would be ccbi1, rcfunge, language-befunge and pyfunge? < 1270933503 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't know, it just hasn't always been there < 1270933507 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(not the pron, no) < 1270933526 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I guess stinkhorn for the y stuff too < 1270933529 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It's either my fault or augur's fault :P < 1270933535 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's augur's < 1270933661 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Re. the jittery memory allocation it could even be seeing something in the middle of a realloc < 1270933690 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But no, can't obviously say for sure what it's about < 1270933721 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :if I use cut to stop my program erroring, that's bad isn't it :-) < 1270933736 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :augur put the pornographic material in the topic in response to the fuck the police < 1270933783 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, true < 1270933794 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :alise: I was about to say that I knew that and then I made the connection < 1270933819 0 :AnMaster!unknown@unknown.invalid TOPIC #esoteric :Topic closed by the moral police | fuck the police | (pics or it didn't happen) | http://tunes.org/~nef/logs/esoteric/?C=M;O=D < 1270933826 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1270933839 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(after all there are minors in here) < 1270933853 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :poor innocent minors < 1270933870 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://pastie.org/913294.txt?key=mef5jrherk5iytbbn98kyg < 1270933871 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(yes I saw that about moral police, I saw the irony in that before I did the topic change) < 1270933880 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :whoops < 1270933887 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, yes, like ehird. Very innocent. < 1270933896 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, what was that? < 1270933905 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :accidental right click < 1270933910 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it looks more like ehird's coding style to me < 1270933918 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, *right* click? Not middle click? < 1270933931 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it's what putty uses < 1270933943 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, you can change that in the putty settings < 1270933948 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to be the usual middle for paste < 1270933970 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :See, but it's my fault because I put "(pics or it didn't happen)" there :P < 1270933979 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: wait what did you change? < 1270933980 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1270933987 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, I always found anything else confusing back when I used putty < 1270933990 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: how does it look like my coding style? < 1270933994 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it's how you're meant to write prolog < 1270933996 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't have a middle button. in fact i don't even have a mouse here < 1270934013 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, what then do you have without three buttons? < 1270934028 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :can't be a laptop, they have three buttons too nowdays don't they? < 1270934029 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :a trackpad < 1270934064 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, hm, my thinkpad has three mouse buttons. Wait actually it has three buttons on the upper set (meant for use with the trackpoint) but two for the lower set (meant for use with the touchpad) < 1270934073 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :never noticed that before < 1270934074 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1270934076 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :middle /mouse/ button < 1270934089 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I guess it is because I hardly ever use the touchpoint < 1270934089 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: so how is it my coding style :)) < 1270934092 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1270934096 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :touchpad < 1270934103 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that was an interesting mix up of the words < 1270934185 0 :Alex3012!unknown@unknown.invalid QUIT :Ping timeout: 265 seconds < 1270934189 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't think I'm going to unignore alise after yesterday. For a long time. This way the channel is a lot nicer. < 1270934199 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oh i remember < 1270934212 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :because of all those... "personal attacks" < 1270934216 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Plus he doesn't seem to speak so much nowdays, so I don't seem to be getting the "missing half convo" bit < 1270934218 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1270934229 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :doesn't speak so much? Because I'm fucking imprisoned monday-to-friday? < 1270934235 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :You complete and utter asshole. < 1270934250 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :And the obligatory condescending smiley face... < 1270934259 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :what a fucktard. < 1270934275 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw, it looks like nothing hit the memory limit. Is that correct? < 1270934279 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :alise: You've only been ignored since yesterday, so it seems he's talking about today. < 1270934294 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: IIRC yes < 1270934320 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: "He doesn't seem to speak so much nowadays" -- that seems more like a general statement to me. < 1270934331 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I wonder if with longer timeout, ccbi1 might have hit it. < 1270934344 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :alise: Maybe, but the half convo thing could only happen today. < 1270934347 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Not that I am particularly interested in discussing the broken reasoning of an idiotic asshole. < 1270934355 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Well, you only get half-convo things if I'm actually there to talk. < 1270934356 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Of course with longer timeout a lot of things could've hit it :-P < 1270934358 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Less me, less half-convos. < 1270934361 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Less issue with ignoring me. < 1270934364 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :That is how I parsed it. < 1270934374 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well, only those who ended due to timeout obviously < 1270934392 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :did a lot of things do that? The graph on the main page shows them as non-completed doesn't it? < 1270934428 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1270934462 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1270934489 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, was cfunge and ccbi2 the only ones to not time out on any tests? It looks from the graph like stinkhorn timed out on a few < 1270934502 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but not from the table below where it says it ran 74 < 1270934527 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There's a "maximum time" column, you know < 1270934529 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, which one is wrong, or alternatively: why are they different? < 1270934538 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And "ran" is described immediately above the table < 1270934541 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what is time ratio btw? < 1270934559 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ratio to minimum; I was hoping that was obvious < 1270934564 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, and why are there multiple time ratio columns? < 1270934575 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I was hoping that was obvious too; one for total, one for max < 1270934582 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well it wasn't < 1270934591 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :perhaps wider lines between to group them+ < 1270934594 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :s/+/?/ < 1270934642 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, shouldn't total time say timeout as well? < 1270934658 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, it just adds the timeout value < 1270934667 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So that they can still be compared < 1270934675 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm okay < 1270934718 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :from mycology results page: < 1270934725 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"In Mycology terms, both 1.27 and 2.02.00 are unfortunately limited by their mistreatment of form feeds: as far as I can tell, they are considered to terminate the file in Befunge mode, when they should be ignored. (Perhaps they increment the z-coordinate even in Befunge?)" <-- iirc yes that was what happened < 1270934729 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when I checked it < 1270934736 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :don't remember for sure < 1270934767 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, does mycology check that the trefunge instructions reflect in befunge btw? < 1270934798 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, I don't think it does < 1270934821 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, maybe it should. It could lead to some amusing results with some interpreters I bet < 1270934840 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :of course, rcfunge just *might* do the right thing there. < 1270934856 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I doubt it would, with the current limited set < 1270934865 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm? < 1270934866 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Rc/Funge-98 would die due to the form feed first anyway < 1270934875 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And I'm pretty sure the others all handle it correctly < 1270934898 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well you could test it before the form feed. Didn't you say you were using { and } to make the fingerprint tests position independent? < 1270934914 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, the fingerprint tests, but not everything < 1270934919 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm okay < 1270934934 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And yes, I could, but why bother? :-P < 1270934939 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :true < 1270934948 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what other interpreters do trefunge as well? < 1270934970 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Of decent ones or of all? :-P < 1270934981 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, of ones currently listed on mycology page < 1270934991 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :CCBI and Rc/Funge-98 < 1270935009 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I kind of miss the old wider-than-browser-even-when-maximised table < 1270935020 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's still there in the old results :-P < 1270935034 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes there for nostalgia < 1270935046 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :rc 1 or 2? < 1270935049 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Both < 1270935055 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :both what? < 1270935055 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it seems mkry still has handed over the project. < 1270935061 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :maybe he is dead after all :/ < 1270935065 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh to alise? < 1270935070 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Whoops, there goes a half conversation! < 1270935072 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Tricky things those. < 1270935152 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, anyway, when will you update the fungicide results for cfunge wrt. the fork test < 1270935172 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :When you'll make a release, mayhap < 1270935182 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, "mayhap"? I need more definite than that < 1270935192 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :THIS IS IMPORTANT TO MY BUSINESS < 1270935201 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Toss me a few euros and I'll do it tomorrow morning < 1270935206 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, har < 1270935213 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :...but my business has no money < 1270935239 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I might make a release tomorrow if I have some time left over then < 1270935259 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I presume you will do it then at least during the next weekend < 1270935314 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but it shouldn't take long now. Some tests indicate it is slightly slower than stinkhorn at fork now. And yes a new funge space is the next major thing I will do. No idea when < 1270935327 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, oh and I bet efunge would get timeout from it. So pointless to test that even < 1270935882 0 :kar8nga!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1270936089 0 :oerjan!unknown@unknown.invalid QUIT :Quit: Good night < 1270936742 0 :Oranjer!~HP_Admini@adsl-71-8-66.cae.bellsouth.net JOIN :#esoteric < 1270936966 0 :Oranjer!unknown@unknown.invalid PART #esoteric :? < 1270938214 0 :Oranjer!~HP_Admini@adsl-71-8-66.cae.bellsouth.net JOIN :#esoteric < 1270938320 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Ugh. And now I would need sound over network... :-/ < 1270938367 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :I don't have available speakers and volume is not enough for wireless headphones... :-/ < 1270938717 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Ilari, eh? < 1270938725 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"and volume is not enough for wireless headphones"? < 1270938743 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Ilari, as in, the music is so faint it can't be heard over bluetooth or what? ;P < 1270938780 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Ilari, however, both pulseaudio and jack have network parts < 1270938785 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also plain alsa < 1270938801 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :The volume is so low (and mixer master / mixer PCM is at max) that playback isn't stable. < 1270938804 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I never tried that though, was going to use jack but never had time for it < 1270938813 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Ilari, that sounds weird < 1270938822 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Ilari, why would it not be stable over bluetooth < 1270938839 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :does it shut down when there is no music or something? < 1270938853 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and then have a significant start up time? < 1270938855 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :These headphones need certain minimum volume for stable playback. Yes, it shuts down otherwise. < 1270938869 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Ilari, don't you have any wired headphones? < 1270938886 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :I guess all wired headphones are broken... < 1270938914 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :It starts up again very fast. What is nastier is that if it shuts down on weak signal, headphones will blast static at high volume. < 1270938915 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://alsa.opensrc.org/index.php/Network http://wiki.audacityteam.org/wiki/Recording_audio_playing_on_the_computer#Using_the_ALSA_PCM_file http://www.alsa-project.org/main/index.php/Matrix:Module-aloop < 1270938918 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :those links may help < 1270938938 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the last one is only needed for some hardware < 1270938948 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :basically those without a mixer capture option < 1270938952 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Of course, if signal is too weak, it won't start up again. < 1270938972 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Ilari, stupid that it blasts static like that < 1270938976 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I wouldn't use them at al.l < 1270938979 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :at all* < 1270938983 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sounds dangerous < 1270938999 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : It starts up again very fast. What is nastier is that if it shuts down on weak signal, headphones will blast static at high volume. < 1270939001 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yeah that happened to me < 1270939006 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :then i realised that they just sound like fuzz anyway < 1270939007 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Ilari, you could also increase the sound volume of course that you transmit with. What produces the sound? < 1270939008 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and stopped using them < 1270939077 0 :impomatic!~chatzilla@87.113.230.70 JOIN :#esoteric < 1270939204 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Boxx looks interesting http://web.archive.org/web/20080319024539/boxx.origincode.com/docs.php < 1270939342 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, yay, light gray on white bg < 1270939345 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::/ < 1270939356 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh wait, it is light gray on *lighter* gray < 1270939358 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :even worse < 1270939366 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :basically unreadable page < 1270939401 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Haven't you got a bookmarket to fix readability? < 1270939480 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, no? I use firebug in those cases < 1270939487 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but I'm not interested enough < 1270939492 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1270939889 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Hmm... Got somewhat stronger signal. Don't know if it is powerful enough. :-/ < 1270939908 0 :MizardX!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1270940117 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Ilari, stronger signal? < 1270940125 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in kill -SIGUSR1? < 1270940140 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1270940143 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that was music < 1270940150 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION confused Ilari with impomatic < 1270940762 0 :MigoMipo!unknown@unknown.invalid QUIT :Remote host closed the connection < 1270941055 0 :jix!unknown@unknown.invalid QUIT :Ping timeout: 245 seconds < 1270941453 0 :jcp!~jw@bzflag/contributor/javawizard2539 JOIN :#esoteric < 1270941559 0 :FireFly!unknown@unknown.invalid QUIT :Quit: Leaving < 1270941660 0 :jix!~jix@tomakin.h-ix.net JOIN :#esoteric < 1270942753 0 :tombom_!unknown@unknown.invalid QUIT :Quit: Leaving < 1270942864 0 :Tritonio_GR1!~Tritonio@athedsl-255233.home.otenet.gr JOIN :#esoteric < 1270943020 0 :Tritonio_GR!unknown@unknown.invalid QUIT :Ping timeout: 258 seconds