< 1253145602 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :w00t! < 1253145616 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :I finally figured out how to convince automake to do precompiled headers! < 1253145623 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :It's hideous, but it works! < 1253145628 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I know about GIMP, but I prefer ImageMagick. < 1253145810 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :coppro: Isn't it just like include_HEADERS= then .h.gch:\n\t < 1253145829 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I wish < 1253145859 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :Maybe they'll add it eventually < 1253145863 0 :Sgeo!n=Sgeo@ool-18bf618a.dyn.optonline.net JOIN :#esoteric < 1253145946 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :but for now, it's a nasty hack < 1253145978 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what is the point? for most realistic C header examples you don't save very much < 1253146000 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: this is a C++ project; I think I just cut compile time in 3 < 1253146003 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and it is a pain to maintain < 1253146014 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when stuff like #inludes in headers change < 1253146040 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I renamed the old file, and then Pidgin makes a new file.. it's corrupt < 1253146046 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :nah, the precompiled header is always first < 1253146064 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :as long as you remember that, things are good < 1253146084 0 :oklopol!unknown@unknown.invalid QUIT :Read error: 148 (No route to host) < 1253146131 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :coppro, what if cflages changes? Or GCC version < 1253146146 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: then it's recompiled as it normally would be < 1253146158 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well, that would be mostly an issue if the file was installed < 1253146169 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :no, this is not for a library < 1253146181 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :it would be an issue if it was installed < 1253146185 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :but fortunately it's not :) < 1253146220 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1253146223 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :night -> < 1253146328 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :there is only one flaw < 1253146352 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :one of the dummy files is getting distributed because I can't but it in nodist_SOURCES or else it gets built after the rest of the project < 1253146365 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :and the precompiled headers must always be first < 1253147278 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Is there command-line programs to render text on images like I described? < 1253147507 0 :FireFly!unknown@unknown.invalid QUIT :"Later" < 1253147674 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: to my limited knowledge, there is not < 1253147807 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :O, OK. < 1253147886 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :If we used the "mahjong operator" in a new esolang, like I described (the input set can consist of a tenpai hand with any number of sets of three tiles and up to one pair), are any calculations reasonably done with this? < 1253147897 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :The input and output would be unordered sets with duplicates OK < 1253147919 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :O, and add the concatenation operator too < 1253147959 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Would it be sufficient for most uses? < 1253148103 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :can you rexplain the operator? < 1253148248 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :The operator does: If you have a tenpai hand (where a complete hand must contain any number of sets of three tiles and up to one pair), then the output will be the list of possible tiles to complete this hand. < 1253148265 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Example: [chun,chun,1man,3man] -> [2man] < 1253148268 0 :augur_!n=augur@216-164-33-76.c3-0.slvr-ubr2.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1253148290 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :DAMMIT WINDOWS! I DO NOT WANT YOU TO KEEP TELLING ME ABOUT YOUR CORRUPTED FILES < 1253148317 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And then also needs a command for jumping if the list is empty/non-empty < 1253148317 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :sweep corruption under the rug, i say < 1253148371 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, I just wish there was an ignore button < 1253148373 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: hmm... I think I need to know more of the context of the language to understand where it might be useful :) < 1253148379 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :If the number of elements in the input list is divisible by three, the output list would necessarily be empty. < 1253148489 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :coppro: Yes, I guess so. But I'm just wondering if you can think of ways to make it so that it would be sufficient and can do many calculation with: mahjong operator, concatenation operator, condition operator. < 1253148688 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :On Sunday, I played D&D. My character, and a monster, teleported into the exact center of a building, and there was a kitchen there, with a fire elemental cooking something. Now my question is, how would *you* act in this situation? (I have some idea but maybe you are different?) < 1253148913 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"Hello, what's for dinner?" < 1253148937 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION has played D&D exactly once in his life, though, ihrc < 1253148940 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I happen to have Profession (Cooking) skill, so I decided to use that. < 1253148978 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And, now I can know where the kitchen is, so I could now figure out the rest of the building relative to this one < 1253149179 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: It'd depend upon the character I'm playing. < 1253149198 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :O, OK. < 1253149201 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :If I were playing, say, Thrug, my half-orc half-dragon barbarian, Thrug smash. < 1253149216 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Like, you mean just smash everything? < 1253149230 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(quite likely with the boulders he carries) < 1253149232 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: O, only once? What version did you play? And do you plan to try again? < 1253149244 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1253149301 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't recall. it was at the local convention, and probably more than ten years ago < 1253149312 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION does recall he played a paladin, though < 1253149367 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :OK, a paladin. Can you also describe other things you can remember, such as equipment, race, etc < 1253149388 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION would really prefer it if there was a non-web client for Wave < 1253149401 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :What's "Wave"? < 1253149416 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Google Wave < 1253149419 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i think i was human < 1253149443 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :OK, human. And what equipment? < 1253149447 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And did you have any spells? < 1253149490 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i recall a bit of the _plot_ perhaps. the things you mention i consider far too boring to remember. < 1253149493 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Maybe you can use the API to write a non-web client for Wave? < 1253149505 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :OK, what plot? If you can remember < 1253149511 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION isn't skilled enough to do that < 1253149519 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Although I guess I could make a poor attempt < 1253149530 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I'm not in any of the previews, though < 1253149558 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :lessee it was a dungeon crawl of sorts, to get an artifact of some kind for a prince or something (you can tell it's not very accurate) < 1253149561 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Eh, that's because D&D tends to make mechanics more complex than they need to be. < 1253149587 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Unlike GURPS, which is only complex because it's got quite a few emergent properties. < 1253149602 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i recall there were some statues coming alive and going after us once we got the artifact < 1253149607 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(resulting from the design decision to make just about any idea possible to implement in it) < 1253149615 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the artifact was in a room full of them < 1253149627 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Ya, well, I prefer Icosahedral RPG, but it isn't quite finished being written yet. < 1253149671 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :O, my character in D&D is, I prefer to not fight anyone if I can avoid it, and I have been pretty successful at it < 1253149673 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also, only two of us survived i think, i was one of them. a couple died at the last minute because they panicked and jumped into a door to some kind of anti-dimension < 1253149762 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and i survived essentially i think because i played rightful paladin and therefore didn't do anything fishy... < 1253149764 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :In a previous D&D game I played, there was also statues that were going to come alive, but we managed to prevent that, by all our characters also disguised as extra statues, I also found a stick next to someone who has used "Hold Person" (but a saving throw has been made after a few rounds), and it was a magic stick. < 1253149779 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Everyone told me not to break it, but I still decided to break the magic stick. And that worked. < 1253149795 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I played in a campaign where we accidentally started the industrial revolution. < 1253149798 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :All magic items and other magic effects in the vicinity were destroyed instantly. < 1253149807 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And were well on the way to having a post-scarcity society. < 1253149812 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Also maybe the singularity. < 1253149813 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And that greatly helped. < 1253149848 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :So now you should learn these things too. < 1253150662 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Why do you guys use the CTRL+A ACTION command too much, anyways? < 1253150763 0 :zzo38!unknown@unknown.invalid QUIT :Remote closed the connection < 1253150858 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION has no idea < 1253151032 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks oerjan just wanted to use "IHRC" < 1253151195 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION claims that the ihrc only happened while the sentence was being written < 1253151312 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ACTION doesn't think we use ACTION too much at all. < 1253151314 0 :augur_!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1253151359 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION agrees with Gregor. also, he finds an R someone dropped. < 1253151374 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thought he burned that. < 1253151387 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it looks a bit sooty < 1253151441 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I managed to snag this nick, upping my coolness points 1 trillion X. < 1253151471 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that's some return on investment < 1253151486 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Especially since the investment is roughly 0. < 1253151511 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :OO < 1253151546 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :PSLA < 1253151614 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :puget sound limousine association? i would stay away from those guys if i were you < 1253151631 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I was continuing your "OO" :P < 1253151648 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1253151682 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :whoopsla < 1253151825 0 :augur!n=augur@216-164-33-76.c3-0.slvr-ubr2.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1253152807 0 :Sgeo!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1253152828 0 :Sgeo!n=Sgeo@ool-18bf618a.dyn.optonline.net JOIN :#esoteric < 1253155286 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :....wtf < 1253155287 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :"whereas you rarely won't get any lies from them" < 1253155408 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i didn't fail to misunderstand that. maybe. < 1253155466 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I should have quoted the full sentence < 1253155467 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :"Something else you should know is that they are also very honest people whereas you rarely won't get any lies from them because of their honesty." < 1253155572 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :clearly. < 1253157690 0 :Sgeo!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1253159909 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :who wants a laugh? < 1253159964 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION makes sure not to drink anything < 1253159992 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :okay, it's a guessing game now: why does my school still use IE 6? < 1253160029 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :lessee, they fired the only guy who knew how to upgrade things? < 1253160076 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :wrong < 1253160098 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :they have a homebrew web-based system that requires it? < 1253160105 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :nope! < 1253160127 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :their machines are so old they don't run anything newer? < 1253160150 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :hmm... maybe, but not the reason! < 1253160164 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :they have a _commercial_ web-based system that requires it? < 1253160172 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :nah < 1253160181 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :I don't think they have any web-based system < 1253160185 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION realizes some of those are not actually funny < 1253160196 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :do you want to know the real reason? < 1253160226 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ok then < 1253160229 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :it's because of security concenrs, apparently < 1253160231 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :*concenrs < 1253160234 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :*concerns < 1253160244 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION rolls eyes < 1253160249 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :I'm Not Making This Up < 1253160253 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(literally) < 1253161607 0 :coppro!unknown@unknown.invalid NICK :copprop < 1253161610 0 :copprop!unknown@unknown.invalid NICK :copprp < 1253161749 0 :copprp!unknown@unknown.invalid NICK :coppro < 1253163396 0 :Gracenotes!unknown@unknown.invalid QUIT :Remote closed the connection < 1253163892 0 :Gracenotes!n=person@wikipedia/Gracenotes JOIN :#esoteric < 1253164006 0 :Asztal!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1253164305 0 :coppro!unknown@unknown.invalid QUIT :Remote closed the connection < 1253167710 0 :oerjan!unknown@unknown.invalid QUIT :"leaving" < 1253168013 0 :FireFly!n=FireFly@1-1-3-36a.tul.sth.bostream.se JOIN :#esoteric < 1253168529 0 :Pthing!unknown@unknown.invalid QUIT :Remote closed the connection < 1253172389 0 :Patashu!n=Patashu@c122-106-162-185.carlnfd1.nsw.optusnet.com.au JOIN :#esoteric < 1253172956 0 :FireFly!unknown@unknown.invalid QUIT :"Later" < 1253173572 0 :kar8nga!n=kar8nga@LRouen-152-83-15-79.w80-13.abo.wanadoo.fr JOIN :#esoteric < 1253173770 0 :kwertii!n=kwertii@67.180.202.175 JOIN :#esoteric < 1253174399 0 :clog!unknown@unknown.invalid QUIT :ended < 1253174400 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1253177004 0 :kwertii!unknown@unknown.invalid QUIT :"bye" < 1253177135 0 :kar8nga!unknown@unknown.invalid QUIT :Remote closed the connection < 1253181926 0 :amca!n=amca@CPE-121-208-82-97.qld.bigpond.net.au JOIN :#esoteric < 1253188700 0 :AnMaster_!n=AnMaster@unaffiliated/anmaster JOIN :#esoteric < 1253188806 0 :AnMaster!unknown@unknown.invalid QUIT :Nick collision from services. < 1253188812 0 :AnMaster_!unknown@unknown.invalid NICK :AnMaster < 1253190827 0 :amca!unknown@unknown.invalid QUIT :"Farewell" < 1253191228 0 :MizardX-!i=MizardX@h-28-236.A159.priv.bahnhof.se JOIN :#esoteric < 1253191235 0 :MizardX!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1253191258 0 :MizardX-!unknown@unknown.invalid NICK :MizardX < 1253191674 0 :ais523!n=ais523@92-236-187-64.cable.ubr08.king.blueyonder.co.uk JOIN :#esoteric < 1253195928 0 :nice!n=nice@p5B133C28.dip.t-dialin.net JOIN :#esoteric < 1253195940 0 :nice!unknown@unknown.invalid QUIT :Remote closed the connection < 1253195991 0 :KingOfKarlsruhe!n=nice@p5B133C28.dip.t-dialin.net JOIN :#esoteric < 1253198044 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :someone who knows Russian, is http://www.esolangs.org/wiki/Talk:P-prime-prime spam or just a query in the wrong language? < 1253200135 0 :augur!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1253201230 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1253201566 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: the thing out of google translate looks awfully generic. < 1253201584 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :like spam, or like a genuine query? < 1253201588 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and what was Oleg's response? < 1253201613 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"English please. Do you like it here?" < 1253201751 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also, wrong question, it looks like many of those things that are obvious bots but still try to _look_ like genuine queries, but reveal themselves because (1) they show up in a completely ridiculous page name (2) they contain nothing that indicates the poster knows what the wiki is about at all < 1253201769 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it contains nothing resembling an ad, though < 1253201785 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you may be confused by the fact this one has only (2) < 1253201831 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"Beautifully turned out ... I do not know how the rest, but I like it. By the way, how to subscribe to my email box comes if someone has left a comment?" < 1253201845 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ok, that quite possibly /is/ spam < 1253201856 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'd like an opinion from a native speaker, though < 1253201914 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm... < 1253201987 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, Google just bought reCAPTCHA < 1253201987 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: you _really_ need to learn to use google me thinks < 1253201995 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders if they'll open-source it < 1253202013 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it shows up 4 exact matches to the post. i think that about settles it. < 1253202045 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://www.google.no/search?hl=no&q=%22%D0%9A%D1%80%D0%B0%D1%81%D0%B8%D0%B2%D0%BE+%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B8%D0%BB%D0%BE%D1%81%D1%8C...+%D0%9D%D0%B5+%D0%B7%D0%BD%D0%B0%D1%8E+%D0%BA%D0%B0%D0%BA+%D0%BE%D1%81%D1%82%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%BC%2C+%D0%BD%D0%BE+%D0%BC%D0%BD%D0%B5+%D0%BD%D1%80%D0%B0%D0%B2%D0%B8%D1%82%D1%81%D1%8F.+%D0%9A%D1%81%D1%82%D0%B0%D1%82%D0%B8%2C+%D0%BA%D0%B0%D0%BA+%D0%BF%D0%BE%D0%B4%D0%BF%D0%B8%D1%81%D0%B0%D1%82%D1% < 1253202061 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :O_o that was a long url < 1253202075 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hex-encoded UTF-8 < 1253202077 0 :augur!n=augur@129.2.135.242 JOIN :#esoteric < 1253202079 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :therefore, it's double-encoded < 1253202084 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is what's making the length < 1253202093 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(well, URL-encoded, which is even worse than hex-encoded for length) < 1253202322 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :http://www.youtube.com/watch?v=Nx7v815bYUw < 1253203176 0 :FireFly!n=FireFly@1-1-3-36a.tul.sth.bostream.se JOIN :#esoteric < 1253203998 0 :Pthing!n=pthing@77-100-194-169.cable.ubr04.pres.blueyonder.co.uk JOIN :#esoteric < 1253204763 0 :BeholdMyGlory!n=behold@83.183.183.70 JOIN :#esoteric < 1253204773 0 :Patashu!unknown@unknown.invalid QUIT :"Patashu/SteampunkX - MSN = Patashu@hotmail.com , AIM = Patashu0 , YIM = Patashu2 ." < 1253206039 0 :oerjan!unknown@unknown.invalid QUIT :"leaving" < 1253206133 0 :kar8nga!n=kar8nga@LRouen-152-83-15-79.w80-13.abo.wanadoo.fr JOIN :#esoteric < 1253207419 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1253207695 0 :KingOfKarlsruhe!n=nice@p5B133C28.dip.t-dialin.net JOIN :#esoteric < 1253208316 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :"Konversation terminated!" < 1253210129 0 :impomatic!n=John@nat67.mia.three.co.uk JOIN :#esoteric < 1253210132 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Hi :-) < 1253210640 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1253210807 0 :Asztal!n=asztal@host86-156-97-40.range86-156.btcentralplus.com JOIN :#esoteric < 1253211987 0 :adam_d!n=Adam@AAnnecy-751-1-2-153.w90-52.abo.wanadoo.fr JOIN :#esoteric < 1253215245 0 :kar8nga!unknown@unknown.invalid QUIT :hubbard.freenode.net irc.freenode.net < 1253215258 0 :kar8nga!n=kar8nga@LRouen-152-83-15-79.w80-13.abo.wanadoo.fr JOIN :#esoteric < 1253215397 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, about that double encoding < 1253215411 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wouldn't it be even worse if it was UCS-4? < 1253215460 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably < 1253215564 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :utf-8 can iirc go up to 5 bytes, but I would be surprised if Russian letters required quite that much < 1253215613 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :UTF-8 goes up to 4. < 1253215618 0 :kar8nga!unknown@unknown.invalid QUIT :hubbard.freenode.net irc.freenode.net < 1253215631 0 :kar8nga!n=kar8nga@LRouen-152-83-15-79.w80-13.abo.wanadoo.fr JOIN :#esoteric < 1253215640 0 :kar8nga!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1253215641 0 :k!n=kar8nga@LRouen-152-83-15-79.w80-13.abo.wanadoo.fr JOIN :#esoteric < 1253215642 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that can't work out, since then you can't represent the full unicode range < 1253215669 0 :k!unknown@unknown.invalid NICK :Guest72698 < 1253215674 0 :Guest72698!unknown@unknown.invalid NICK :kar8nga < 1253215678 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :4 bytes are perfectly sufficient to represent 0x10ffff. < 1253215684 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, doesn't the priate area continue past that? < 1253215730 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but UTF-8 is restricted to the range 0-0x10ffff. < 1253215744 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :3 bytes are enough for 0x10ffff < 1253215760 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why isn't there a UCS-3? < 1253215780 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Because 3 isn't a nice number, I guess. < 1253215970 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, that would be nice for 24-bit architectures I guess < 1253215974 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which are quite uncommon nowdays < 1253219016 0 :MizardX!unknown@unknown.invalid QUIT :"reboot" < 1253219339 0 :MizardX!i=MizardX@unaffiliated/mizardx JOIN :#esoteric < 1253220058 0 :KingOfKarlsruhe!n=nice@p5B1377C4.dip.t-dialin.net JOIN :#esoteric < 1253220170 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, did you ever implement that packed 7-bit thing for convickt? < 1253220176 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, I haven't < 1253220187 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I haven't done C-INTERCAL work for ages, been working on other things < 1253220204 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, like Feather? XD < 1253220215 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'm confused enough as it is < 1253220223 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1253220397 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so what then? < 1253220401 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :while (brillig()&&toves==slithy) {toves.location='wabe'; toves.gyre(); toves.gimble(); borogoves=mimsy; mome_raths.outgrabe();} < 1253220431 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: TAEB and Enigma are the ones recently < 1253220522 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, -_- < 1253220543 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :impomatic, what language is that supposed to be? < 1253220554 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it would be valid as C++ with appropriate definitions < 1253220560 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no < 1253220562 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it wouldn't < 1253220563 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also Java I think, because the syntax is the same in that case < 1253220572 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, look at the string quotes < 1253220580 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes, sort of, 'wabe' is a legal character constant in C++ < 1253220585 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although compilers will disagree about what it means < 1253220600 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I can't think of a sensible meaning of it... < 1253220623 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and C++ compilers disagreeing? Nothing new < 1253220689 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, apart from the 'wabe' it could be valid C. Assuming toves and mome_raths were structs with function pointers in them < 1253220691 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I think < 1253220708 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Is it actually legal? I thought it was just a GCC extension < 1253220708 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'm not sure how the precedence works there < 1253220713 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm ok < 1253220713 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and multiple-character constants are in the standard < 1253220717 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for both C and C++ < 1253220726 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although it's implementation-defined what they mean < 1253220731 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1253220740 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I thought they were complete extensions < 1253220740 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Anmaster: it's pseudo-JavaScript :-) < 1253220749 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, JS < 1253220753 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I guess it is intended to allow unicode or such? < 1253220754 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you're right, that works < 1253220756 0 :augur!unknown@unknown.invalid QUIT :Read error: 131 (Connection reset by peer) < 1253220765 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :multi-byte thing < 1253220779 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It predates Unicode, I think. But yeah, probably for multibyte stuff. < 1253220783 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders if it's legal Perl < 1253220791 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it would mean something rather different from the JS if it were, though < 1253220799 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, given the relevant Acme:: module I'm quite sure it is < 1253220802 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :I thought I'd try #poemsincode as a response to #songsincode < 1253220828 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: oh, there's a JAPH module which reinterprets any code at all as a JAPH < 1253220830 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that's cheating < 1253220935 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, JAPH? < 1253220946 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :a program that prints "Just another Perl hacker," < 1253220949 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1253220951 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the comma at the end is apparently not a typo < 1253220967 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's a common Perl contest to try to write the most obfuscated JAPH you can < 1253220972 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in the most ridiculous way you can < 1253220986 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I can imagine the java equivalent of those. XD < 1253221012 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, since writing unreadable one-liners is idiomatic perl... < 1253221019 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, I mean unreadable even for Perl < 1253221035 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the java equivalent should be complete with javadoc and so on < 1253221041 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I couldn't tell the difference < 1253221048 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :some particularly respected JAPHs have have included things like multiple processes with IPC < 1253221056 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just to print a constant string < 1253221063 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, they would have been rather long? < 1253221067 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, link to these? < 1253221078 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :print "Just another", ((0 and " Ruby ") or ("Pyt" + "hon" or " Perl ")), "hacker.\n", < 1253221081 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"" < 1253221090 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: haha, that's brilliant < 1253221100 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, how so? < 1253221110 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's clearly designed to be a polyglot < 1253221117 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, fails in modern python < 1253221121 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although, wouldn't the Python version be losing spaces around it? < 1253221121 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since print is now a function < 1253221132 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you add parens, it works in Perl at least < 1253221135 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not sure about Ruby < 1253221207 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with python3.1 I think it is time to drop python 2.6 support for new apps. Probably not for libraries yet though < 1253221225 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and python 2.7 support should be dropped too < 1253221248 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, if you add parens it will sometimes work in python 2.6 too < 1253221270 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :2.6>>> print "2 =",2 < 1253221270 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :2 = 2 < 1253221278 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :same with parens in 3 < 1253221279 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but < 1253221285 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with parens in 2.6: < 1253221288 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's at least 3 years old, I think < 1253221290 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, Python adds spaces at commas? < 1253221294 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :2.6>>> print("2 =",2) < 1253221294 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :('2 =', 2) < 1253221305 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is, a tuple < 1253221325 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for one element it works though < 1253221336 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :All of ruby,perl,python on that file work for me < 1253221341 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :because then it is interpreted not as a tuple but just () grouping < 1253221343 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Evidently Python 2.6.2. < 1253221356 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :2.6>>> print(2) < 1253221356 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :2 < 1253221360 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, try python 3.0 or later < 1253221404 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, is it a two liner? < 1253221428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :3.1>>> print "Just another", ((0 and " Ruby ") or ("Pyt" + "hon" or " Perl ")), "hacker.\n", < 1253221428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : File "", line 1 < 1253221428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : print "Just another", ((0 and " Ruby ") or ("Pyt" + "hon" or " Perl ")), "hacker.\n", < 1253221428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : ^ < 1253221428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SyntaxError: invalid syntax < 1253221458 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it works in python 2.6 though < 1253221491 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with parantheses it works in python3, but not python2 < 1253221499 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :3.1: < 1253221501 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :>>> print("Just another", ((0 and " Ruby ") or ("Pyt" + "hon" or " Perl ")), "hacker.\n",) < 1253221501 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Just another Python hacker. < 1253221504 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :2.6: < 1253221508 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :>>> print("Just another", ((0 and " Ruby ") or ("Pyt" + "hon" or " Perl ")), "hacker.\n",) < 1253221508 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :('Just another', 'Python', 'hacker.\n') < 1253221534 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it's a two-liner. < 1253221537 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't know enough ruby or perl to work out how those would work < 1253221549 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, the python one finishes already at the first line < 1253221593 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, that "" used to be necessary for something but evidently isn't any more < 1253221600 0 :KingOfKarlsruhe!unknown@unknown.invalid PART #esoteric :? < 1253221606 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, nor enough python to work out what boolean expressions + strings do in python :P < 1253221648 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well casting to a bool it seems a string is true, so that makes sense < 1253221658 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, in all these languages or/and return their true result as the original result, not boolean true < 1253221669 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So "false && 'foo'" is 'foo' < 1253221669 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, aha < 1253221673 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Er, || < 1253221675 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Anyway < 1253221677 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that explains a lot < 1253221697 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, is 0 true in ruby?? < 1253221701 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it is < 1253221708 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, and 1 is then false? < 1253221714 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, that's also true :-P < 1253221717 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1253221722 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Only false and nil are false, everything else is true < 1253221734 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that seems a bit trusting < 1253221747 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :How's that < 1253221763 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-_- < 1253221773 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that was what is technically known as a joke < 1253221784 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I still don't get it < 1253221785 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh well < 1253221788 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ah ok < 1253221818 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well, if it thinks almost everything it is told is true? < 1253221825 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :doesn't that seems a bit trusting and naive < 1253221838 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ah :-P < 1253221860 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :To be fair, almost everything is true in most popular languages < 1253221871 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well python and perl makes 0 false it seems < 1253221881 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yep. < 1253221922 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, erlang likes to throw exceptions in those cases it seems < 1253221929 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :4> true and "foo". < 1253221929 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :** exception error: bad argument < 1253221929 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : in operator and/2 < 1253221929 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : called as true and "foo" < 1253221940 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :same for numeric values < 1253221947 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it's rather a feature of scripting-type languages. < 1253221960 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it is perfectly fine in C though < 1253221972 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you can do ! and so on for pointers and what not < 1253221994 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I meant that in C, true && "foo" won't give you "foo". < 1253221994 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it seems empty string in python is false too < 1253222030 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, but it compiles and doesn't error out in any way < 1253222037 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :afaik < 1253222046 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :though, with string constant I'm not 100% sure < 1253222050 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it doesn't. Although compilers might warn. < 1253222061 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm quite sure. < 1253222074 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what truth value does a string has in C? < 1253222089 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It gets implicitly converted to a pointer, no? < 1253222093 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Which is then always true. < 1253222106 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, um, does that apply to string literals? < 1253222112 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe it does, not sure < 1253222118 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It does. < 1253222132 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :GCC apparently says nothing even with -Wall -W -pedantic. < 1253222153 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-W is a deprecated alias for -Wextra < 1253222167 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I am aware. It is also 5 characters shorter. < 1253222184 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :good answer < 1253222364 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, the Perl bit is probably the only non-obvious thing < 1253222373 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, oh? < 1253222380 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, how does the perl one work? < 1253222387 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :In Python, + concatenates; in Perl, it unsurprisingly adds two numbers :-P < 1253222401 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: did you remember -ansi? < 1253222405 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Which leads to interpreting "Pyt" and "hon" as numbers < 1253222409 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what does it do for two numbers then? < 1253222413 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :throws an exception? < 1253222421 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: No, but it doesn't make a difference. < 1253222432 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, in Perl + casts its arguments to numeric < 1253222440 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and those strings each have a numeric value of 0 < 1253222443 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Since "Pyt" and "hon" are nonnumeric, they both evaluate to 0 < 1253222448 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, how can they have that? < 1253222453 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I.e. since they're not "1" or something. < 1253222453 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ah < 1253222459 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: well, what numeric value do you think they have? < 1253222472 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, the numeric and string sides of a value are independent, although it's quite hard to set one and not the other < 1253222474 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So then you get (0 + 0 or " Perl ") i.e. (0 or " Perl ") i.e. " Perl ". < 1253222475 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, adding the ascii codes modulo 256 or something like that < 1253222495 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Perl wouldn't do something as silly as taht < 1253222500 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : actually, the numeric and string sides of a value are independent, although it's quite hard to set one and not the other <-- clarify? < 1253222566 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ooh even better. Store the string as a Gödel number < 1253222576 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you can have a value which casts to a string, and to an unrelated number < 1253222602 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : AnMaster: you can have a value which casts to a string, and to an unrelated number <-- still not sure what you mean < 1253222632 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :something like? < 1253222634 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :>>> str(29999999999999999999.4) < 1253222634 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :'3e+19' < 1253222639 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :>>> int(29999999999999999999.4) < 1253222639 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :30000000000000000000L < 1253222666 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(that L won't be there in python 3 or later) < 1253222666 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: He means that strings are something like struct String { char* str; int numeric; } < 1253222689 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And it is, somehow, possible to change only one of those fields without affecting the other < 1253222705 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, mhm, basically a class with overridden cast operators in C++ or similar? < 1253222715 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :confusing the hell out of anyone reading code using said class < 1253222731 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ah ok, not really then < 1253222733 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :even worse rather < 1253222743 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, example? < 1253222751 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, and that sounds like a bug < 1253222757 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: error messages < 1253222773 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you get an ENOENT or whatever, you get its number casting it to a number, and "No such file or directory" casting to string < 1253222783 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm ok, sure, but that sounds like casing exception class to various things tries to yeild useful stuff < 1253222797 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :basically, overriding cast code for the error class < 1253222800 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no? < 1253222817 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it isn't a class (in Perl5, at least) < 1253222822 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well ok < 1253222827 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's just a constant that has different string and numeric values < 1253222837 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, same but not defined in a consistent framework < 1253222856 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(which is what classes provide, at least the mess is now consistent) < 1253224507 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's what they're doing for Perl6 < 1253225840 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote closed the connection < 1253227063 0 :ais523!unknown@unknown.invalid QUIT :Remote closed the connection < 1253228081 0 :adam_d!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1253228401 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1253228523 0 :espenlaub!n=espenlau@HSI-KBW-078-043-179-008.hsi4.kabel-badenwuerttemberg.de JOIN :#esoteric < 1253228543 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1253228547 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hello < 1253228554 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :how are you? < 1253228591 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :xD ? < 1253228595 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :where from? < 1253228597 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :just logged on myself < 1253228599 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :norway < 1253228605 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :germany here < 1253228614 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i guessed so < 1253228624 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :why < 1253228632 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: ident line. < 1253228636 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :+ espenlaub [n=espenlau@HSI-KBW-078-043-179-008.hsi4.kabel-badenwuerttemberg.de] joined #esoteric < 1253228657 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :ok.nice. big brother is watching u ;-) < 1253228671 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :how old are you < 1253228678 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so, new here? this channel is about esoteric (weird!) programming languages, but we're rarely on topic < 1253228710 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :what are esoteric programming language, i know html though... < 1253228712 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :39, i'm one of the oldest here < 1253228759 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :lessee < 1253228811 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :so you are very expierenced in speaking esoteric programming languages? < 1253228816 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :what is lessee < 1253228822 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: Programming language => way to express computer programs. Esoteric programming language means programming language that contains weird (from mainstream point of view) stuff. < 1253228824 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :^bf >+++++++++[<++++++++>-]<.>+++++++[<++++>-]<+.+++++++..+++.>>>++++++++[<++++>-]<.>>>++++++++++[<+++++++++>-]<---.<<<<.+++.------.--------.>>+. < 1253228827 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :and what do you usually talk about here if not on topic < 1253228837 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Hello World! < 1253228857 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :is ilari a bot? < 1253228858 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that was brainfuck, one of the most famous ones < 1253228863 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no, fungot is < 1253228863 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: ' oh, even mr ron here would rather wash under his arms than heads." < 1253228875 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also HackEgo and EgoBot < 1253228884 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :what kind of weird stuff should that be? < 1253228893 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :are you a coder? < 1253228930 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :only amateur < 1253228936 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :i really dont understand what this is all about < 1253228941 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :can u enlighten me < 1253228957 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: Look at the line oerjan wrote. Does it resemble print "Hello, World!" (or close variation thereof) as in almost any mainstream programming language? < 1253228990 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that ^bf line above was a program in brainfuck, to write "Hello, World!". fungot then ran the program (^ is the prefix that bot uses) < 1253228991 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: there was the city of ephebe surrounded them. dogs barked. somewhere a cat fnord' rincewind began, trying again with another straw.) you bastard looked down at his feet. < 1253229022 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :alright. < 1253229024 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it also responds if you mention its name. it is itself written in an esoteric language, befunge < 1253229033 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :^source < 1253229033 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :http://git.zem.fi/fungot < 1253229083 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :is this something like an elite science only chosen people are able to handle with < 1253229111 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yes... insane people < 1253229133 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :we are all mad here < 1253229201 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: Brainfuck is really simple language. It has 8 operations: '>': Move to next memory cell. '<': move to previous memory cell. '+': Increment value in current cell, '-': decrement value in current cell. ',': read character from keyboard and store to current cell. '.' write current cell as character to screen. '['. If current cell is zero, jump to corresponding ']'. ']': If current cell is nonzero, jump to corresponding '['. Otherw < 1253229206 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :most of the esoteric languages are made to be incomprehensible or at least hard to read. they're like puzzles to code in, really < 1253229207 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :or better: just different mind-aliented people < 1253229217 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :That broke: ...cell is nonzero, jump to corresponding '['. Otherwise execute each character in order until end of program is hit. All execpt those 8 characters are ignored. < 1253229263 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :some like brainfuck are incomprehensible because their basic commands are ridiculously simple < 1253229299 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Those languages have an advantage, though: they are rather easy to compile to. < 1253229340 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(Brainfuck is a really easy target for making a higher-level language around) < 1253229377 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I am conflicted re fungot's ^source; on one hand, the gitweb link points to something you can use to (theoretically) get it up-and-running; on the other hand, it doesn't really have the immediate visual impact the actual main source file -- http://git.zem.fi/fungot/blob_plain/HEAD:/fungot.b98 -- has. < 1253229378 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: ' well done.' granny handed him his badge, swear him in, and he was suddenly very, very hard." the clown demanded. " you don't use it,' said < 1253229387 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: If you want some articles, there's "Friday pathological programming"-series in blog named "Good Math, Bad Math". < 1253229408 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: That stuff is about esoteric programming languages. < 1253229483 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :www.scienceblogs.com/goodmath -- This blog. < 1253229486 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it's an old series from 2006-2007, but the blog owner is doing a partial rerun now < 1253229497 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :^def source ul (http://git.zem.fi/fungot/blob/HEAD:/fungot.b98)S < 1253229497 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Defined. < 1253229512 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :^save < 1253229570 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: Some esoteric languages are totally crazy. Like ones based on laying tiles. Or other languages with no concept of where one is in program. < 1253229572 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Maybe that's a good compromise. Though the ^save didn't take. Uppity bot refuses to obey. < 1253229575 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :this is somekind of a media communication development < 1253229577 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ul is underload, another ridiculously simple language < 1253229592 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: i don't know what you mean < 1253229638 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :the artificial creation of new languages only used in a virtural dimension < 1253229666 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: anyway when we're not on topic there is a lot of talk about coding and computers and other geek stuff < 1253229671 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, why do you think you are mad? alice in wonderland < 1253229684 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: i just like that quote :) < 1253229692 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :and thats all? < 1253229701 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION looks for the exact text < 1253229719 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: It takes some madness to be able to design mind-bending programming language (which is by defintion esoteric). < 1253229724 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :heilandsack < 1253229743 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :.'But I don.t want to go among mad people,' Alice remarked. < 1253229743 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :'Oh, you can.t help that,' said the Cat. 'We.re all mad here. I.m mad. You.re mad.' < 1253229746 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :'How do you know I.m mad?' said Alice. < 1253229749 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :'You must be,. said the Cat. 'or you wouldn.t have come here.'. < 1253229757 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :darn unicode characters again < 1253229768 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :cool dialog < 1253229774 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :the cat must be right < 1253229781 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1253229793 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :so you just hang out in this chat for geek stuff and for esoteric stuff? < 1253229807 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :and not for esoteric stuff i wanted to say < 1253229826 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :thats a hack < 1253229834 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: also, someone officially declared me insane after i wrote an interpreter for unlambda (an esoteric language) in INTERCAL (another one) < 1253229847 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(well, privately actually) < 1253229862 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :you can handle that with your own? < 1253229920 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :you know it seems just a little bit crazy and isolated beening declared as an insane person by others < 1253229926 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :when i get in the mood. it doesn't happen _that_ often... < 1253229948 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :espenlaub: well mind you this other person was also an esoteric language person < 1253229979 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :for what type of application are you programming with esoter. language? < 1253229990 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :silly ones < 1253229992 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :One esoteric programming language I have coded interpretter for: It starts with empty string. At each step it places 0s, 1s, is or os at end of string, avoiding given pattern. If i is placed, it stops to read the keyboard and then spits binary representation of read character into end of string and continues. If o is placed and 8 characters before it are binary, it writes that as character to screen. Program halts when string can't be ext < 1253230004 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :...character to screen. Program halts when string can't be extended anymore without violating the pattern given. < 1253230040 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :The pattern is given as context-free grammar. < 1253230050 0 :espenlaub!unknown@unknown.invalid PRIVMSG #esoteric :how many commands has the language? < 1253230072 0 :espenlaub!unknown@unknown.invalid QUIT :"http://irc2go.com/" < 1253230087 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Oh, and the 0s and 1s written when i is placed ignore the pattern given. < 1253230167 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :is this a regex pattern, or just a single string? < 1253230185 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :context free grammar. Its more powerful than (standard) regex. < 1253230190 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh right < 1253230216 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and i guess it chooses non-deterministically at each step? < 1253230225 0 :coppro!n=coppro@unaffiliated/coppro JOIN :#esoteric < 1253230244 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Actually, randomly if it has multiple choices. < 1253230288 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :I don't consider that random choice and nondeterministic choice to be the same thing. < 1253230309 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :there is a certain overlap... < 1253230353 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and since it can halt, i take it that it doesn't consider more than one character at a time to extend with? < 1253230371 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :as in, the character added can destroy the ability to go further < 1253230380 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Yes, only considers single character at time (except of course that i spamming 8 at time). < 1253230413 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so is it tc? :) < 1253230447 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :And as said, i ignores the pattern. If after it spams the 8 chaaracters the string matches the pattern, the program continues. < 1253230466 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :I think it is TC. < 1253230519 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :now the complement of a context-free language is not necessary context-free, hm < 1253230567 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so there is not a pattern you stay within < 1253230594 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :It was inspired by some undecidable problem involving context free grammars. < 1253230618 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah, so it was designed to be undecidable and so probably tc? < 1253230693 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :IIRC, it was about finding string that given CFG doesn't generate. < 1253230715 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :right < 1253230739 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm wait < 1253230778 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that does not obviously give tc though, since you are choosing randomly at each step < 1253230811 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Writing the pattern in suitable manner, you can force it to be deterministic. < 1253230814 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and so you are not doing your utmost for finding such a non-generating string < 1253230826 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah, but does it stay undecidable then? < 1253230857 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Of course, when designing the language, I had to figure out how to make it only consider one character at time. < 1253230865 0 :kar8nga!unknown@unknown.invalid QUIT :Remote closed the connection < 1253230922 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the pattern takes the _whole_ string though, it's not about initial substrings (since otherwise ignoring the pattern at i would not help) < 1253230933 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i assume < 1253230947 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i mean, the whole string at the current step < 1253230966 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :It should be possible to match all false executions of given turing machine. < 1253231021 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :The i is input operation. o is output. They have role analogous to brainfuck , and . < 1253231038 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :for tc it needs to emulate the turing machine deterministally though < 1253231069 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh wait now i vaguely recall something < 1253231169 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :i and o probably won't change its computational class. < 1253231187 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you can embed the history of running of a turing machine in a string so that matching two context-free languages ensure the history is correct < 1253231201 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Yup. < 1253231248 0 :Sgeo!n=Sgeo@ool-18bf618a.dyn.optonline.net JOIN :#esoteric < 1253231277 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :which was how a book i browsed proved that some problem about context-free languages was undecidable < 1253231303 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't recall the rest of the details though < 1253231381 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm maybe you can also do that with avoiding a single cfg, is that how your language is intended? < 1253231418 0 :FireFly!unknown@unknown.invalid QUIT :"Later" < 1253231421 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :by using the cfg to detect mismatches in the history < 1253231465 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :If you have multiple CFGs that all detect false executions, you can take their union. < 1253231502 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the history is the steps of the turing machine computation, with odd and even steps reversed. that way you can look at consecutive pairs of steps and analyze them. i think. < 1253231527 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i'm not sure how much i'm remembering and how much i'm reconstructing here :) < 1253231613 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :however, now it seems obvious to me this can be done < 1253231670 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :My idea was to encode state, symbol, new state, new symbol and movement for each step. Then false executions include: Wrong steps, states not matching in consequtive operations and symbols not matching in same positions (finding same positions is like the "brace language"). < 1253231701 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Of course, one has to arrange the first state and symbol as well. Then the other rules can take over. < 1253231713 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1253231854 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION just got an IRC death threat < 1253231866 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :The reference interpretter probably couldn't execute 99 bottles of beer, since it would take too much memory and CPU... < 1253231896 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't think you need the new state and new symbol together with the old one, though, just make the matching of those in consecutive pairs part of the "brace language" thing < 1253231916 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Probably can be simplified... < 1253231952 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(the brace language thing was why i said/recalled that consecutive steps needed to be encoded reversed from each other) < 1253231957 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :The reference interpretter undergone quite much optimization. The first versions took something like 12 seconds to execute "Hello, World!". The later versions only ~40ms.