< 1276041644 0 :coppro!~coppro@unaffiliated/coppro JOIN :#esoteric < 1276042476 0 :poiuy_qwert!unknown@unknown.invalid QUIT :Quit: Leaving < 1276042855 0 :poiuy_qwert!~poiuy_qwe@bas5-toronto47-1088893966.dsl.bell.ca JOIN :#esoteric < 1276043096 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1276043703 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :What's great about Python < 1276043703 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :is the documentation, and the ease of programming. < 1276043726 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the features are lacking, however. And there's some odd things it doesn't do that could be better. < 1276043746 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :Jython and IronPython are better for portability. < 1276043760 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :basically Java bytecode and .NET < 1276044038 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :!python < 1276044040 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :,python < 1276044054 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you know... there should almost be a bot to handle bots. < 1276044094 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :just MSG them with the username and the command. < 1276044131 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and it would give them unique names and help keep track of the symbols they use and all that. < 1276044153 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :or just unify it. < 1276044189 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and assign bots individual commands. :) < 1276044195 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so we could just quickly write a command bot. < 1276044269 0 :jabb!unknown@unknown.invalid QUIT :Quit: Page closed < 1276044329 0 :MizardX-!~MizardX@unaffiliated/mizardx JOIN :#esoteric < 1276044332 0 :MizardX!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1276044356 0 :MizardX-!unknown@unknown.invalid NICK :MizardX < 1276044554 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :hmmm... anybody want to make a gamebot? < 1276044565 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :put each on a seperate channel. < 1276044594 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :awesome, I'm going to Montreal! < 1276044600 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...sweet. < 1276044610 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is "based" in Georgia. :) < 1276044637 0 :coppro!unknown@unknown.invalid QUIT :Remote host closed the connection < 1276044662 0 :Oranjer!unknown@unknown.invalid PART #esoteric :? < 1276044664 0 :coppro!~coppro@unaffiliated/coppro JOIN :#esoteric < 1276044682 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I was thinking it would actually be easier just to make the bot a self-hosting chat-room for all parties involved. < 1276044695 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :with commands. < 1276044698 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :for talking. < 1276044711 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you could even set up a text-based adventure engine. < 1276044723 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :ACTION doesn't know how this esoteric... but he feels like programming something. < 1276044737 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :could easily make some interpreters for it too. < 1276044927 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :!haskell let test = 2 < 1276044934 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :!haskell print test < 1276044954 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :to make it esoteric, just prove it is/isn't Turing-Complete < 1276044964 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...aha < 1276044969 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :a turing complete IRC bot. < 1276044977 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :scripting interface? :) < 1276044990 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :/esoteric/ IRC bot scripting interface? < 1276044997 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :sounds good to me. < 1276045169 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :hmmm... how about it controls the state of two infinite arrays and a automata cell-grid with two ends. < 1276045227 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the arrays point contain natural numbers pointing to a coordinate on the cell, in either polar or cartesian coordinates. < 1276045238 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : but it's not as impressive as AnMaster (CFunge) and Deewiant (CCBI) < 1276045240 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm? < 1276045246 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION reads up < 1276045326 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :ACTION has a wide variety of impressive accomplishments. .... < 1276045378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh btw I realised I could use my Lego IR remote as a computer remote if I wanted to < 1276045402 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :after all I have can get the messages with the lego usb IR tower thingy < 1276045407 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that's awesome. < 1276045416 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I might make one out of an Arduino < 1276045425 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that I have lying around. < 1276045428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet, but fairly useless since I can't think of anything to control on the PC < 1276045429 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :currently doing nothing. < 1276045436 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I'm within reach of it all the time anyway < 1276045441 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and I use it for the lego thing < 1276045448 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: speaker volume from far away for a bedroom desktop or what have you. < 1276045459 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet, bedroom != computer room < 1276045462 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :ah. < 1276045462 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bedroom is very small < 1276045463 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also < 1276045468 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I use headphones when listening < 1276045473 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :same here... but it's also my computer room. < 1276045476 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and my desk chair is *very* comfy < 1276045490 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I need a comfy chair < 1276045494 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I sit on my bed. :) < 1276045508 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it has 4 levers and one wheel thingy < 1276045510 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1276045516 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :5 wheel thingies < 1276045519 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :forgot those for the arm rests < 1276045532 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so yeah I wonder how polar coordinates would effect programming logic < 1276045545 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the first one is to set friction in the tilting < 1276045553 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the other are various armrest settings < 1276045564 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :idea: add motors then use the remote for that < 1276045565 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1276045574 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nah I don't want to void warranty < 1276045590 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :if the two arrays are the polar coordinates... what would the automata represent? < 1276045673 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you know, just to learn Ruby < 1276045679 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I might write my bot in Ruby. < 1276045682 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that might be esoteric. < 1276045689 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric ::3 < 1276045699 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1276045736 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :dynamic languages are good for bots because they're quick to write. < 1276045746 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet, yeah like bash < 1276045794 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet, in case you are now all confused about that comment, I wrote: https://launchpad.net/envbot < 1276045884 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :nice. < 1276045888 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I don't know bash very well at all. < 1276045902 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I might use Perl instead... good idea or bad? < 1276045910 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :ACTION should learn Perl... no way to do it just by reading. < 1276046508 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :..idea. < 1276046533 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :a virtual OS so that we can hack it and make esoteric system designs. < 1276046544 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :shell UI < 1276046771 0 :Rugxulo!~rugxulo@adsl-065-013-115-246.sip.mob.bellsouth.net JOIN :#esoteric < 1276047254 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :what's a virtual os? < 1276047288 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :VM OS essentially. < 1276047299 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you host it on a virtual machine < 1276047350 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :so for a custom cpu? < 1276047369 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :No < 1276047374 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :well... a virtual cpu < 1276047396 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the virtual OS can be run on any physical machine that can host the software. < 1276047423 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :why not use x86, then it can be run native < 1276047435 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :or virtual < 1276047443 0 :Oranjer!~HP_Admini@adsl-243-205-116.cae.bellsouth.net JOIN :#esoteric < 1276047448 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that significantly increases the amount of work you have to do supporting drivers. < 1276047491 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :depends on if you use the bios < 1276047550 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :you know tcl is a pretty good scripting language. < 1276047551 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :the only reason I bring this up is that it is extremely satisfying to put in a floppy or cd and boot your os without having to run it on a virtual machine < 1276047564 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I think I'd prefer it over bash as a system-wide scripting language. < 1276047577 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :calamari: I lack the experience unfortunately. < 1276047582 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but would love to learn it. < 1276047624 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :well assuming that your os isn't trying to do anything groundbreaking with hardware (text displays, etc) it's not too bad really < 1276047657 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...it would be. < 1276047657 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1276047662 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I'd want text display. < 1276047667 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :nothing more than that reall. < 1276047667 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :y < 1276047670 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :sorry that was badly written < 1276047675 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :oooh < 1276047676 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I see. < 1276047681 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :text displays were in the feasible list. < 1276047687 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :I meant that with the bios you don't have advanced features < 1276047698 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but it's easier to program? < 1276047703 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :is it portable? < 1276047730 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :it'll run under qemu, if that's what you are asking < 1276047745 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :and many many real machines with a pc bios < 1276047780 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :I've written BOS, a BF-based "os" < 1276047796 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :used assembly language and fit it into a single 512-byte floppy sector < 1276047828 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :....sweet < 1276047842 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I'd be willing to work on an OS project, just to get the hang of it. < 1276047845 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :before I designed my own. < 1276047868 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :well that is again why I brought this up < 1276047906 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :in the past I've discovered that my OS designs lack from any real experience with hardware. < 1276047916 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :in college I took an os course, and we used a proprietary virtual machine to write our os.. at the end of the semester we had something basically to throw away and never use again < 1276047917 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :ACTION started on scripting languages like Python, and then worked down. < 1276047940 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :couldn't boot it.. couldn't run any programs on it < 1276047945 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...damn. < 1276047949 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :extremely unsatisfying < 1276047953 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :yeah. < 1276047975 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :when I get more disk space I'd love to have a dual-boot OS of my own or partial creation. :D < 1276047994 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :or a live CD / floppy < 1276048007 0 :coppro!unknown@unknown.invalid QUIT :Remote host closed the connection < 1276048012 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :there have been many false starts at ESO (the esoteric operating system) < 1276048023 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :never got past very basic design though < 1276048026 0 :Halph!~coppro@unaffiliated/coppro JOIN :#esoteric < 1276048039 0 :Halph!unknown@unknown.invalid NICK :coppro < 1276048054 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :that dates back to the mailing list days < 1276048156 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :You probably need to start basic < 1276048158 0 :ski!unknown@unknown.invalid QUIT :Remote host closed the connection < 1276048159 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and then add the esoteric in < 1276048162 0 :ski!~slj@c-0712e055.1149-1-64736c10.cust.bredbandsbolaget.se JOIN :#esoteric < 1276048167 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :and not try to add the esoteric into the early design. < 1276048191 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :that's exactly right < 1276048208 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :and probably why the projects always failed < 1276048264 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that's what tends to happen with most OS brainstorms I've ever had < 1276048300 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I'd actually like to learn assembly programming. < 1276048336 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :board.flatassembler.net < 1276048342 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :dive right in < 1276048359 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :if that doesn't help, nothing will < 1276048464 0 :ski!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1276048529 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :ACTION bookmarks. < 1276048554 0 :ski!~slj@c-0712e055.1149-1-64736c10.cust.bredbandsbolaget.se JOIN :#esoteric < 1276048556 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :calamari: so do you want to put some work into designing a basic OS and I could do some gruntwork? < 1276048594 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :http://www.dex4u.com/ < 1276048614 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :http://www.menuetos.net/ < 1276048624 0 :augur!~augur@96.231.217.164 JOIN :#esoteric < 1276048640 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :http://sites.google.com/site/octaviovegafernandez/octaos/ < 1276048650 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :all written in FASM < 1276048687 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :(hmmm, download seems down on latter, but I know it's on www.sac.sk , so it's no biggie) < 1276048809 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :I'd probably use nasm < 1276048855 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :FASM needs no linker, self-hosting, multiple OS format support, etc. < 1276048860 0 :ski!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1276048876 0 :ski!~slj@c-0712e055.1149-1-64736c10.cust.bredbandsbolaget.se JOIN :#esoteric < 1276048894 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :oh it's open source too.. okay cool < 1276049094 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :yup, plus faster than NASM < 1276049331 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :I used nasm for mine, so a linker isn't really required < 1276049357 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :(just fyi) < 1276049565 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :so I've got to go soon < 1276049576 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :but does anyone want to team up on a prototype OS? < 1276049610 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I intend to contribute no design decisions until I gather more experience... so that should make things faster. < 1276049682 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :sure but I don't know how much help I'd be if you are trying to make it elegant < 1276049695 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :elegant? Is that possible? < 1276049701 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :maybe later on. < 1276049723 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the core guys should just be simple and fast. < 1276049726 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :*guts < 1276049730 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :well all I'm saying is that my design decisions wouldn't necessarily be any better than yours and they could be worse < 1276049774 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :ask on FASM's forum, lots of hackers there < 1276049776 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :the class I took wasn't realistic in any way < 1276049816 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :I could definitely make something that boots < 1276049850 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :calamari: no they'd be better because I know absolutely nothing about assembler or how OSes are programmed. < 1276049861 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :all I have is a basic understanding of hardware... nothing in detail. < 1276049946 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :one thing about hard drives.. the bios won't be able to use the whole thing, and as far as real drivers I am no help < 1276049987 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :but it'll definitely be fine for smallish drives and partitions < 1276050009 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :that's fine. < 1276050029 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :is there any way it can be designs so that drivers can be done after the fact? < 1276050039 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :or does that require a completely different design? < 1276050040 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :I've also never learned much about protected mode programming, so it'd be running in real mode < 1276050053 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION suggests unreal instead < 1276050054 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :although I have some books and would be willing to experiment < 1276050073 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :er, on second thought, if you want to use emulators, don't do that ;-) < 1276050083 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :lol yeah < 1276050106 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :if I remember what unreal mode is, you are peeking into extended memory from real mode, right? < 1276050127 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :by exploiting that ffff:ffff is larger than 640k < 1276050129 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :basically switch to pmode, set the selectors to 4G, switch back, voila, all RAM is available < 1276050137 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1276050151 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :who knows, qemu might handle it < 1276050161 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :FASM itself (DOS version) can run in either unreal or under DPMI < 1276050175 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :no, I think most emulators don't handle it correctly, hence why he eventually added DPMI < 1276050202 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :well I have a book that explains how to switch into protected mode, I just never needed it < 1276050220 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :it'd be fun to learn it < 1276050229 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :doubt it :-/ < 1276050256 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :it's quite annoying (not that I really have messed with it) < 1276050329 0 :JodaZ_!~JodaZ@ns302312.ovh.net JOIN :#esoteric < 1276050355 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 245 seconds < 1276050357 0 :JodaZ!unknown@unknown.invalid QUIT :Ping timeout: 258 seconds < 1276050389 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :come on youre an esoteric language fan.. annoying is good < 1276050425 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :only in moderation ;-) < 1276050451 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :if tanenbaums minix book weren't so expensive, I'd love to get a copy of that < 1276050458 0 :CakeProphet!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1276050459 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :^ul ((ANNOYING IS GOOD)S:^):^ < 1276050459 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :ANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNOYING IS GOODANNO ...too much output! < 1276050518 0 :CakeProphet!~adam@h122.52.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1276050529 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also, testing. < 1276050537 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm... < 1276050540 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :back.. < 1276050608 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :cool price has gone down! < 1276050688 0 :Rugxulo!unknown@unknown.invalid PRIVMSG #esoteric :bbl, food ... < 1276050691 0 :SevenInchBread!~adam@h43.56.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1276050696 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :bubbly food < 1276050758 0 :SevenInchBread!unknown@unknown.invalid PRIVMSG #esoteric :...bleh < 1276050802 0 :CakeProphet!unknown@unknown.invalid QUIT :Ping timeout: 248 seconds < 1276050949 0 :CakeProphet!~adam@h183.62.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1276050952 0 :CakeProphet!unknown@unknown.invalid QUIT :Changing host < 1276050952 0 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1276050960 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :...wireless. < 1276050979 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no longer hanging by a thread < 1276051034 0 :SevenInchBread!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds < 1276051251 0 :SevenInchBread!~adam@h157.6.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1276051257 0 :CakeProphet!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1276051386 0 :Rugxulo!unknown@unknown.invalid PART #esoteric :? < 1276051550 0 :SevenInchBread!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1276052601 0 :CakeProphet!~adam@h70.45.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1276053348 0 :Adrian^L_!~adrian@phalse.2600.COM JOIN :#esoteric < 1276054103 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm synchronicity < 1276055285 0 :Gregor!~Gregor@user980.newres.utoronto.ca JOIN :#esoteric < 1276056424 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: you ever messed with writing linux filesystem drivers (non-fuse)? < 1276056445 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Only FUSE :P < 1276056475 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :I wish fuse were more solid < 1276056498 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :crashes constantly.. can't rely on it for a rootfs < 1276056761 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I've used it for a root FS. < 1276056787 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: so is that why HackEgo keeps crashing all the time? *ducks* < 1276056790 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :you didn't get a bunch of endpoint disconnected crap < 1276056810 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: I really wish I KNEW why it keeps crashing X_X < 1276056816 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :`echo test < 1276056826 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :calamari: I didn't use it super-extensively, but no. < 1276056828 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :test < 1276056831 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :that's cool < 1276056832 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh and egobot is not here < 1276056846 0 :HackEgo!unknown@unknown.invalid QUIT :Remote host closed the connection < 1276056849 0 :HackEgo!~HackEgo@codu.xen.prgmr.com JOIN :#esoteric < 1276056851 0 :EgoBot!~EgoBot@codu.xen.prgmr.com JOIN :#esoteric < 1276056860 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :I guess I suck then.. what else is new? :) < 1276056877 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :calamari: I had this crazy dynamic unionfs that would union together directory structures based on environment variables in the process reading the FS. < 1276056915 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It was stable but crazy-slow. < 1276056915 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :`addquote we'd care about a turing-complete pencil < 1276056918 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :178| we'd care about a turing-complete pencil < 1276056924 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :I think it'd be cool to provide a virtual fat32 filesystem on the fly < 1276056938 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I would be absolutely shocked if that hasn't already been done. < 1276056957 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Ohwait ... what do you mean by "virtual" in this context :P < 1276056958 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :that way android can have his lame fat32 and I can have a better fs underneath < 1276056986 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Oh, you want to virtualize the limitations of FAT32 essentially? < 1276057037 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :well my microsd cards keep failing < 1276057077 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :and of course every time it fails I lose the whole damn thing.. so I was thinking I could have a more robust filesystem underneath < 1276057101 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :so I guess it's really two filesystems I'd need to design < 1276057128 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :you could use ext2 and install the filesystem in Windows < 1276057136 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :the fake fat32 one, and another one with redundant metadata < 1276057187 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :coppro: ? < 1276057211 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :although I have to say scandisk didn't do that bad a job on this last crash < 1276057212 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :Windows does have installable file systems, contrary to popular belief < 1276057225 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :windows isn't even a factor here < 1276057228 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1276057235 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :why do you need FAT32 then? < 1276057246 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :because android apps assume fat32 < 1276057256 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :huh < 1276057283 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :is that in the spec? < 1276057318 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :not sure, but even when you put in an sdcard if it's not fat32 it tells you it needs to format it < 1276057328 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :yurk < 1276057338 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :maybe it'd be easier just to fix android < 1276057426 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :I think it'd be cool for a filesystem to expose its metadata to the filesystem too.. and all metadata should be ascii < 1276057556 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :actually.. this has been done a long time ago, in the opposite direction < 1276057583 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :yeah, fixing Android seems easier; is your phone locked so that you can't change the installed version? < 1276057584 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :you could layer a posix-compatible filesystem on top of fat < 1276057592 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :nope I'm good that way < 1276057614 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :oh what was it called.. totally obsolete tho, I think it was last in 2.4 < 1276057643 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :umsdos < 1276057668 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That should be reimplemented in FUSE. < 1276057672 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :You could make it more general even. < 1276057684 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Just "assume 8.3 and nothing else, give me a real FS" < 1276057720 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :yeah so I'm really doing the reverse of umsdos < 1276057748 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :from a filesystem perspective < 1276058029 0 :augur!~augur@96.231.217.164 JOIN :#esoteric < 1276058755 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 245 seconds < 1276059294 0 :oerjan!unknown@unknown.invalid QUIT :Quit: Good night < 1276060064 0 :augur!~augur@96.231.217.164 JOIN :#esoteric < 1276060160 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :hello all < 1276060641 0 :lament!~lament@S0106002312fa554a.vc.shawcable.net JOIN :#esoteric < 1276061541 0 :lament!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds < 1276062569 0 :Vegabondmx!unknown@unknown.invalid QUIT :Quit: Vegabondmx < 1276062919 0 :SevenInchBread!~adam@h191.51.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1276062977 0 :CakeProphet!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1276063576 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :hi augur < 1276063592 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :hey you < 1276063594 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :sup < 1276063968 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :not much < 1276064143 0 :calamari!unknown@unknown.invalid QUIT :Quit: Leaving < 1276064341 0 :lament!~lament@S0106002312fa554a.vc.shawcable.net JOIN :#esoteric < 1276065480 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 245 seconds < 1276066106 0 :relet!unknown@unknown.invalid QUIT :Quit: Leaving. < 1276066693 0 :FireFly!~firefly@unaffiliated/firefly JOIN :#esoteric < 1276066785 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1276066909 0 :tombom!tombom@wikipedia/Tombomp JOIN :#esoteric < 1276067309 0 :relet!~hirtho@159.162.68.87 JOIN :#esoteric < 1276067367 0 :Oranjer!unknown@unknown.invalid PART #esoteric :? < 1276067474 0 :MigoMipo!~John@84-217-13-205.tn.glocalnet.net JOIN :#esoteric < 1276067817 0 :lament!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1276068981 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1276068996 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1276069205 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1276069571 0 :Rugxulo!~rugxulo@adsl-065-013-115-246.sip.mob.bellsouth.net JOIN :#esoteric < 1276069896 0 :tombom!unknown@unknown.invalid QUIT :Quit: Leaving < 1276070399 0 :clog!unknown@unknown.invalid QUIT :ended < 1276070400 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1276071556 0 :Sgeo_!~Sgeo@ool-18bf618a.dyn.optonline.net JOIN :#esoteric < 1276071659 0 :Sgeo!unknown@unknown.invalid QUIT :Ping timeout: 265 seconds < 1276071826 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1276072057 0 :coppro!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1276072214 0 :MizardX-!~MizardX@unaffiliated/mizardx JOIN :#esoteric < 1276072470 0 :MizardX!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1276072481 0 :MizardX-!unknown@unknown.invalid NICK :MizardX < 1276072626 0 :lament!~lament@S0106002312fa554a.vc.shawcable.net JOIN :#esoteric < 1276073902 0 :FireFly!unknown@unknown.invalid QUIT :Quit: swatted to death < 1276073902 0 :MigoMipo!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1276073982 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1276073993 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1276074562 0 :Rugxulo!unknown@unknown.invalid PART #esoteric :? < 1276075238 0 :lament!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1276075950 0 :mycrofti1!unknown@unknown.invalid NICK :mycroftiv < 1276078812 0 :Gracenotes!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1276080036 0 :SevenInchBread!unknown@unknown.invalid NICK :CakeProphet < 1276080041 0 :CakeProphet!unknown@unknown.invalid QUIT :Changing host < 1276080041 0 :CakeProphet!~adam@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1276080885 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :whos got a hankerin' to do a little logic puzzle < 1276080909 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1276080921 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1276081033 0 :yiyus!unknown@unknown.invalid PRIVMSG #esoteric :augur: it depends on your definition of little < 1276081059 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its not a huge problem, per se, nor does it require an actual solution < 1276081064 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but < 1276081081 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its logicocomputational < 1276081127 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :suppose you have some list < 1276081135 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :[x,y,z,...] < 1276081167 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :and you have some expression which is, in some unknown way, evaluated using that list < 1276081179 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :the expression is like so: < 1276081248 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :f(ord(g)), where f and g are unary functions that return booleans (e.g. "prime", "even", "red", whatever) < 1276081280 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :and ord is a higher order function that tells you some ordinality. e.g. "first", "second", etc. < 1276081298 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so for instance maybe the list is [0,1,2,3,4,...] and the expression is prime(first(odd)) < 1276081310 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :that is, "the first number that is odd is prime" < 1276081322 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :which in this case is not true, because 1 is odd but not prime < 1276081339 0 :yiyus!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1276081395 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :now suppose we have some other ordinal, first2 < 1276081464 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :such that f(first2(g)) means that the 5th element of the list is the first element for which both f _and_ g are true < 1276081472 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :or maybe its the 10th element < 1276081491 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :or whatever. we might add in a second parameter for first2, to allow this. e.g. f(first2(5, g)) < 1276081527 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :what do first and first2 have to be defined as for this to work? < 1276081561 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :now maybe function application works differently than normal. i leave it up to you to decide the details of the programming language/formal system. meaning you can define some crazy formal system that makes use of crazy crazy ideas. i dont care. < 1276081570 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but how could you get this to work. < 1276081633 0 :yiyus!unknown@unknown.invalid PRIVMSG #esoteric :no way, the result of first2 is independent of f < 1276081665 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :well, like i said, you can use any sort of magic to make this work < 1276081675 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so it doesnt *have* to be independent of f < 1276081692 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :if you can explain what the rule is for how the non-independence works < 1276081730 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :for instance (this might not work, i dont know) < 1276081741 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :if f (and g) are continuized functions < 1276081750 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :first2(5, g) might be the continuation of f < 1276081774 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so f(first2(5, g)) is evaluated as first2(5,g)(\x -> ...) < 1276081793 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :because f passes into its continuation some uncontinuized version of f < 1276081795 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :or something < 1276081798 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :who knows < 1276081857 0 :yiyus!unknown@unknown.invalid PRIVMSG #esoteric :ok, i think i understood the problem, but i don't think i can find a solution < 1276081867 0 :yiyus!unknown@unknown.invalid PRIVMSG #esoteric :surely, not before my lunch break < 1276081893 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::0 < 1276081894 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1276081913 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :to make it even harder, and thus more interesting < 1276081993 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :can you define a single function first3 in such a way that it can infact behave in _both_ ways? that is to say, so that there is an ambiguity between whether it evaluates like first or first2 < 1276082016 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :the ambiguity arising from the underlying formalism, that is < 1276087515 0 :Gregor!unknown@unknown.invalid QUIT :Ping timeout: 252 seconds < 1276090037 0 :FireFly!~firefly@unaffiliated/firefly JOIN :#esoteric < 1276090095 0 :asiekierka!asiekierka@078088180066.elblag.vectranet.pl JOIN :#esoteric < 1276090096 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1276090109 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ugh, i need to make something for my Computers teacher < 1276090117 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :anything related to computers really < 1276090118 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and i only have 2 days < 1276090127 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :either related to computers or for computers < 1276090129 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :something awesome. < 1276091173 0 :Vegabondmx!~Vegabonds@unaffiliated/vegabondsx JOIN :#esoteric < 1276091731 0 :KingOfKarlsruhe!~nice@p5B133DC6.dip.t-dialin.net JOIN :#esoteric < 1276093754 0 :asiekierka!unknown@unknown.invalid QUIT :Ping timeout: 272 seconds < 1276093844 0 :Vegabondmx_!~Vegabonds@unaffiliated/vegabondsx JOIN :#esoteric < 1276093878 0 :Vegabondmx!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1276093879 0 :Vegabondmx_!unknown@unknown.invalid NICK :Vegabondmx < 1276094074 0 :BeholdMyGlory!~behold@unaffiliated/beholdmyglory JOIN :#esoteric < 1276094731 0 :cpressey!~CPressey@173-9-215-173-Illinois.hfc.comcastbusiness.net JOIN :#esoteric < 1276094795 0 :oerjan!~oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1276094858 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :What ho, oerjan! < 1276094939 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yo cpressey < 1276095141 0 :relet!unknown@unknown.invalid QUIT :Quit: Leaving. < 1276095219 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cpressey, hi! < 1276095225 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :was a while ago < 1276095236 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cpressey, anything happening with befunge-111? < 1276095268 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION predicts a sudden number increment < 1276095382 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1276095559 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :from some software changelog: "Bugs fixed in this release: [...] - Unsolicted crash"[sic] < 1276095571 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah, aren't all crashes? < 1276095599 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Well, some stuff I have written is intentionally rigged to crash in some cases... < 1276095642 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Ilari, oh? < 1276095643 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Not really (anything happening with Befunge-111). Maybe you're right, a simple addendum to "clarify" the 98 spec would be better. Easier, at least, and accomplish about the same thing. < 1276095664 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1276095726 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :When program is so toast that continuing would be worse than crashing, its better for it to crash. < 1276095826 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Indeed, "crash" is an interesting concept to meditate upon. < 1276096042 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :Remote host closed the connection < 1276096046 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :to crash, or not to crash, that's #"ยค11353NO CARRIER < 1276096718 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster, oerjan, hey :D < 1276096741 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :'lo < 1276096759 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :hey guys. < 1276097897 0 :relet!~thomas@c905DBF51.dhcp.bluecom.no JOIN :#esoteric < 1276098846 0 :oerjan!unknown@unknown.invalid QUIT :Quit: Later < 1276100439 0 :cal153!~cal@c-24-4-207-72.hsd1.ca.comcast.net JOIN :#esoteric < 1276101087 0 :cal153!unknown@unknown.invalid QUIT : < 1276101359 0 :lament!~lament@S0106002312fa554a.vc.shawcable.net JOIN :#esoteric < 1276102334 0 :fizzie`!unknown@unknown.invalid NICK :fizzie < 1276102349 0 :lament!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1276102696 0 :cal153!~cal@c-24-4-207-72.hsd1.ca.comcast.net JOIN :#esoteric < 1276103163 0 :cal153!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds < 1276103625 0 :tombom!tombom@wikipedia/Tombomp JOIN :#esoteric < 1276103803 0 :Gracenotes!~person@wikipedia/Gracenotes JOIN :#esoteric < 1276104785 0 :jabb!~4a73b064@gateway/web/freenode/ip.74.115.176.100 JOIN :#esoteric < 1276104841 0 :cal153!~cal@70.36.237.178 JOIN :#esoteric < 1276105191 0 :augur!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1276105214 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1276106444 0 :kar8nga!~kar8nga@jol13-1-82-66-176-74.fbx.proxad.net JOIN :#esoteric < 1276107559 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1276108528 0 :MizardX-!~MizardX@unaffiliated/mizardx JOIN :#esoteric < 1276108600 0 :MizardX!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1276108616 0 :MizardX-!unknown@unknown.invalid NICK :MizardX < 1276108653 0 :iamcal!~cal@70.36.237.178 JOIN :#esoteric < 1276108719 0 :Luyt_!unknown@unknown.invalid PART #esoteric :? < 1276108728 0 :cal153!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1276109451 0 :Phantom_Hoover!~phantomho@cpc2-belf9-2-0-cust994.2-1.cable.virginmedia.com JOIN :#esoteric < 1276110342 0 :Mathnerd314!~mathnerd3@2012hosta2.starwoodbroadband.com JOIN :#esoteric < 1276110535 0 :CakeProphet!unknown@unknown.invalid QUIT :Ping timeout: 245 seconds < 1276110745 0 :CakeProphet!~adam@h81.12.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1276111054 0 :kar8nga!unknown@unknown.invalid QUIT : < 1276111094 0 :kar8nga!~kar8nga@jol13-1-82-66-176-74.fbx.proxad.net JOIN :#esoteric < 1276112376 0 :CakeProphet!unknown@unknown.invalid QUIT :Ping timeout: 265 seconds < 1276113382 0 :CakeProphet!~adam@h86.36.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1276113805 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :aww yeah. < 1276114150 0 :MizardX!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1276114158 0 :MizardX!~MizardX@81-233-132-97-no80.tbcn.telia.com JOIN :#esoteric < 1276114161 0 :MizardX!unknown@unknown.invalid QUIT :Changing host < 1276114162 0 :MizardX!~MizardX@unaffiliated/mizardx JOIN :#esoteric < 1276118710 0 :dbc!unknown@unknown.invalid QUIT :Quit: Seeeeeya < 1276120289 0 :MosaSaur!~mosasaur@84.26.88.19 JOIN :#esoteric < 1276120367 0 :MosaSaur!unknown@unknown.invalid PRIVMSG #esoteric :do what thou wilst < 1276120503 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :I wilst. < 1276120567 0 :MosaSaur!unknown@unknown.invalid PRIVMSG #esoteric :it's the law < 1276120803 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I'm designing an imperative string-rewriting language. < 1276120805 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I know right? < 1276121035 0 :MosaSaur!unknown@unknown.invalid PRIVMSG #esoteric :can it handle quote errors < 1276121061 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I don't know yet. Should it? < 1276121096 0 :MosaSaur!unknown@unknown.invalid PRIVMSG #esoteric :what will it be used for? < 1276121134 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Probably the same thing all my languages are used for. Whatever that is. < 1276121178 0 :MosaSaur!unknown@unknown.invalid PRIVMSG #esoteric :then it probably should, just to be safe < 1276121480 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Well, it handles them in the sense that, if you insert two or more instances of the same kind of quote in the string, the behavior of reading or writing what's in between those quotes is undefined. < 1276121521 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Which is the best sense of "handle", IMO. < 1276121638 0 :MosaSaur!unknown@unknown.invalid PRIVMSG #esoteric :not exactly an L-system then < 1276121709 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :maaan < 1276121712 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :why isn't alise here < 1276121817 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :No, not another L-system. I try to invent new things. < 1276121942 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :More specifically, I try to invent languages that sound impossible, or at least highly unlikely. Kind of like MC Escher illustrations, I guess. < 1276121959 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Thus, imperative string-rewriting. < 1276121960 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :cheater99, he's in the loony bin. < 1276122121 0 :MosaSaur!unknown@unknown.invalid PRIVMSG #esoteric :so L-systems are a subset of imperative string rewriting, but you want another subset < 1276122157 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Well, I have yet to see an L-system that I would describe as "imperative". < 1276122166 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Have you? < 1276122258 0 :dbc!~daniel@130-94-161-238-dsl.hevanet.com JOIN :#esoteric < 1276122260 0 :dbc!unknown@unknown.invalid PART #esoteric :? < 1276122366 0 :MosaSaur!unknown@unknown.invalid PRIVMSG #esoteric :it's a kind of state machine < 1276122396 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :So is graph reduction. Therefore Haskell is imperative! < 1276122425 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :i know where she is < 1276122430 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :i'm asking why < 1276122561 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: At the core, I think it's because she's intelligent. < 1276122893 0 :MosaSaur!unknown@unknown.invalid PRIVMSG #esoteric :I suppose lisp is better for creating languages < 1276122985 0 :Phantom_Hoover!unknown@unknown.invalid QUIT :Quit: Leaving < 1276123485 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1276123509 0 :Oranjer!~HP_Admini@adsl-243-205-116.cae.bellsouth.net JOIN :#esoteric < 1276123929 0 :MosaSaur!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1276123940 0 :MosaSaur1!~mosasaur@84.26.88.19 JOIN :#esoteric < 1276124002 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds < 1276124294 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote host closed the connection < 1276124561 0 :oerjan!~oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1276124780 0 :Oranjer!unknown@unknown.invalid PART #esoteric :? < 1276124805 0 :MosaSaur1!unknown@unknown.invalid PART #esoteric :? < 1276125507 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1276125508 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :guys < 1276125510 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :serious question < 1276125516 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1276125522 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :writing things < 1276125523 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :i currently don't know what an AST really is < 1276125526 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :in several lines < 1276125528 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :_is_ bad < 1276125532 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(on irc) < 1276125549 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :abstract syntax tree? < 1276125557 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :how difficult would it be for me to learn what an AST is and write something that manipulates a cobol AST? < 1276125560 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1276125578 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :i used an acronym to separate out the people who don't know what it stands for, you passed the test oerjan - welcome to the next level < 1276125590 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: Did you ever diagram sentences in grade school? < 1276125602 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1276125609 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :ok i understand *that* much < 1276125611 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :but not much more. < 1276125631 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I don't think there is much more. Not very much, anyway. < 1276125634 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :i also understand it has to do with those funny expression syntax formats like what i get in, say, the python manual. < 1276125643 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it's a tree that contains the structured data of parsed code (or other language) < 1276125651 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: backus/naur form? < 1276125658 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :what form? < 1276125662 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :BNF < 1276125723 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that's most likely what that python manual uses, or some variant < 1276125731 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :i mean something like this < 1276125734 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric : if_stmt ::= "if" expression ":" suite < 1276125734 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric : ( "elif" expression ":" suite )* < 1276125734 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric : ["else" ":" suite] < 1276125738 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :sry4fld < 1276125746 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, that's an extended version of BNF. < 1276125747 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it was invented for Algol, i think, and has been used for lots of languages since < 1276125761 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1276125770 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :the plan is to convert COBOL to PHP < 1276125806 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: btw COBOL was invented _before_ BNF, i think, so it might actually be awkward to parse that way < 1276125808 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :it's like changing from one very bad thing to another, i know < 1276125813 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Learning to read BNF is useful, but not quite the same as building/using an AST, although it's not hard to relate them < 1276125813 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :but < 1276125826 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :i know how to read those things (BNF) < 1276125851 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :however there are newer standards for COBOL, so i wouldn't be surprised if they've made a BNF for it later < 1276125854 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :i got hardcore with DTD's at some point, they're basically a masochistic version of tht < 1276125862 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :*that < 1276125864 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(assuming it fits into BNF at all) < 1276125878 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :so there's this lex-pass thing for haskell < 1276125889 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :it allows manipulating PHP on ast level < 1276125904 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :An English description of an AST that goes with the BNF you posted might look like: An IfNode contains an ExprNode called "then_cond" and SuiteNode called "then_suite" and a list of ExprNodes called "elifs" and ... < 1276125908 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: yeah XML is like a language half-way turned into AST at the outset < 1276125909 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :would it make sense to extract ast from cobol, and try to convert it to the php ast? < 1276125928 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: probably < 1276125946 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :probably maybe? < 1276125947 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :So really, it's just a data structure that you define how you want, as long as it can store your parsed program in a way that makes sense for what you want to do with it. < 1276125952 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :or probably yes? < 1276125958 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :however it's not given that the ast's of cobol and php will match nicely < 1276125980 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :doesn't cobol translate to C directly < 1276125981 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :or something < 1276125991 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :and php is just a wrapper around C < 1276125997 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Eww... http://www.cs.vu.nl/grammarware/browsable/cobol/ < 1276126012 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :i hadn't written 1 line of cobol in my life < 1276126013 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: um C is much newer than COBOL. there is probably a compiler from COBOL to C though < 1276126034 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, i know, but i still heard that cobol can translate to c fairly easily < 1276126035 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(well somewhat newer, at least) < 1276126058 0 :tombom!unknown@unknown.invalid QUIT :Quit: Leaving < 1276126096 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: that may be, if cobol doesn't use any new-fangled stuff that C wasn't designed to have (and given the relative ages, it probably doesn't) < 1276126156 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :i would be surprised < 1276126243 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: php being a wrapper around C doesn't mean C translates easily to PHP though < 1276126253 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :more like the opposite, if any < 1276126268 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :of course not < 1276126284 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :but i wouldn't expect cobol to do much more than the subset of c that php can perform < 1276126292 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :however i guess php (which i don't really know) has a C-descendant syntax < 1276126293 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :it's just a shitty little lang < 1276126296 0 :FireFly!unknown@unknown.invalid QUIT :Quit: swatted to death < 1276126325 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :let's see how 99 looks in cobol < 1276126348 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :jesus http://99-bottles-of-beer.net/language-cobol-908.html < 1276126358 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: COBOL is pretty big on describing data formats, iirc (and that's one of the few things i know about COBOL) < 1276126384 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I leave you with someone else's opinion on the matter: http://sneakydave.com/wp/2009/08/12/php-itself-isnt-that-much-different-than-cobol/ < 1276126389 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Good evening. < 1276126391 0 :cpressey!unknown@unknown.invalid QUIT :Quit: Leaving. < 1276126420 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :ahahah < 1276126422 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :that was perfect < 1276126432 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, mhm < 1276126445 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, then it's like php. php is also pretty big on data formats. < 1276126477 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1276126517 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it's possible COBOL is big on describing _ancient_ formats, though < 1276126517 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :but not like < 1276126521 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :c style data formats < 1276126530 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :more like, class-based data formats < 1276126544 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :almost sorta like 'shitty version of java' data formats < 1276126610 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh well good luck < 1276126622 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :so how difficult is it to learn that ast stuff < 1276126629 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :what do i need to know? < 1276126663 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :er < 1276126726 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :expand that thought < 1276126755 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't know exactly how _i_ learned it, so... < 1276126759 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :sort of osmosis < 1276126768 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :pah < 1276126783 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :there should be tutorials for that crap on the net < 1276126784 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric ::p < 1276126807 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well an example of an interpreter implemented using it might be nice... < 1276126821 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :100% < 1276126836 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm i guess this AST stuff must be among the things mentioned in that famous "how to make compilers" book that i've never read < 1276126874 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(dragon book) < 1276126879 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :dragon book? < 1276126906 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Dragon_Book_(computer_science) < 1276127066 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AST's would be the intermediate step between the "Syntax analysis" and "Syntax-directed translation" steps in that list < 1276127107 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well ASTs would probably useful for everything after as well < 1276127232 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :thank u < 1276127235 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1276127236 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :does the AST hold data < 1276127240 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :like say string literals? < 1276127251 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :or is it just pure, data-less syntax structure? < 1276127272 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it definitely holds all the data you need for representing the code < 1276127290 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1276127295 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :so it contains the literals etc < 1276127301 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1276127306 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :cool < 1276127407 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :that's pretty cool. i'm gonna go take a shower now. < 1276127408 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :thanks for walking me through that oerjan <3 < 1276127408 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :btw, do you use vi? < 1276127408 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :i'm asking because i found out you can easily put esc on the caps lock key in gnome < 1276127409 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :which is a pleasant surprise < 1276127423 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i use (g)vim yes < 1276127435 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :never bothered to remap any keys though < 1276127497 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: SICP (which i've also not read, but it's available online) might also be good i guess. < 1276127551 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :SICP? < 1276127560 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, remap the caps lock < 1276127566 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :it'll totally change everything for you < 1276127569 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Wizard_book < 1276127572 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :caps lock is perfect < 1276127599 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :did you know esc was where tab is now on the space cadet keyboard (for which vi was developed)? < 1276127610 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :er < 1276127621 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :esc was on the space cadet keyboard where tab is now on normal keyboards < 1276127628 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :but tab is still useful, and caps is even more useful < 1276127630 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :one of the reasons why lisp/scheme is so powerful is that its syntax is so simple that it almost _is_ its own AST. < 1276127634 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :the place caps is now used to be ctrl, i think < 1276127667 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :i have no idea what it means to be your own ast < 1276127698 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: in scheme, the program is represented as a tree of nested lists < 1276127766 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(define (fac n) (if (eqv n 1) 1 (* n (fac (- n 1))))), or something like that < 1276127778 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(for making a factorial function) < 1276127803 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and that nested list essentially _is_ the AST of the function definition < 1276127851 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the lisp/scheme macro systems therefore can work directly on the AST, rewriting stuff in a structured manner. < 1276127976 0 :leBMD!~chatzilla@174-23-2-121.slkc.qwest.net JOIN :#esoteric