00:16:10 -!- xtofs has joined. 00:16:15 Hi 00:16:30 hi 00:17:02 are there any functional esoteric languages ? 00:17:09 Quite a few. 00:17:19 (Not shockingly) 00:17:25 Unlambda, Lazy K 00:17:43 like lambda calculus with full blown higer order functions closures first class environements ? 00:17:48 Iota and Jot 00:17:57 cool i look into those 00:18:06 actually those i mentioned are combinator calculus 00:20:04 i am pretty sure there are some more lambda like but i haven't paid much attention to them 00:20:04 well there is one called Lambda, should be a safe bet 00:20:15 i would like to implement something realy cool in like the minimum lines of codes :) 00:22:31 unlambda seems verry nice :) 00:22:37 good luck my languages end up so complex i never get them implemented :) 00:23:18 indeed it is 00:24:18 i have writen a language but it not realy a hard one 00:24:27 maybe i just change the syntax :) 00:25:50 who of you like postscript ? 00:26:15 postscript is not bad 00:26:43 the dictionary stack is something i had not seen before 00:27:10 not that it is that shocking but manipulate it is quite cool 00:27:28 What is it? 00:27:47 the dictionary stack ? 00:28:12 -!- BigBoom has joined. 00:28:15 the bindings of your variables and where to look them up 00:29:40 -!- hans has joined. 00:29:42 ah... 00:29:47 -!- hans has changed nick to bla. 00:29:53 -!- bla has changed nick to xtofss. 00:30:03 it's the kind of binding structure I would probably use. 00:30:09 sounds like it means dynamically scoped variables 00:30:16 -!- BigBoom has quit (Client Quit). 00:30:34 oerjan hmm not nessasarly 00:30:47 you can just keep your environment arround :) 00:31:13 say you want to evaluate a function in a specific environment you push it on and call the function 00:31:25 when its done you save it 00:32:16 but are environments passed by reference? otherwise you won't get proper closures for mutable variables 00:33:05 indeed 00:33:48 not that you have a chose but when you take a environment and pop it of its not a copy 00:34:15 or some kind of evaluation of it what that might mean :) 00:34:56 who has his own language here ? 00:35:26 * SevenInchBread raises hand 00:36:33 link ? 00:37:53 I have written one i can run on my mobile phone :) 00:38:46 i think someone mentioned something like that here once 00:38:58 hmmm... lemme find the source of one. 00:39:08 oddly enough, I have very few of the interpreters on disk. 00:39:55 http://esoteric.voxelperfect.net/wiki/User:CakeProphet has the full list... but not all of them are implemented. 00:40:31 and the only one I can find of Dupdog is in some illegible compiled Perl stuff. 00:42:11 well there is my incomplete Haskell one 00:42:21 * oerjan never finishes anything 00:42:59 I've got a broken one in Python. 00:43:07 the "original", if you will. 00:46:32 -!- xtofs has quit (Read error: 110 (Connection timed out)). 00:47:15 http://oerjan.nvg.org/esoteric/Dupdog.hs + FingerTree.hs. You can in theory use it if you can put the right functions together... 00:51:06 oh right, i _did_ finish Malbolge Unshackled. Too bad no one has written any programs in it. 00:51:49 -!- calamari has quit ("Leaving"). 00:53:46 oerjan, so... how do you optimize the duplication part? 00:53:57 you can do reverse with a flag... but what about duplicate? 00:54:45 by using the FingerTree module which implements lazily concatenated sequences 00:56:39 (it is the same as Data.Sequence, but less restricted) 00:57:10 <.< how about in Python? 00:58:59 -!- xtofss has quit (Read error: 110 (Connection timed out)). 00:59:50 i suppose you could do such a structure with some simpler kind of tree, you need duplication, push and pop at both ends 01:00:58 a simple class Concatenated(sub1,sub2) 01:01:41 and purely functional push and pop 01:02:23 a lot of optimization can be had by using specialized data structured instead of raw byte-moving 01:02:55 the main point is that most of the duplicated parts should be shared 01:04:29 actually you don't need push for Dupdog... 01:06:10 just reverse and pop 01:06:14 ..and duplicate 01:06:16 -!- fax has joined. 01:06:25 hello 01:06:45 'evening 01:08:46 so then your classes need methods popStart and popEnd that return a tuple containing the popped element and an object representing the remainder 01:09:09 and empty 01:10:00 and the Concatenated class recurses on the relevant subpart 01:14:04 oerjan, hmm... reverse lookup is hard to handle with tree concatenation 01:14:22 what reverse lookup? 01:14:44 if you use a reverse flag to signify that the source has been reversed. 01:15:21 well that is why you want both popStart and popEnd (or pop(direction)) 01:16:33 >.> but with a tree you need to recurse the entire tree to get the very last character 01:17:14 you must recurse in any case unless you use the very clever FingerTree stuff 01:17:42 i believe that works by rebalancing the tree so the ends are always shallow 01:18:13 however as i understand duplication gives a log(n) overhead anyway 01:19:01 which is the same as for lookup in a naive tree 01:20:58 as far as i am concerned that is still a big improvement over n when n is the size of an exponentially growing data structure 01:21:20 -!- SevenInchBread has quit (Read error: 104 (Connection reset by peer)). 01:21:46 -!- SevenInchBread has joined. 01:21:48 -!- nazgjunk has changed nick to na[zZz]gjunk. 01:24:46 SevenInchBread: have you found an x86 person? 01:26:46 that sounds like a painful concept 01:31:08 oerjan, I think the main rationale for using trees in memory. 01:31:11 *is 01:31:31 yep 01:32:31 ah... I know how I'll do it. 01:32:39 without using trees at all 01:32:46 ? 01:43:17 I'll show you when I finish it. 02:15:52 -!- Figs has joined. 02:16:19 oerjan, like this: http://deadbeefbabe.org/paste/4478 02:16:25 (untested dupdog interpreter) 02:19:21 ....and now with a bug fix :) 02:24:08 i don't think that works. 02:25:03 can anyone tell me a stupider title than this? 02:25:08 "Inventors turn creations into cash" 02:25:11 ... 02:25:17 NO SHIT, SHERLOCK! 02:25:24 02:25:35 i think you are popping off both ends all the time 02:25:43 me? 02:25:53 :P 02:26:14 no, SevenInchBread 02:26:17 Thutu? When did that happen? 02:26:36 And both Thubi and /// are mentioned in the first paragraph! I'm famous! 02:26:37 :-P 02:28:01 mmm 02:28:08 * oerjan has no idea which paragraph ihope is referring to 02:28:14 www.DamnInteresting.com is pretty well designed 02:28:29 oerjan: that of the wiki page on Thutu. 02:29:40 oerjan, ah... I might need to change the self.indlist.pop(0) part based on the revflag 02:30:16 i am afraid it will not work, because the popping should be at only one end too 02:31:21 essentially i think the tree will creep back in 02:31:27 ooh 02:31:31 plans for a flying saucer 02:32:44 wow 02:32:58 who the fuck sells jet engines for $35? 02:33:03 oerjan, nope... the popping needs to be reversed to. 02:33:29 scratch that 02:33:32 $20 02:34:09 oh 02:34:13 it's blue prints 02:34:14 :P 02:34:26 SevenInchBread: and i think the IndexError is wrong too, because there is no reason why the end of a duplicated part should be either end of the original source 02:35:26 ah yeah... it would just be one end. 02:35:56 you could have pops off both ends before a duplication 02:36:31 ooh 02:36:37 found plans for DIY jet engine 02:36:45 wouldn't it be neat to build your own flying saucer? 02:36:47 :P 02:37:10 gimme a flying teapot! 02:37:15 oerjan, a duplication just saves the current index... because that's all you need to mimic a duplication... however... you may be right about IndexError being the wrong way to check for when we've reached a duplicated part. 02:37:20 equipped with blinking LEDs, and sound-track from sci-fi, of course 02:38:05 the duplication needs to save the index for both ends. 02:38:27 both? 02:38:41 the last index is always.... the last index of the source code. 02:38:58 any physics majors here? 02:39:08 ...probably not. 02:39:38 oerjan, but you do see where I'm going with this right? 02:40:08 if I built a cone like /\ 02:40:17 and blew into the /\ bottom with jets 02:40:22 would it produce lift? 02:40:40 it would be something like a hot air balloon. 02:40:40 (and lift evenly, provided it's a decently even cone?) 02:40:56 yes, you want to save indexes instead of trees. 02:40:58 you need a hole in it ? 02:41:01 / \ 02:41:03 ^ like that 02:41:08 / \ 02:41:16 I meant / \ 02:41:23 at the top? 02:41:25 nah... a hole wouldn't allow for as much force. 02:41:26 why 02:41:36 oh wait probably not actually 02:41:53 I'm pretty sure it'd do enough for at least a hover craft 02:42:00 from air cushioning 02:42:12 basically... firing a jew engine against a cone would be like.... blowing EXTREMLY HARD into a big bag. 02:42:13 but I don't know if it'd work for real flying 02:42:22 a jew engine? 02:42:32 ....hahahaha 02:42:38 best typo ever 02:43:11 hmm 02:43:16 if I spin the engines 02:43:22 like 02:43:32 -/\- 02:43:36 ring holding code 02:43:37 *cone 02:43:50 with engines sucking air from above and blowing into the cone 02:44:06 spin the ring 02:44:18 it'd make a gyroscopic sort of stability, right? 02:45:25 might not be a fast form of transport, but imagine flying your gf above say, NY and having everyone think you're aliens :P 02:45:35 hehe 02:48:04 Ring holding code! 02:48:28 Oh, also. 02:48:31 SevenInchBread: "hatful" 02:50:32 I corrected that one :P 02:50:33 oh alright 02:50:44 :-) 02:51:32 ah hahahahaha 02:51:34 "Let me be the first to say that the prospect of drunk fliers crashing into my roof is enough to be thankful that we can not have one of these craft as easily as we can go out and buy a car." 02:52:09 yeah... we don't want people FUI (fooey!) 02:53:49 http://youtube.com/watch?v=6-3lQ4L_36c 02:56:19 -!- RainbowTrout has joined. 03:08:28 oh wow 03:08:40 did you know Irrlicht is the German word for "Will-o-the-wisp"? 03:16:12 ooh 03:16:19 D Harmonic minor 03:17:14 * oerjan somehow never considered D Harmonic minor an ooh subject 03:18:13 too bad :P 03:18:32 http://www.tonalcentre.org/Harmminchords.mid C harmonic minor! 03:19:29 Fourier series! 03:19:38 -!- oerjan has quit ("Good night"). 03:31:38 -!- Sgeo has joined. 04:19:13 -!- RainbowTrout has quit ("Chatzilla 0.9.77 [Firefox 1.5.0.11/2007031202]"). 04:28:22 -!- ihope has quit (Remote closed the connection). 04:41:03 -!- Figs has left (?). 05:04:50 -!- pikhq has quit ("leaving"). 05:05:59 -!- pikhq has joined. 06:54:48 -!- Sgeo has quit (Remote closed the connection). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:00:13 -!- sebbu has joined. 09:01:58 -!- sebbu2 has joined. 09:21:09 -!- sebbu has quit (Read error: 110 (Connection timed out)). 09:29:36 -!- fax has quit (Remote closed the connection). 09:51:41 -!- na[zZz]gjunk has changed nick to nazgjunk. 10:03:50 -!- sebbu has joined. 10:09:33 -!- jix__ has joined. 10:22:33 -!- sebbu2 has quit (Read error: 110 (Connection timed out)). 13:08:29 -!- nazgjunk has quit ("i really have to get off irc for now, if i don't write this stuff i won't pass my exams >.<"). 13:58:12 -!- xtofs has joined. 14:28:58 -!- xtofs has quit ("Leaving"). 15:24:17 -!- nazgjunk has joined. 15:30:41 -!- nazgjunk has quit ("back to school shit"). 15:47:20 -!- nazgjunk has joined. 17:21:22 -!- helios24 has quit ("leaving"). 17:21:37 -!- helios24 has joined. 17:22:24 -!- helios24 has quit (Remote closed the connection). 17:22:32 -!- helios24 has joined. 17:23:26 -!- helios24 has quit (Client Quit). 17:23:31 -!- helios24 has joined. 17:45:00 -!- jix__ has changed nick to jix. 18:06:11 -!- ihope has joined. 18:24:22 -!- _jol_ has joined. 18:24:57 -!- _jol_ has quit (Client Quit). 20:34:32 -!- oerjan has joined. 21:07:07 -!- pikhq_ has joined. 21:16:10 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 21:19:35 I assume that anyone who is unable to use SPaG on usenet or similar is a retarded 12-year-old. Am I a bad person? 21:20:43 what's spag? 21:21:08 i don't know. how do you use Society for the Promotion of Adventure Games on Usenet? 21:21:28 "Spelling, Punctuation and Grammar" 21:21:29 -!- pikhq has quit (Read error: 110 (Connection timed out)). 21:21:43 well no 21:22:05 if they're retarded, they don't have to be 12 years old. 21:22:37 hm, synchronicity, i just read Mark CC's review of a kook's book with really bad language 21:24:10 if you consider _really_ severe dyslexia retarded... (so bad that you cannot even say if your spell checker's suggestions are correct) 21:57:14 -!- pikhq_ has changed nick to pikhq. 21:59:38 pikhq: don't you know how to disconnect one of your nicks? 22:01:28 I didn't realise that I was logged in as pikhq_ until I saw pikhq time out. 22:01:43 oh 22:04:02 -!- ShadowHntr has joined. 22:08:00 -!- atrapado has joined. 22:42:16 -!- Sgeo has joined. 22:45:13 hi 23:07:35 * pikhq <3 Beryl. . . 23:13:53 -!- atrapado has quit ("Saliendo"). 23:15:37 * GregorR *stab* beryl and beryl users 23:22:46 -!- sebbu has quit ("@+"). 23:29:46 * pikhq shines as he dies 23:33:28 -!- pikhq has quit ("leaving"). 23:33:45 -!- pikhq has joined.