< 1235606400 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :formal upper bounds < 1235606407 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not just for the sorting algorithm < 1235606412 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but for the whole app < 1235606425 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :They do. It's 2^{word size} :P < 1235606434 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hah. hah. < 1235606477 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :GregorR, seriously, pre-OSX had a good thing then, you could know for sure it would keep within limits < 1235606497 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :each app would have a minimum and maximum size set in the info box for the program file < 1235606508 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the OS would give it something between those when the app was started < 1235606525 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to change you would have to quit the app, open the info box and change the values, start the app again < 1235606536 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :OOM ahead of time < 1235606537 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1235606545 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that indeed does sound pretty stupid! < 1235606582 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, talking about Mac OS 6-9 (and probably older ones, but never used them. and yes it is technically System 6, System 7, Mac OS 8, Mac OS 9...) < 1235606601 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, it meant you never ran into swap trash < 1235606611 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :of course you had to reboot to change virtual memory size < 1235606616 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is even sillier < 1235606622 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :doesn't windows also force it? < 1235606625 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for the page file < 1235606636 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :while linux can change any time you want < 1235606653 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :actually not sure about page file size in Windows < 1235606655 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, tell me ^ < 1235606664 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i don't know it < 1235606664 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc you use it? < 1235606669 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :page file size that is < 1235606682 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i also don't know whether you need to reboot to change the size of virtual memory < 1235606687 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :why would i :| < 1235606689 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well pretty sure you need(ed) to restart in windows to change the size < 1235606698 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :why would i change it? < 1235606712 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and Mac OS virtual memory == Windows pagefile, == *nix swap < 1235606740 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if they chose it badly, i'll just buy a new computer. < 1235606745 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :... < 1235606748 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-_- < 1235606764 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :don't be stupid < 1235606803 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if i need to look beneath the abstraction, the abstraction is bad. < 1235606855 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i try to keep the abstractions i make and the abstractions i use separate < 1235606979 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders if he should optionally support using hugepagetlb thing for allocation in cfunge < 1235607005 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :translation lookaside buffer? < 1235607010 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if tlb cache currently has issues with overflowing it could help speed a bit < 1235607018 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, yeah it allows you to get larger pages < 1235607028 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :than the standard 4096 byte ones < 1235607032 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i know what it is < 1235607035 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# ls /sys/kernel/mm/hugepages < 1235607035 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hugepages-2048kB < 1235607038 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1235607042 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :no that's not what a tlb is < 1235607048 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, indeed not < 1235607073 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :/usr/src/linux/Documentation/vm/hugetlbpage.txt < 1235607077 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, ^ < 1235607080 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :point is < 1235607086 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a TLB is used to find a page < 1235607107 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :too many pages and the cache can't fit all pages used by app < 1235607120 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh hugepagetlb does that < 1235607129 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :right, misunderstood you < 1235607133 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :thus you could save some tiny amount of time by using fewer, but larger, pages < 1235607150 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, I will use oprofile tomorrow to check tlb misses < 1235607150 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah makes sense < 1235607153 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc it can check for it < 1235607160 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to see if it is worthwhile at all < 1235607197 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird. Look above. Insane micro optimising ^ < 1235607198 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1235607234 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anyway i don't really care for that kinda optimization < 1235607236 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1235607254 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, well really what would be useful I guess is changing stack direction < 1235607259 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :currently it grows up < 1235607266 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :copying strings to it means reversing < 1235607279 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is what the current bottleneck is < 1235607296 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :however making it grow down introduces other issues < 1235607308 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like growing it not being a simple realloc() < 1235607308 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but not because it's micro-optimization, caching just doesn't fit my mental calculation model. maybe because the usual computation models don't have anything ilke it. < 1235607335 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :s/calculation/computation/ < 1235607365 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, that is the difference between "theoretical model" and "model useful in real life" < 1235607403 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, still I'd say making string copying not have to swap string direction... < 1235607406 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :would help a lot < 1235607406 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :meh, no asymptotical difference < 1235607413 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :really < 1235607419 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :about 4-8 times faster < 1235607423 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :depending on CPU < 1235607430 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :because you can copy in word size < 1235607436 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also less cache misses < 1235607442 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and < 1235607447 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you could SIMD it < 1235607458 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*yawn*, let the compiler worry about that < 1235607459 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to get 128-bit copying on x86/amd64 < 1235607471 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, I will, but it can't do it atm < 1235607474 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh simd! < 1235607476 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :because stack grows up < 1235607479 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :now that's something i do like. < 1235607483 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and strings need to be *REVERSED* < 1235607488 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when pushed on stack < 1235607493 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which means byte by byte copy < 1235607502 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which sucks < 1235607508 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*WHY* do they need to be reversed? < 1235607527 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, because they are 0"gnirts" in cfunge and my stack implementation grows upwards < 1235607536 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is what I want to change < 1235607540 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it grows downwards < 1235607551 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so I can just memcpy() or such < 1235607598 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, that is why < 1235607603 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :any questions? < 1235607607 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :no not really < 1235607634 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1235607636 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that quote < 1235607642 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :was ehird... in #esoteric < 1235607646 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :2008-03-21/FreeNode-#esoteric.log.bz2:okt 31 23:20:13 ah yes -- quoting alice in wonderland. The post-ironic hippy way to be cool on the internet. < 1235607651 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: What is the big question about the meaning of life, the universe and everything? < 1235607661 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, I don't know :P < 1235607673 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well it was worth a shot < 1235607694 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i can't smell people < 1235607714 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nov 06 02:39:21 "We're all mad here. I am mad. You're mad." "How do you know that I am mad?" asked Alice. "You must be," said the Cat, "or you wouldn't have come here." < 1235607720 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: maybe there aren't any nearby. you were a lizard, right? < 1235607735 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :okt 31 23:19:45 "We're all mad here. I am mad. You're mad." "How do you know that I am mad?" asked Alice. "You must be," said the Cat, "or you wouldn't have come here." < 1235607736 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that too < 1235607747 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, you were obsessed with that line? < 1235607754 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :okt 31 23:20:13 ah yes -- quoting alice in wonderland. The post-ironic hippy way to be cool on the internet. < 1235607759 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: i mean i don't have the whole sense. of smelling people. < 1235607774 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it fits #esoteric so well < 1235607782 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :quoting Terry Pratchett -> no, that's the post-hippy ironic way < 1235607797 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :post-hippy post-ironic way -> killing yourself < 1235607820 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :holy shit < 1235607822 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :2:23 < 1235607823 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::DD < 1235607829 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, true < 1235607833 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i have < 1235607837 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :too much stuff to do < 1235607848 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :should probably < 1235607849 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :liek < 1235607851 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :go. < 1235607863 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I have stuff to do tomorrow morning. For values of morning in the range like 11:00 < 1235607867 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to 12:00 < 1235607873 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so yeah I better go to sleep < 1235607884 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: your haiku misses the metric a bit < 1235607884 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :night < 1235607902 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: i know < 1235607905 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :^ fixed < 1235607961 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :okay < 1235607967 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :algebra time now, i think < 1235607968 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :-> < 1235607981 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1235608002 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, what is the name for stuff like hexameter and pentameter and such < 1235608008 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"versmått" in Swedish < 1235608011 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but in English? < 1235608087 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :btw: Iambic pentameter > haiku < 1235608087 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"meter" i think < 1235608121 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Meter_(poetry) < 1235608135 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Blank verse :) < 1235608423 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :night < 1235608544 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :indeed it is < 1235613470 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Blank verse is better than rhyming, < 1235613475 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :For there's no need to worry of timing, < 1235613479 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :The problem you see, < 1235613482 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :With blank verse, to me, < 1235613497 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Is that it's just an excuse for lazy people to write prose and call it poetry. < 1235613517 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*sniff* so beautiful < 1235613868 0 :MizardX!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1235613987 0 :oklopol!unknown@unknown.invalid QUIT :"( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )" < 1235614664 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :A poem is < 1235614671 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :Just like prose, but < 1235614677 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :Separated by random < 1235614679 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :Newlines < 1235614875 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Or sometimes // Double slashes // Just for conciseness. < 1235614927 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :That // Too. < 1235617506 0 :psygnisfive!n=psygnisf@c-71-57-164-119.hsd1.fl.comcast.net JOIN :#esoteric < 1235625547 0 :oerjan!unknown@unknown.invalid QUIT :"leaving" < 1235626246 0 :MizardX!i=MizardX@92.254.128.248 JOIN :#esoteric < 1235634708 0 :oklopol!n=nnscript@a91-153-121-248.elisa-laajakaista.fi JOIN :#esoteric < 1235635199 0 :clog!unknown@unknown.invalid QUIT :ended < 1235635200 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1235635813 0 :oklopol!unknown@unknown.invalid QUIT :Read error: 54 (Connection reset by peer) < 1235635829 0 :oklopol!n=nnscript@a91-153-121-248.elisa-laajakaista.fi JOIN :#esoteric < 1235637368 0 :GreaseMonkey!unknown@unknown.invalid QUIT :"Client Excited" < 1235639537 0 :MigoMipo!n=MigoMipo@84-217-12-121.tn.glocalnet.net JOIN :#esoteric < 1235640466 0 :ais523!n=ais523@147.188.254.121 JOIN :#esoteric < 1235643000 0 :jix!n=jix@dyndsl-095-033-124-177.ewe-ip-backbone.de JOIN :#esoteric < 1235644337 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://news.bbc.co.uk/1/hi/uk_politics/7908498.stm haha < 1235644866 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1235644871 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1235644881 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, quite interesting speed test: dd if=/dev/zero of=/dev/null& pid=$! ; sleep 30; kill -USR1 $pid; sleep 1; kill $pid < 1235644897 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :on FreeBSD replace USR1 with INFO < 1235644912 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why are you sending sigusr1 to dd? < 1235644920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, because it dumps stats < 1235644922 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like speed < 1235644935 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :20219142656 bytes (20 GB) copied, 30.0494 s, 673 MB/s too < 1235644941 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, you don't want that to run too much, your /dev will end up running out of zeros < 1235644944 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err remove too < 1235644952 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hah hah < 1235645147 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Also, your bit bucket will fill up. < 1235645164 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: most of the parts of this laptop are starting to break, anyway < 1235645168 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think the bit bucket is leaky < 1235645180 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the more zeros in there, the more pressure on the leaks and the faster they get out < 1235645242 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no you are both wrong < 1235645258 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :2.6.23 and later recycles from /dev/null < 1235645278 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :all zeros are sent for using in /dev/zero < 1235645281 0 :ais523!unknown@unknown.invalid QUIT : < 1235645291 0 :ais523!n=ais523@147.188.254.121 JOIN :#esoteric < 1235645300 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, did you miss what I said? < 1235645307 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1235645312 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : and the more zeros in there, the more pressure on the leaks and the faster they get out < 1235645312 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : no you are both wrong < 1235645312 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : 2.6.23 and later recycles from /dev/null < 1235645312 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : all zeros are sent for using in /dev/zero < 1235645312 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :* ais523 has quit () < 1235645331 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was wondering when someone would think of recycling < 1235645359 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, other bits are used for other stuff, usually /dev/random and /dev/urandom < 1235645382 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wouldn't that leave /dev/random spewing out more ones than zeros? < 1235645405 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, random gets 0 from the zero buffer when it needs it < 1235645408 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :duh < 1235645431 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders what /dev/cpu_dma_latency is  < 1235645445 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's the sort of thing I'd expect in /proc not /dev < 1235645456 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :/dev/network_latency exists too < 1235645464 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# cat /dev/network_latency < 1235645464 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cat: /dev/network_latency: Invalid argument < 1235645473 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :network_throughput as well < 1235645489 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1235645492 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and indeed < 1235645518 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Obviously, it can toggle 0s to 1s. < 1235645546 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, and the other way, it does that only if it runs out of the buffers < 1235645558 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to avoid the overhead when possible < 1235645564 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Well, of course. < 1235646457 0 :BeholdMyGlory!n=arvid@d83-183-181-73.cust.tele2.se JOIN :#esoteric < 1235646705 0 :ais523!unknown@unknown.invalid QUIT :"lunch" < 1235647841 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :So can you do echo "really really much" > /dev/network_throughput when you want a faster connection? < 1235648366 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And /dev/network_{latency,throughput} seems to be intended for processes who want to register/monitor QoS requirements. < 1235648508 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's a funny interface; you open /dev/network_throughput and write in what you want to get, then keep a file handle open as long as you want it to be active. I would have expected some ugly ioctl nastiness. < 1235648982 0 :KingOfKarlsruhe!n=nice@HSI-KBW-085-216-041-121.hsi.kabelbw.de JOIN :#esoteric < 1235649109 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, heh < 1235649113 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah funny interface < 1235649392 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :strange, seems like time(NULL) takes a lot of the system time. Ah I guess the HRTI test calling y so often causes that... < 1235649887 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1235649906 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh right... that is callgrind's time().. < 1235650227 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : for (ssize_t i = len; i >= 0; i--) < 1235650227 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : stack->entries[top - (size_t)i] = str[i]; < 1235650238 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :gcc generates very suboptimal code for that, even at -O3 < 1235650239 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1235650254 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, in jitfunge, which way does the stack grow? < 1235650267 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or stacks < 1235650295 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hrrm I just got an idea for fast asm on x86_64 for that stack push... < 1235650341 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh yes... abusing BSWAP I'm sure should be possible... < 1235650343 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Up, I think. To higher addresses. I'm not completely sure how I did the stack-stackery, I think I just keep the topmost stack in the specially handled memory area, and copy things on stack-stack operations. < 1235650408 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, well up is bad for string pushing on stack < 1235650411 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I found < 1235650419 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :basically that is the main bottle neck in cfunge atm < 1235650436 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since pushing strings mean reversing every byte to push a 0"gnirts" < 1235650449 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mostly related to all those y in the HRTI test that mycology does < 1235650464 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and huge env < 1235650474 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, well, my STRN implementation might not be very optimal anyway. < 1235650478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ env | wc -c < 1235650478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :5685 < 1235650544 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, well STRN isn't a bottle neck in mycology, and my STRN is "not too bad", and actually since it is defined to use strings it isn't well defined how values outside the range of char works in STRN < 1235650575 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in cfunge it depends on which instruction, since some uses unsigned char*, and other ones just copies directly to/from funge space < 1235650607 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :should probably implement some sort of fungeCell* pushing thing... would be faster < 1235650637 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(less checks for available stack space, since unlike you I don't mess with catching SEGV and poking registers to avoid checking for stack size) < 1235650749 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's no special reason why I couldn't have a downward-growing stack, except that theoretically it might be a bit more likely to find free pages after the stack than before it. But that's just a guess. And anyway I do that half-assed attempt to stick the stack out there in the wilderness if possible. < 1235650774 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah.. down growing stacks means grow isn't a simple realloc() any more < 1235650787 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for me < 1235650878 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Actually, heh, I don't think current jitfunge even grows the stack at all. Haven't touched that code in a while, but all I'm seeing here are the underflow checks. < 1235651029 0 :ais523!n=ais523@92-236-187-64.cable.ubr08.king.blueyonder.co.uk JOIN :#esoteric < 1235652320 0 :MigoMipo!unknown@unknown.invalid QUIT :"QuitIRCServerException: MigoMipo disconnected from IRC Server" < 1235653502 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :Remote closed the connection < 1235653903 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hi < 1235653909 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1235654055 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, is there any way to tell gcc that how a specific memory block is a aligned, I mean I have a pointer to an array of ints and want to tell gcc it is properly aligned for SSE access, since gcc decides to not try to vectorize the loop due to: "note: Unknown alignment for access: *array_25" < 1235654061 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but I know it is properly aligned < 1235654067 0 :jix!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1235654082 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's an __attribute__ for it, I'm pretty sure < 1235654084 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :check the docs < 1235654147 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, that is for aligning variables yes, but there doesn't seem to be one to tell it how a malloc()ed block is aligned (and gcc can't possible trace this back to the malloc since the pointer has been stored in a struct for quite a while before and passed around) < 1235654181 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :couldn't you put the attribute in the right place in a pointer definition to constrain what it's pointing to, rather than what it is? < 1235654202 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tried that. it seemed to align the pointer itself < 1235654599 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's that "aligned (x)" attribute for types; the example has "typedef int more_aligned_int __attribute__ ((aligned (8)));". Maybe you could (ab)use a similar typedef -- like do "typedef unsigned char sse_aligned_char __attribute__ ((aligned (42)));" and then keep a sse_aligned_char* type pointer. < 1235654611 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(There's 42 because I don't really know how many bytes you want there.) < 1235654627 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't think aligning to 42-byte boundaries would be particularly useful... < 1235654687 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1235654712 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I need to align 128-bits probably < 1235654723 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lets try that with 64 bits < 1235654761 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(8) < 1235654767 0 :impomatic!n=John@nat66.mia.three.co.uk JOIN :#esoteric < 1235654823 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Also: < 1235654829 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :As another example, < 1235654835 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric : char *__attribute__((aligned(8))) *f; < 1235654842 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :specifies the type "pointer to 8-byte-aligned pointer to `char'". < 1235654846 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: but but - clearly that must be the answer < 1235654853 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :actually that doesn't help. What I need is to tell it *base* is aligned < 1235654868 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :error: alignment of array elements is greater than element size < 1235654873 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if I try fizzie's suggestion < 1235654897 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, well, you can try something like "char __attribute__((aligned(16))) *foo" too. < 1235654907 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :But I'm no GCCer. < 1235654923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :eh < 1235654938 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1235654959 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, maybe I should've read the rest of that paragraph. < 1235654984 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"Note again that this does not work with most attributes; for example, the usage of `aligned' and `noreturn' attributes given above is not yet supported." immediately after that char *__.. example. < 1235655215 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :still doesn't help < 1235655231 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, aligned would cause it to insert padding between each member in array < 1235655251 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :As far as the "attribute in typedef" is considered, certainly with a "typedef unsigned char auchar __attribute__ ((aligned (16)));" I can't do "auchar foo[10];" without that error, but a "char foo[10]; auchar* bar = (auchar*)foo;" works just fine. < 1235655255 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not tell it that the first member is aligned on even 16 bytes < 1235655257 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which it is < 1235655298 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Not that I have any clue whether gcc would understand that access via that "bar" pointer there would be 16-byte-aligned. Or what auchar[1] would mean. Maybe there would be padding. < 1235655312 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Er, I mean bar[1] there. < 1235655319 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, it can do it for static variables < 1235655323 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1235655325 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1235655327 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and stack ones < 1235655476 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, well, my interpretation of "typedef foo afoo __attribute__ ((aligned (x))); ... afoo* x = ...;" would be "afoo is a foo-type thing that is aligned at x-byte boundaries, so x is therefore a pointer to a foo-element aligned thusly", but I really can't know how GCC reads it. < 1235655491 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :icc seems to understand this with no hints btw... < 1235655663 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :GCC does have that vector-size attribute, too, for more explicit vectorizablitiesies. < 1235655747 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The stuff at http://gcc.gnu.org/onlinedocs/gcc/Vector-Extensions.html I mean. But I haven't really found any concrete examples about "here's how to tell the alignment of a memory block for auto-vectorization purposes". < 1235656480 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :o < 1235656497 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oko < 1235656533 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :okleosynthesis < 1235656786 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The basis of all matter. < 1235656826 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(Musts away.) < 1235656827 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :...no *your* matter < 1235656832 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :except the matter that doesn't matter < 1235656857 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I was this close to adding "at least all interesting matter". < 1235656861 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Well, no matter. < 1235656864 0 :oklopol!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1235656879 0 :oklopol!n=nnscript@a91-153-121-248.elisa-laajakaista.fi JOIN :#esoteric < 1235656938 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :16:00… fizzie: Well, no matter. ||| 16:00… * Disconnected <<< for second there i perceived this as if fizzie had quit just after that message, and somehow it would've looked like i was disconnecting from my perspective. < 1235656946 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it was weird < 1235657108 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Are talk pages on the esolang wiki covered by the same license as the articles pages? < 1235657235 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think so < 1235657242 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's an agree-to-PD message below the edit box < 1235657246 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it's the only way to change them < 1235657266 0 :MizardX!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1235657397 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Thanks :-) < 1235657412 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :I wanted to use something from the Underload talk page < 1235657496 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which one? < 1235657504 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if I wrote it, it's definitely PD, with my compliments < 1235657672 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Thanks, but it's Keymaker's quine :-) < 1235657699 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what did you want it for, by the way? < 1235657706 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i think that's in the article too? < 1235657717 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, my quine's the one in the article < 1235657720 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :I thought I'd include it here with an explanation of how it works http://corewar.co.uk/assembly/underload.htm < 1235657940 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : GCC does have that vector-size attribute, too, for more explicit vectorizablitiesies. <-- doesn't do the same thing in this case < 1235659352 0 :dbc!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1235659823 0 :dbc!n=daniel@130-94-161-238-dsl.hevanet.com JOIN :#esoteric < 1235660615 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Just starting my implementation of Forth in Redcode. Still open to suggestions < 1235660846 0 :ehird!unknown@unknown.invalid PART #esoteric :? < 1235660848 0 :ehird!n=ehird@208.78.103.223 JOIN :#esoteric < 1235660903 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i was gone a day < 1235660905 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :did you miss me < 1235660911 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :good < 1235660917 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :ACTION did :-) < 1235660931 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :see, clearly I'm the most important member of this channel. < 1235660955 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I was gone a day too, so no < 1235660959 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I didn't know you weren't there to miss < 1235660989 0 :upyr[emacs]!n=emacs@79.174.35.21 JOIN :#esoteric < 1235661003 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi upyr[emacs] < 1235661005 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you new? < 1235661014 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :wait, ehird was gone a day? *duck* < 1235661028 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::< < 1235661169 0 :upyr[emacs]!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yes :/ < 1235661183 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why the :/? nervous about the goat sacrifice? < 1235661184 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it'll be ok. < 1235661200 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, has nobody noticed the logs link is wrong? < 1235661217 0 :upyr[emacs]!unknown@unknown.invalid PRIVMSG #esoteric ::/ decouse i don't sleep 2 days < 1235661231 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that could be an issue < 1235661232 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : fucking wiki locking up just as i'm saving :< < 1235661236 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :clog: are you sure you didn't mean oklopol? < 1235661596 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://blogs.msdn.com/michkap/archive/2005/09/17/469941.aspx < 1235661850 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :15:59:55 IMO all apps should have upper limits on how much they will allocate < 1235661850 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :16:00:00 formal upper bounds < 1235661850 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :16:00:07 not just for the sorting algorithm < 1235661851 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :16:00:12 but for the whole app < 1235661860 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Alternative solution: don't write memory hogging apps. < 1235661868 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Crazy, I know. < 1235661889 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster's method looks like a way to make sure you don't write a memory hogging app < 1235661914 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err, you can easily write a memory hogging app by doing that < 1235661918 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it gains you approximately nothing. < 1235661936 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it lets you know exactly how memory hogging it is < 1235661957 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no, it doesn't, and to boot, even if it did it's a tedious, stupid way of finding that out < 1235662234 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ubiquite (ubiquiting, ubiquited), v. To make a property more ubiquitous. < 1235662246 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(also, ubiquties) < 1235662266 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :maybe it should be ubiquit < 1235662274 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :, ubiquiting, ubiquited, ubiquites < 1235662583 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Yay, Forth interpreter is working! < 1235662595 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well done < 1235662601 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Thanks :-) < 1235662610 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :can it multiply? < 1235662635 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it supports about 20 words < 1235662658 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: does "SEE" work? < 1235662692 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Hmmm... I don't know what SEE is, so probably not! < 1235662728 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: prints to screen the forth source code of a defined word, or the disassembled machine code of a primitive < 1235662749 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, does IF, ELSE, THEN-style branch control work? < 1235662882 0 :MizardX!n=MizardX@92.254.128.248 JOIN :#esoteric < 1235662897 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :SEE doesn't work and probably won't ever. IF ELSE THEN not yet. BEGIN UNTIL is the only flow control so far. < 1235662897 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :It only 45 Redcode instructions! < 1235662918 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how is BEGIN UNTIL implemented? < 1235662932 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's just, you can implement the language Forth conventionally, but it isn't really a forth unless you do it the "proper way" < 1235662937 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :threaded machine code that is < 1235662959 0 :jix!n=jix@dyndsl-095-033-035-105.ewe-ip-backbone.de JOIN :#esoteric < 1235663035 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :the following are implemented: u. space * = 1+ - + swap ?dup dup depth abs negate r> >r r@ begin drop until < 1235663046 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :It's threaded < 1235663113 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: redcode's all about threaded machine code < 1235663117 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that, and crazy side effects < 1235663123 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err, no. < 1235663132 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i mean you have to compile forth to threaded machine code < 1235663142 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also redcode isn't _threaded_ machine code < 1235663147 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yes it is < 1235663147 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that makes no sense, you can only compile to that < 1235663153 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :have you not seen the SPL instruction? < 1235663160 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't recall it < 1235663175 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: well, you're missing the point if you miss the instruction that does machine-code threading < 1235663177 0 :MizardX-!i=MizardX@92.254.128.248 JOIN :#esoteric < 1235663194 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :SPL is one of the most important opcodes in redcode, it massively changes the way the language works < 1235663201 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1235663223 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"threading" means something different in forth, nothing to do with concurrency < 1235663230 0 :MizardX!unknown@unknown.invalid QUIT :Connection reset by peer < 1235663236 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1235663247 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no duh < 1235663254 0 :MizardX-!unknown@unknown.invalid NICK :MizardX < 1235663265 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: so no, you don't know what threaded means < 1235663274 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, ok, one word with two meanings? < 1235663279 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :threading in Forth means the program is compiled to a long series of subroutine addresses < 1235663288 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm tempted to say forth's meaning came first. < 1235663296 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: exactly < 1235663306 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :2 2 + -> {&LITERAL,2,&LITERAL,2,&PLUS} < 1235663313 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(where LITERAL looks one ahead in the ip) < 1235663387 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Yes, that's exactly how it compiles :-) < 1235663402 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i was explaining for ais523 < 1235663511 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what? ais523 didn't know what threading in forth was? ^_^ < 1235663517 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no < 1235663523 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh ok < 1235663543 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's pretty interesting, it's sort-of like coercing an ordinary processor into being a bytecode interpreter < 1235663546 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ever seen bashforth? string-threaded iirc < 1235663567 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :redcode doesn't have subroutines, so you'd need to implement a stack yourself to do it like that < 1235663578 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1235663602 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :colourforth! < 1235663628 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :any colour so long as it's red < 1235663698 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, was that a reference to black for t-ford? < 1235663714 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1235663721 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although it seems Mr. Ford never actually said that < 1235663722 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1235663740 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh? Another of the "Beam me up, Scotty" famous unsaid lines? < 1235663766 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1235663781 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[15:52:23] that's pretty interesting, it's sort-of like coercing an ordinary processor into being a bytecode interpreter < 1235663788 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sort of but actually not. < 1235663793 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in fact, not really sort of,. < 1235663797 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so what is the origin of it then? < 1235663802 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure < 1235663810 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably you could look it up on snopes or somewhere < 1235663852 0 :MigoMipo!n=MigoMipo@84-217-1-43.tn.glocalnet.net JOIN :#esoteric < 1235663856 0 :KingOfKarlsruhe!n=nice@HSI-KBW-085-216-041-121.hsi.kabelbw.de JOIN :#esoteric < 1235663969 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :'as Ford wrote in his autobiography, "Any customer can have a car painted any colour that he wants so long as it is black"' (WP) < 1235663977 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1235664005 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok he never *said* it then? but rather wrote it? < 1235664033 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or maybe it is a myth that it is a myth that he never said it! < 1235664078 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :father < 1235664083 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I am your luk < 1235664083 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :e < 1235664107 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikiquote.org/wiki/Talk:Henry_Ford#Any_colo.28u.29r.2C_so_long_as_it_is_black < 1235664191 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I love the way the u is parenthesised in that < 1235664398 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :colers <-- solved < 1235664408 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :naybohr <- see? < 1235664467 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :eye see < 1235664570 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :eehurd is sow smarte < 1235664573 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : Writing a mathematical function in Brainfuck is as easy to do as a CAT program in Unlambda :D < 1235664577 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you mean really easy? < 1235664587 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(2008-03-21, vintage quotes, move along_ < 1235664588 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :) < 1235664667 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anyone can write the former, not everyone can write the latter < 1235664686 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think the latter is easier < 1235664688 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1235664690 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :definitely < 1235664717 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the latter is easier but only if you know how < 1235664721 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :unlambda is an asymptotically much simpler language, so to speak, so once you know it, should be very easyt < 1235664722 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, which mathematial function? < 1235664723 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*easy < 1235664737 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: any is the implication < 1235664754 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :presumably one you can write in some other language already < 1235664766 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well yes < 1235664775 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :addition's easy enough in BF < 1235664836 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks about implementing look_and_say(N) as O(1) < 1235664842 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :where N = iteration number < 1235664882 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1235664885 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the first digit goes < 1235664891 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :1 1 2, then 1 1 3 forever < 1235664911 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well it has exponential growth < 1235664913 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the second goes (), 1, 1, 2, then 1 1 3 probably forever < 1235664922 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the third digit goes 1 1 2 then 1 33 forever < 1235664939 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the fourth goes 1 2 2 then 1 3 3 forever < 1235664943 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hrm. < 1235664955 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure if you had a digits_in_look_and_say(N) you could do it < 1235664978 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :also where did you get those numbers there? < 1235664989 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :16:10:44 1 < 1235664990 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :16:10:44 11 < 1235664990 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :16:10:44 21 < 1235664990 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :16:10:44 121116:10:44 111221 < 1235664990 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :16:10:44 312211 < 1235664990 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :16:10:46 13112221 < 1235664992 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1235664998 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :examining the digit at each position downwards < 1235665003 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think they're fairly trivial patterns < 1235665022 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so number of digits in N + some modulo magic should do it < 1235665029 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it splits into atoms, naturally, after that it's just substitution < 1235665041 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm trying to do it non-recursively < 1235665042 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :O(1) < 1235665091 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i bet i can make it like O(½) < 1235665096 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :16:18:13 after a number of iterations it split into Conway's elements. From there on it is a simple substitution < 1235665097 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wut < 1235665113 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you mean finding the m'th digit of the n'th iteration, O(1) in n? (but obviously cannot by O(1) in m) < 1235665125 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*be < 1235665142 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: no, element N of the LAS sequence in O(1) < 1235665146 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm fairly certain it is possible < 1235665154 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :erm i have that page on my wp watchlist < 1235665168 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wut < 1235665189 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :for look and say < 1235665192 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and < 1235665193 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :? < 1235665202 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: let him dream. < 1235665211 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i dream about unicorns. < 1235665213 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait, no I don't. < 1235665220 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i dream about doing math. < 1235665245 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :first of all, nothing can be O(1) if it doesn't have constant size output and requires looking at only finite part of input < 1235665245 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :usually i'm solving a scrambled version of an exercise i was doing before going to sleep < 1235665273 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and the bubble is popped. < 1235665308 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :at least in the usual turing machine sense of O() < 1235665315 0 :ShakespeareFan00!n=chatzill@dyn-62-56-80-235.dslaccess.co.uk JOIN :#esoteric < 1235665336 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i think ehird just means finding the nth element without solving the ones leading up to it first. < 1235665336 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[16:20:45] first of all, nothing can be O(1) if it doesn't have constant size output and requires looking at only finite part of input < 1235665339 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not the sense I meant < 1235665344 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well < 1235665347 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :okay, I said it wrongly < 1235665352 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ShakespeareFan00: Hi. < 1235665364 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :sometimes you need to say wrongly to be heard. < 1235665428 0 :ShakespeareFan00!unknown@unknown.invalid PRIVMSG #esoteric :http://scratchpad.wikia.com/wiki/Sigsumeidsi - Anyone think this could be tweaked for programming? < 1235665445 0 :ShakespeareFan00!unknown@unknown.invalid PRIVMSG #esoteric :Unfortunatly I lost the IRC logs of it's creation < 1235665453 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you can make any parsable language into a programming language < 1235665466 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :doesn't mean it'll have interesting semantics < 1235665940 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i wonder if you can implement thue in thue non-trivially < 1235666093 0 :ShakespeareFan00!unknown@unknown.invalid PRIVMSG #esoteric :Sigsumeidsi notes are GFDL < 1235666102 0 :ShakespeareFan00!unknown@unknown.invalid PRIVMSG #esoteric :feel free to do with it what you will < 1235666233 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ShakespeareFan00: sorry, we can't. < 1235666235 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :our wiki is public domain. < 1235666274 0 :ShakespeareFan00!unknown@unknown.invalid PRIVMSG #esoteric :Oh < 1235666275 0 :ShakespeareFan00!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1235666280 0 :ShakespeareFan00!unknown@unknown.invalid PRIVMSG #esoteric :Never mind < 1235666304 0 :ShakespeareFan00!unknown@unknown.invalid PRIVMSG #esoteric :A lot of Sigsumeidsi was my idea though... so I'll see if I've got the VERY early form of it < 1235666402 0 :ShakespeareFan00!unknown@unknown.invalid PRIVMSG #esoteric :And I seem to be the sole contributor on the Wikia site < 1235666410 0 :ShakespeareFan00!unknown@unknown.invalid PRIVMSG #esoteric :(I KNOW I had help with it though :( ) < 1235667098 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION writes constraint-based language. < 1235667259 0 :ShakespeareFan00!unknown@unknown.invalid PRIVMSG #esoteric :ehrid: had you come across condit? < 1235667269 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't recall. < 1235667316 0 :ShakespeareFan00!unknown@unknown.invalid PRIVMSG #esoteric :http://esoteric.voxelperfect.net/wiki/Condit < 1235667335 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :seems pretty trivial < 1235667876 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well, that page doesn't say anything about how you write conditions or actions < 1235667895 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION follows the link < 1235667991 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :looks to me like it follows the basic idea of pattern matching in awk or sed style, but matching conditions instead of input stream? < 1235668311 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION permutes infinite lists < 1235668337 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders how to ubiquit permutations < 1235669414 0 :oerjan!unknown@unknown.invalid QUIT :"permutation = reversible operation" < 1235669577 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION takes on stupid task < 1235669829 0 :Hiato!n=1@dsl-245-24-250.telkomadsl.co.za JOIN :#esoteric < 1235670558 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, what a weird spam < 1235670568 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Subject: ?spam? [Icfpc08] haemaatocrit postmarked stiffer basswood < 1235670569 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Date: Thu, 26 Feb 2009 17:45:42 +0000 < 1235670572 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :culling suubtilisers retranslated fiction < 1235670585 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :"suubtilisers" isn't even a word... < 1235670589 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::DD < 1235670591 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and haemaatocrit is somewhat suspicious < 1235670598 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that's all that the messsage is < 1235670601 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :apart from the mailing list footer < 1235670702 0 :ShakespeareFan00!unknown@unknown.invalid PART #esoteric :? < 1235671200 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I have seen spam looking like the commit mails sourceforge sends... same formatting < 1235671209 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why? < 1235671224 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no idea < 1235671247 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :however it would be closer to the type of mail I actually get < 1235671255 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :almost only mailing lists < 1235671269 0 :sebbu!unknown@unknown.invalid QUIT :"@+" < 1235671353 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :this makes it easy to find spam btw.... Almost all non-spam I get would match this regex (for subject line): ^(Re: )*\[[-a-zA-z]+\] < 1235671445 0 :Azstal!n=asztal@cpc3-stkn2-0-0-cust528.midd.cable.ntl.com JOIN :#esoteric < 1235672342 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so, guys < 1235672356 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :do you think passing around 40 bits will be efficient. < 1235672368 0 :sebbu!n=sebbu@ADijon-152-1-82-73.w81-49.abo.wanadoo.fr JOIN :#esoteric < 1235672480 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: on a 64-bit system, probably < 1235672491 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :32-bit. < 1235672497 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :on a 64 bit system, 72 bits. < 1235672525 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(thinking about passing around struct{char tag; void *data;} to have tagged pointers without losing address space) < 1235672659 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :how many tag bits do you actually need? < 1235672728 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: the usual trick exploits the fact that all pointers are even < 1235672736 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :except that's bullshit < 1235672739 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that only gives you one tag bit < 1235672744 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :since ... pointers are not always even... < 1235672750 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: well, it depends on the processor and what you're allocating < 1235672755 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Asztal: well, char is the smallest type C will give you < 1235672757 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's normally easy to /make/ all pointers even < 1235672799 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: and that halves the addressing space < 1235672800 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :unacceptable < 1235672829 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :are you allocating lots of one-byte objects on the heap? < 1235672902 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1235672907 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but I don't want to put limits like that < 1235672933 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wonder why % texi2html --nomenu --nonumber --split=section r5rs.txi is taking so long < 1235673255 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I guess passing around anything bigger than a machine word is bad? < 1235673263 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, if you're going for speed < 1235673275 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it generally takes a length of time proportional to the number of machine words you're using < 1235673287 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and substantially more if you don't have enough free registers to hold the whole thing < 1235673353 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I guess only being able to address 9223372036854775808 bytes on a 64-bit machine is okay :-D < 1235673393 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: hm, so passing around `long`s is slow? < 1235673419 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(more worrying is only being able to address 2147483647 bytes on a 32 bit machine, but I should not worry...) < 1235673423 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, well only on a 16-bit architecture < 1235673435 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, is this an OS-independent application? < 1235673437 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :who uses 32 bit machines and runs program allocating >2gb anyway... < 1235673441 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yes, hopefully. < 1235673455 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh, so longs fit in a machine word? < 1235673455 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :a useful trick to know is that all the main OSes around at the moment reserve half of the available memory addresses for their own use < 1235673461 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: on 32-bit and 64-bit, yes < 1235673467 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because long = 32 and 64 respectively < 1235673473 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :on 16-bit, a long is two machine words < 1235673483 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and on 8-bit, it's 4, but you don't get many 8-bit machines around nowadays < 1235673484 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait, on 32 bit and 64 int = long right? < 1235673487 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in C < 1235673496 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :almost < 1235673502 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :int is normally 32 on a 64-bit system < 1235673507 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because so many programs assume int = 32 < 1235673509 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh right < 1235673512 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :int /ought/ to be 64, though < 1235673517 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1235673522 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :apparently, even long's 32-bit on 64-bit Windows < 1235673526 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how can you assure memory is aligned? < 1235673531 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :malloc() doesn't let you ... use mmap? < 1235673533 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: compiler flags < 1235673538 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ew < 1235673539 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and malloc always returns aligned memory < 1235673550 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :-always- returns even? < 1235673553 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :C guaranteed? < 1235673568 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it guarantees that you can dereference any standard data type through a malloc-returned pointer < 1235673576 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err, duh < 1235673580 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, that's obvious < 1235673588 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I suppose on some processors that doesn't guarantee aligned < 1235673593 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even though it does on processors like x86 < 1235673603 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I didn't know all pointers are even on x86. Queer. < 1235673609 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the processors would either need to manage unaligned accesses, or else have a char larger than 8-bit < 1235673619 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in order for that to screw up < 1235673627 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and both are unlikely nowadays, although not impossible I suppose < 1235673651 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: This is all well and nice but I need more than 1-bit of tagging. < 1235673655 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: all pointers to ints, yes, pointers to chars can be odd for obvious reasons but not if they were obtained from malloc < 1235673673 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I was reading up on how OCaml did it last night < 1235673682 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it tagged integers vs. things more complicated than integers < 1235673688 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes that is common. < 1235673694 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the more complicated things were stored as pointers to a tag plus data < 1235673701 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, I guess I could do < 1235673704 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :tag = fixnum? < 1235673705 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and < 1235673707 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so the pointers, which were lightweight, could be moved around whilst the tags stayed constant in memory < 1235673707 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then < 1235673716 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'() could be 0 < 1235673725 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#t could be 2 < 1235673727 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#f could be 4 < 1235673737 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(since those addresses are hardly likely to be allocated) < 1235673772 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: my eventual plan is to make this compile down to efficient machine code, becoming a compiler < 1235673778 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but first I'm going to do an interp < 1235673780 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(Scheme) < 1235673813 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : a useful trick to know is that all the main OSes around at the moment reserve half of the available memory addresses for their own use <--- you can free up another bit if you find out /which/ half < 1235673828 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :what about using the range of [0..256] for #\a constants? < 1235673828 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and note that half of all addresses != half of memory, generally speaking < 1235673844 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: finding out which half is presumably not very easy to do in code... < 1235673855 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :one slight problem is that windows XP can be made to reserve only 1GB for itself ;) < 1235673878 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Asztal: well, it'd be (map(4+ . <<1, (0...256))) < 1235673879 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that is < 1235673894 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :er I said that wrong < 1235673894 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but < 1235673900 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#\NUL would be 6 < 1235673929 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#\(255, I forget what char it is) would be 514 < 1235673956 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Asztal: except < 1235673958 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm doing unicode < 1235673958 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1235673968 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :you could even have 16-bit exact integers, if you didn't mind wasting a bit more ... oh < 1235674045 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :really {char tag; void *data} would be perfect, if only it were efficient < 1235674555 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION recurs 4294967295 times. < 1235674661 0 :kar8nga!n=kar8nga@m-187.vc-graz.ac.at JOIN :#esoteric < 1235676913 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"When was the last time you saw a 1600-line C program with only 25 assignment statements?" < 1235676918 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I should write one. < 1235676968 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I've written C programs with no statements at all... < 1235676979 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1235677042 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :apart from flow control, you can do anything you like in declarations < 1235677095 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's cheating < 1235677275 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :surely there was at least one statement < 1235677454 0 :grrlfawkes!i=grrlfawk@gateway/gpg-tor/key-0x9C8DFD85 JOIN :#esoteric < 1235677466 0 :grrlfawkes!unknown@unknown.invalid PART #esoteric :? < 1235677519 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Can't or Dust? < 1235677542 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: nope < 1235677551 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what did main() look like? < 1235677561 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: a function call, IIRC < 1235677578 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :int main(void) {int x = (f(), exit(0));} was the general gist of it < 1235677583 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1235677590 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :int main(void) {int x = (f(), exit(0), 0);} < 1235677593 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to get the data type right < 1235677635 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :aren't variable declarations like that also statements? < 1235677644 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nope, they're declarations < 1235677645 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks about a compiler language < 1235677646 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err < 1235677649 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can mix them with other declarations < 1235677652 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a compiler language that does formal semantics, that is < 1235677654 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but not inside statements, except in C9 < 1235677656 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*c99 < 1235677656 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and yet does efficient machine code < 1235677658 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hrm < 1235677670 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it'll have to be _imperative_ formal semantics :P < 1235678170 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ehird: hoare logic? :P < 1235678298 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://pastie.org/401316.txt?key=dqcm5fjjhuynhxrvj9nwq < 1235678304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :example of what I imagine it to be like < 1235678556 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://pastie.org/401324.txt?key=axr1a9azdlzsjawzet8w compiler output from that, with some tweaks to , due to my original errors < 1235678578 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :should be relatively trivial to make into asm < 1235678763 0 :olsner!n=salparot@h-60-96.A163.priv.bahnhof.se JOIN :#esoteric < 1235679085 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :guys < 1235679090 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :go into #haskell, immediately < 1235679093 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and listen to this yohan kid < 1235679105 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why < 1235679107 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what is he saying < 1235679107 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :dont say anything < 1235679108 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :just listen < 1235679114 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :tell me < 1235679121 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh. < 1235679127 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :he .. < 1235679136 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :he thinks copy(a,b) { a=b; } should be valid haskell < 1235679145 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and that you need to be able to "copy stuff" in order to be TC < 1235679155 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :he's trolling < 1235679155 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: just read the logs < 1235679156 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :he's a troll < 1235679162 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :and people know he's trolling < 1235679165 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :so no harm < 1235679258 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : Im writing my master thesis about why imperative programming languages are fast < 1235679275 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :he could just be a dumb coder < 1235679278 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :ehird: you are boring :( < 1235679280 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :unlikely < 1235679284 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i mean, he's getting a masters < 1235679302 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: he's doing a masters with haskell at chalmers < 1235679311 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :he's also a far better troll than ehird < 1235679320 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm not a literal troll. < 1235679326 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I troll people by getting them to think I'm a troll and being annoying. < 1235679335 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This annoys lament more than a real troll as you see. < 1235679378 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[shortly after 'atm? ass to mouth'] < 1235679379 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : ASM? Ass to mouth? < 1235679579 0 :Hiato!unknown@unknown.invalid QUIT :"Leaving." < 1235679631 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[20:19:19] jkup: python, is that like an include file? < 1235679634 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1235679968 0 :ehird!unknown@unknown.invalid QUIT :"Caught sigterm, terminating..." < 1235679983 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :! < 1235680997 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::'( < 1235681196 0 :k2!n=kar8nga@e-145.vc-graz.ac.at JOIN :#esoteric < 1235681215 0 :kar8nga!unknown@unknown.invalid QUIT :Nick collision from services. < 1235681218 0 :k2!unknown@unknown.invalid NICK :kar8nga < 1235682345 0 :kar8nga!unknown@unknown.invalid QUIT :Read error: 145 (Connection timed out) < 1235683988 0 :ehird!n=ehird@208.78.103.223 JOIN :#esoteric < 1235684998 0 :jix!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1235685088 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i == true swap [] if < 1235685090 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^ code I wrote < 1235685094 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :who wannsa figure out how it works < 1235685102 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :given < 1235685103 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i : 'R ('R -- 'S) -- 'S < 1235685103 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :== : 'R 'a 'b -- 'R bool < 1235685103 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :true : 'R -- 'R bool < 1235685103 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :swap : 'R 'a 'b -- 'R 'b 'a < 1235685103 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[] : 'R -- 'R < 1235685105 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if : 'R bool ('R -- 'T) ('R -- 'T) -- 'T < 1235685107 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i wrote it ages ago < 1235685109 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so I don't know how it works :D < 1235685121 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err, [] would technicaly be 'R -- 'R ('S -- 'S) < 1235685700 0 :MigoMipo!unknown@unknown.invalid QUIT :"QuitIRCServerException: MigoMipo disconnected from IRC Server" < 1235685772 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :Remote closed the connection < 1235685851 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote closed the connection < 1235685999 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :looks to me like [] evaluates, and code is just pushed on stack < 1235686009 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but i guess if would need to be special. < 1235686071 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err... "i == true swap []" => "i true ==" on stack, i guess the if wouldn't actually make any sense, as you're not doing anything. < 1235686076 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so forget i said anything. < 1235686114 0 :impomatic!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1235686570 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: no < 1235686573 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i is 'call' < 1235686583 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and [] is the empty quotation < 1235687988 0 :olsner!unknown@unknown.invalid QUIT :"Leaving" < 1235688533 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[ehird:~] % port installed|grep xorg-|awk '{print $1}'|xargs sudo port uninstall < 1235688535 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Unix is fun. < 1235688643 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :grah < 1235688662 0 :ehird!unknown@unknown.invalid TOPIC #esoteric :Don't use rafb.net for pasting because they delete pastes. Think of the log-readers. Logs: http://tunes.org/~nef/logs/esoteric/ < 1235688677 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hulk smash < 1235688777 0 :asdasd!n=abc@91.105.87.223 JOIN :#esoteric < 1235688782 0 :Dewi!n=dewi@203-217-46-44.dyn.iinet.net.au JOIN :#esoteric < 1235688784 0 :asdasd!unknown@unknown.invalid PRIVMSG #esoteric :fuuuuuuuuuuuck Your have been using Linkinus for more than 15 days. If you like Linkinus, please purchase it for unrestricted use! < 1235688872 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wtf, it's shareware? < 1235688917 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Seeing how it says so on the site, I find myself unsurprised :P < 1235689490 0 :ehird!unknown@unknown.invalid PART #esoteric :? < 1235689493 0 :ehird!n=ehird@208.78.103.223 JOIN :#esoteric < 1235689508 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how many people alive? when I disconnect, please say something in the interim. < 1235689517 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :disconnected... NOW < 1235689520 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm alive, just not saying anything < 1235689586 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, thanks ais523, can you PART/JOIN in 10 seconds? :) < 1235689594 0 :ais523!unknown@unknown.invalid PART #esoteric :? < 1235689595 0 :ais523!n=ais523@92-236-187-64.cable.ubr08.king.blueyonder.co.uk JOIN :#esoteric < 1235689607 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not sure if that was 10 seconds < 1235689678 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :damn, miau doesn't datestamp joins. does parts, though < 1235689707 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523 -- final thing, how about a NOTICE to this channel? < 1235689712 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1235689713 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :when < 1235689714 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :? < 1235689783 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Thanks ais523 < 1235689895 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523 can you say something in 10 seconds? thanks < 1235689927 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :adjsljdlasjd < 1235689930 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :agh < 1235689931 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :too late < 1235689939 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :try again please? < 1235689957 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, I'm going home < 1235689959 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sorry about that < 1235689961 0 :ais523!unknown@unknown.invalid QUIT : < 1235689984 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heh nice timing < 1235690115 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you alive? < 1235690160 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, BRAAAAINS! < 1235690189 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, night < 1235690206 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :grah. < 1235690413 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :comex: ping < 1235690810 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's not annoying < 1235690828 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I go for a compromise: < 1235690830 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's buttoing < 1235690854 0 :Dewi!unknown@unknown.invalid QUIT :"bbs" < 1235690857 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :stop toeing my butt! < 1235690860 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1235690862 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's so delicious < 1235690866 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-| < 1235690908 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i guess someone should put a notice in my notice now. < 1235690918 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi xzibit < 1235690939 0 :Slereah!n=fff@ANantes-259-1-78-243.w92-135.abo.wanadoo.fr)- /notice #esoteric Yo dawg I put a notice in your notice so you can notice while you notice NOTICE #esoteric :fff@ANantes-259-1-78-243.w92-135.abo.wanadoo.fr)- /notice #esoteric Yo dawg I put a notice in your notice so you can notice while you notice < 1235690964 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :nice touch < 1235690970 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :/notice #esoteric < 1235690971 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh fuck < 1235690972 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1235691039 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :/nickserv password ohshitwhoops < 1235691103 0 :asdasd!unknown@unknown.invalid QUIT :Remote closed the connection < 1235691151 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :GregorR: are you a magic cowboy < 1235691201 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well that's pretty okay ;=) < 1235691211 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pretty okay indeed < 1235691216 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :;============================================================8D) < 1235691372 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :umm < 1235691375 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :my brain is tickling < 1235691384 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a magical butt on a tree < 1235691384 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :feels weird. < 1235691388 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :8===PEEEEEEEEEEEEEEEEEEEEEEEEEEEENIS===D < 1235691398 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :weenis