02:07:13 -!- GregorR-L has quit ("Leaving").
02:25:40 -!- kipple has quit (Read error: 110 (Connection timed out)).
04:29:47 <GregorR> I sent him a copy of the original 2L!
04:33:26 <GregorR> I KNEW it was supposed to be filled with 0s >_<
04:50:55 <GregorR> http://www.befunge.org/fyb/2l/HelloWorld.2l < Hello World in 2L :)
06:36:12 -!- lament has joined.
06:50:23 -!- calamari has joined.
07:14:59 -!- Keymaker has joined.
07:15:18 <Keymaker> haha, that's probably coolest Hello World i've seen!
07:15:51 <Keymaker> you should add it to that article in wikipedia that has hello world on different languages (including esoteric) :)
07:31:34 -!- calamari_ has joined.
07:40:07 <GregorR> I'll have to write a Wikipedia page for 2L as well...
07:40:17 <GregorR> But I feel bad writing a page about my own language...
07:40:21 <GregorR> Like I'm advertizing myself...
07:40:56 <calamari_> yeah, isn't there a rule against original research?
07:40:57 <Keymaker> i mean i don't think it's advertizing :)
07:41:21 <mtve> there were rumors about deleting most of esoteric things from wikiperia.
07:41:31 <calamari_> seems like everyone to promises to put one up vanishes
07:42:03 <Keymaker> they don't vanish, they just lose their mental health :p
07:42:12 <Keymaker> and aren't able to write anymore
07:42:21 <calamari_> haha.. can't imagine a wiki being that hard to put up
07:42:49 <GregorR> Please do not create an article to promote yourself, a website, a product, or a business (see Wikipedia:What Wikipedia is not).
07:43:01 <GregorR> It's not really myself, a website, a product or a business.
07:43:16 <calamari_> it's a product of your insanity ;)
07:43:32 <Keymaker> hm. it isn't advertising in my humble opinion
07:44:43 <calamari_> I doubt anyone would care. just avoid using "I", "me", etc.. :)
07:45:31 <GregorR> How do you use a template...
07:45:57 <Keymaker> don't ask me, just look some other entries "source code"
07:48:35 -!- calamari has quit (Read error: 110 (Connection timed out)).
07:48:55 -!- calamari_ has changed nick to calamari.
07:57:19 <GregorR> http://en.wikipedia.org/wiki/2L_programming_language
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:00:00 <Keymaker> now make the traditional quine example :P
08:00:36 <GregorR> AHHHHHHHHHHHHHHHHHHHHHHHHHHHHH *head explodes*
08:01:01 <Keymaker> actually it wouldn't be probably that complicated
08:02:47 <Keymaker> btw, so there's "infinite" space on right side?
08:03:48 <GregorR> Well, within the limits of the interpreter/compiler's memory
08:03:50 <Keymaker> and the program ends if the pointer's x = -1 or y = -1
08:25:23 <Keymaker> are there two interpreters in the 2L package?
08:29:26 <Keymaker> and probably new-line is value 10 only (hopefully)?
08:35:26 <Keymaker> and what's the file extension for 2l programs?
08:36:09 <calamari> yay.. I'm now vapor.. http://lilly.csoft.net/~jeffryj/wiki/index.php
08:36:21 <calamari> how long did that take.. 45 mins or so?
08:36:56 <calamari> Absolutely no content whatsoever
08:37:20 <Keymaker> but didn't someone just recently start an esowiki?
08:37:23 <calamari> I wonder.. should an esoteric wiki be well organized? =)
08:37:36 <calamari> maybe.. but then I heard nothing
08:37:54 <Keymaker> not sure if the starter is here anymore
08:38:00 <calamari> I haven't been here much, though.. so that means nothing :)
08:38:26 <calamari> I think the person was going to copy all the wikipedia content over
09:02:55 -!- Keymaker has quit (Read error: 110 (Connection timed out)).
09:08:45 -!- puzzlet has joined.
09:08:46 -!- puzzlet has quit (Remote closed the connection).
09:08:54 -!- puzzlet has joined.
11:17:40 <fizzie> There was a good brainf*ck debugger somewhere?
11:18:01 <pgimeno> I think mine is fairly good
11:20:19 <pgimeno> http://perso.wanadoo.es/p.gimeno/files/brfd10.zip
11:20:51 <fizzie> Last night I wrote a 'regular expression to brainf*ck' compiler in java (parses a regular expression to a nondeterministic state automaton, determinizes and minimizes it, then writes brainf*ck code to "simulate" it) but the code generated is buggy.
11:22:28 <pgimeno> I think you can make use of that debugger, it has a couple of features that may be very helpful when debugging
11:27:53 <fizzie> Ooh, a "step out of current loop" feature is something I've really been looking forward to. :)
11:28:43 <pgimeno> is there a Library of BF Ready-Made Functions somewhere? you know, like you don't have to write the same routine again and again like, e.g. pcre in BF :)
11:33:19 -!- calamari_ has joined.
11:49:07 -!- calamari has quit (Read error: 110 (Connection timed out)).
11:52:32 -!- kipple has joined.
12:11:50 -!- calamari_ has quit ("Leaving").
12:38:29 <fizzie> fis@colin:~/prog/eclipse-workspace/misc$ java -cp . org.gehennom.misc.BFRE 'a(a|b)*b|b(a|b)*a' > ~/prog/misc/brfd/re.bf
12:38:35 <fizzie> fis@colin:~/prog/misc/brfd$ echo -n 'aabbab' | ./BRFD.EXE re.bf
12:38:35 <fizzie> fis@colin:~/prog/misc/brfd$ echo -n 'aabbaa' | ./BRFD.EXE re.bf
12:38:57 <fizzie> "This exhaustive testing conclusively proves it works for all regular expressions and inputs."
12:40:31 -!- Keymaker has joined.
12:41:07 <Keymaker> i don't think there's any brainfuck function collection
12:44:50 <pgimeno> say, you want to operate with numbers > 255 (e.g. to perform a scientific computation; BF is soon to be implemented as the language of choice for scientific computations, replacing the now obsolete FORTRAN). Do you have to write your own bignum library?
12:47:14 <Keymaker> you can operate with really big numbers but it gets really hard
12:47:46 <pgimeno> oh, well, it's up to the compiler to optimize the code so that it runs smoothly
12:49:36 <pgimeno> if the code is slow, it's the compiler's fault
12:51:10 <pgimeno> is there a TPK algorithm implementation in BF?
12:52:30 <pgimeno> it's another kind of language features tester
12:52:42 <Keymaker> would be pretty hard to code in bf i think
12:52:58 <pgimeno> http://www.cs.fit.edu/~ryan/compare/
12:53:17 <Keymaker> yeah, i'm on that page righ now
12:53:29 <pgimeno> Knuth has an Intercal version in his page
13:05:50 <Keymaker> here's a befunge quine i made up today
13:06:05 <Keymaker> this method has been most probably used thousands of times, i have a feeling
13:09:22 <pgimeno> it looks deliciously simple
13:12:18 <pgimeno> I'll have a look when I have some spare time... right now I can't even dedicate to malbolge
13:12:30 <pgimeno> anyway stack-based languages are not among my favorites
13:13:07 <Keymaker> i'm not such fan of stacks, probably because i have never used them before esolangs
13:13:29 <pgimeno> I have written a bit of Forth but I didn't like it
13:13:39 <pgimeno> that's probably why I don't like stacks
13:13:52 <pgimeno> I have to revisit Q-BAL sometime
13:16:02 <Keymaker> ##"57*:,,48*2+,>:#,_48*2+,57*, @ ,*75,+2*84_,#:>,+2*84,,:*75"#
13:16:36 * pgimeno feels a symmetry pattern :P
13:57:14 <Keymaker> the program can change its own code
14:38:55 <fizzie> I'm trying to debug my regexp compiler by looking at the state machines it creates. For something simple like that 'a(a|b)*b|b(a|b)*a' example it works, but for this date-with-time-validating regular expression the generated state machine is.. not very visualizable. You can look at http://gehennom.org/~fis/re.png for an example, but it's a 8422x6504-sized png so looking at it can be a bit sluggish.
14:39:06 <fizzie> I am having some trouble figuring out whether it is "correct" or not. :p
14:41:48 <Keymaker> wow, so does some program do that picture?
14:42:49 <fizzie> Nope, I just dumped the transitions to a text file and mangled it a bit to create a .dot I feeded to graphviz.
14:43:42 <fizzie> I'm going to try combining the multiple transitions to a single arrow, now, the 10+ arrows going from a -> b aren't exactly helping.
14:51:44 <pgimeno> I agree, fizzie, I can't follow that graphic
14:52:36 <pgimeno> looking at the original regex would help as well
14:54:04 <fizzie> My parser doesn't do character classes, so I had to convert [0-9] to (0|1|2|3|4|5|6|7|8|9).
14:57:16 -!- kipple has quit (Read error: 110 (Connection timed out)).
14:57:30 <pgimeno> oh, the motivation of the difficulty... I think I could write a [x-y] range parser in a few minutes, but it's so easy that it's not worth spending time on it :P
15:05:45 <fizzie> Ahh. re2.png and especially re3.png are much clearer. In re2 the transitions have been combined, in re3 the "error state" has been left out.
15:08:40 <fizzie> The regular expression I used was '((0|1|2|_)(1|2|3|4|5|6|7|8|9)|3(0|1)).((0|_)(1|2|3|4|5|6|7|8|9)|1(0|1|2)).((0|1|2|3|4|5|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)|_) *((0|1)(0|1|2|3|4|5|6|7|8|9)|2(0|1|2|3)):(0|1|2|3|4|5)(0|1|2|3|4|5|6|7|8|9)(:(0|1|2|3|4|5)(0|1|2|3|4|5|6|7|8|9)|:6(0|1)|_)'
15:09:08 <fizzie> (There's a " *" between the parts, that's perhaps not very clear if it line-wraps badly.)
15:09:44 <fizzie> But as far as I can determine, the automaton is correct, so my brainf*ck code is not. Bleh.
15:10:23 <fizzie> That's not _really_ a date-validating regexp, since it doesn't care about number of days in a month.
15:10:37 <fizzie> (It does allow leap seconds, though.)
15:10:43 <Keymaker> what kind of brainfuck code you got?
15:11:45 <fizzie> That's in http://gehennom.org/~fis/re.bf.txt .. it's not very optimized. :p
15:12:06 <Keymaker> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARRRRRGH!
15:12:19 <Keymaker> maybe i won't try looking what could be wrong..
15:13:13 <fizzie> You can look at re2.bf.txt if you want, that's commented.
15:13:22 <fizzie> Automatically commented, even. :p
15:15:55 <fizzie> I guess I'll try debugging it when I have some free time. :p
15:16:12 <fizzie> Single-stepping and watching the state transitions helps to see where it goes worng.
15:35:45 <fizzie> fis@colin:~/prog/misc/brfd$ echo -n '11.4.2002 11:03:22' | ./BRFD.EXE re.bf
15:35:45 <fizzie> fis@colin:~/prog/misc/brfd$ echo -n '32.4.2002 11:03:22' | ./BRFD.EXE re.bf
15:35:45 <fizzie> fis@colin:~/prog/misc/brfd$ echo -n '11.4.2002 11:60:22' | ./BRFD.EXE re.bf
15:36:22 <fizzie> There was a simple bug in the few last lines of brainf*ck where it chose what to print.
15:36:50 <pgimeno> hm, according to the graph you can't type 10.x.xxxx
15:42:18 -!- kipple has joined.
15:45:43 <fizzie> That's a bug in the regexp, though.
15:46:27 <fizzie> ((0|1|2|_)(1|2|3|4|5|6|7|8|9)|3(0|1)) should be something like ((0|1|2_)(1|2|3|4|5|6|7|8|9)|(1|2)0|3(0|1))
15:47:21 <pgimeno> does * have the classical meaning?
15:47:46 <fizzie> _ is the empty string, yes.
15:48:13 <lindi-> uh, which is actually different from epsilon, isn't it? i'm getting confused by the terminology
15:48:44 <pgimeno> I'm used to the (0|1|2)? kind of test
15:49:27 <fizzie> This doesn't have "?". The syntax is straight from our "Introduction to Theoretical Computer Science" course homework assignment checker.
15:50:31 <pgimeno> I haven't read that, I'm just an egrep user :)
16:14:32 <GregorR> Keymaker: 2li.c is an interpreter, 2lc.c is a compiler.
16:26:16 <Keymaker> if you want to check out my programming site i just made the way i want it to be, go here:
16:26:37 <Keymaker> but i hope to add programs there as time passes
16:26:53 <Keymaker> as well, tell me what do you think about the "design"
16:27:29 <GregorR> Gregor is incapable of design decisions.
16:27:50 <GregorR> However, I notice a distinctive lack of 2L quines :-P
16:29:33 <GregorR> I'm almost positive it is - I'm modestly sure that it's BF-complete.
16:29:59 <GregorR> Any BF operation could be done with a bit of blood sweat and tears.
16:30:43 <Keymaker> this channel hasn't been this active for a very long time
16:32:01 <pgimeno> GregorR: well, about hosting 2L
16:32:50 <pgimeno> I can give you a permanent page (not very intuitive but at least immutable in some years)
16:33:28 <GregorR> IE: How is it "not very intuitive"?
16:33:39 <GregorR> Unlike 2L, which is mind-blowingly intuitive :-P
16:33:46 <pgimeno> something like http://www.formauri.es/personal/GregorR/<your page>
16:34:07 <GregorR> I could supply a subdomain.
16:34:27 <GregorR> I own codu.org , but have very minimal space and bandwidth on my host there :-P
16:34:29 <pgimeno> this damn hosting company doesn't allow subdomains
16:34:44 <pgimeno> I can set up a redirection
16:34:55 <GregorR> Well, I meant a redirection from 2l.codu.org
16:35:17 <GregorR> "Whoops, got to make my boss look like I'm doing work" ?
16:38:31 <GregorR> Anyway, yeah, that'd be great
16:39:08 <pgimeno> I'd just want to avoid it being lost like so many others
16:39:40 <pgimeno> I'm afraid of the day web.archive.org is down
16:40:04 <kipple> yeah. I''ve been thinking about that too.
16:40:15 <kipple> too many esolangs exist on only one webpage
16:40:31 <GregorR> Are there any OO esoteric languages (other than Java of course ahaha)
16:41:02 <kipple> is that OO? I don't think so
16:41:27 <pgimeno> too bad it's not turing-complete
16:41:56 <fizzie> Remember that ugly re.bf.txt? I quick-n-dirty-converted it to befunge: http://gehennom.org/~fis/re.bef.txt - I don't have any befunge interpreter here that'd support unlimited-size playfield and [a-f] hex-numbers, so I haven't tested it.
16:44:08 <fizzie> About the only optimization it does it to combine runs of +++s, ---s, <<<s or >>>s into a single 2f*4+f*1+ -style number. Other than that, it's a straight translation of the brainf*ck code.
16:44:25 <fizzie> (Except that loops involve a lot of going-around.)
16:46:34 <fizzie> It's amazing how many diversions one can find when the other alternative would be to read for exams. ('Fundamentals of network media' and 'Discrete Mathematics' both are tomorrow.)
16:47:13 <Keymaker> (i mean i know that allkinds of other stuff can be done easily instead of reading to exams.)
16:47:31 <GregorR> Sometime this week, I will have an esoteric OO programming language ... because the world needs one (other than Java ahaha)
16:50:15 <kipple> so, what OO concepts are you planning to include?
16:51:52 <GregorR> Well, just one sec. Does anybody agree that this would be esoteric (this will be a few lines...):
16:51:57 <GregorR> There is such a thing as a voicebox.
16:51:57 <GregorR> A voicebox can speak a word.
16:51:57 <GregorR> My first voicebox speaks "Hello World!"
16:51:58 <GregorR> When a voicebox is to speak:
16:52:02 <GregorR> My first stdout is to speak the word.
16:52:49 <GregorR> Inheritance wouldn't be too hard, and I have a plan for class variables ... no public/private interfaces.
16:53:39 <pgimeno> fizzie, you're currently hosting GregorR's 2L, right?
17:21:49 -!- Keymaker has quit ("Freedom!").
17:47:58 <GregorR> The more I think of it, the more I think that that wouldn't be esoteric enough.
17:48:07 <GregorR> It's sort of pointlessly wordy, but way too intuitive.
17:56:31 <pgimeno> well, I like it and that's enough :)
17:57:19 <pgimeno> some notes about the Wikipedia article
17:58:05 <pgimeno> an example should not be so long
17:59:11 <GregorR> I don't know if I can accomplish anything in less X-D
17:59:16 -!- GregorR-L has joined.
18:01:50 <pgimeno> would you allow me to make small edits here and there to let it conform to the Wikipedia policies better?
18:04:38 <pgimeno> the "Hello world" can't be there, would you mind if I take the example from the tutorial?
18:04:58 <GregorR-L> It's even more worthless, but yeah :-P
18:06:00 <pgimeno> it's just for the casual user to get an idea of what a program looks like
18:09:00 <GregorR-L> YAY! 5 midterms in this series and I've gotten an A on every single one 8-D
18:12:50 <pgimeno> btw, it's done: http://en.wikipedia.org/wiki/2L_programming_language
18:15:08 <pgimeno> damn, "Server shutdown in progress"
18:23:12 <pgimeno> I guess that those who want to see what "Hello, world!" looks like will have to visit the page
18:23:39 <pgimeno> oh, as soon as you want me to post it, tell me what the files are and I'll post them
18:46:05 <kipple> Wow, that Hello World looks great :)
18:46:43 <kipple> really nice (read: nasty) language...
19:10:21 <puzzlet> And what's "<" in the sample program in Wikipedia?
19:11:28 <kipple> From the spec: "The < is the direction that your program pointer will be going in when you're done producing the
19:11:44 <kipple> got me confused for a while as well
19:12:33 <puzzlet> i changed "(0,0) moving down" with "(0,0) moving right"
19:12:59 <GregorR-L> It's actually supposed to be "moving down"
19:13:32 <GregorR-L> My OO esoteric language is functional :-P
19:14:08 <kipple> that's nice. Care to show us?
19:15:14 <GregorR-L> Well, I could paste something in here...
19:15:19 <GregorR-L> But I'm still working on the spec.
19:15:24 <kipple> I've started thinking about one myself :)
19:16:28 -!- cmeme has quit (Read error: 131 (Connection reset by peer)).
19:17:31 -!- cmeme has joined.
19:17:50 -!- cmeme has quit (Remote closed the connection).
19:18:33 -!- cmeme has joined.
19:20:35 <GregorR-L> It has the usefulness of BASIC with the power of English and OO!
19:22:45 <kipple> so, outputter is the only pre-defined object in that code. Am I right?
19:23:03 <GregorR-L> I'm also going to make mathematician
19:23:13 <GregorR-L> I have a mathematician called ProfessorBob
19:23:22 <GregorR-L> ProfessorBob is to increment myNumber.
19:50:04 <pgimeno> that program sounds like some kind of weird poetry
19:50:46 <kipple> kind of like a childrens book :)
20:02:01 <lament> that kind of thing gets very old very fast
20:07:06 -!- GregorR-L has quit (Read error: 113 (No route to host)).
21:26:31 <GregorR> Well. ORK (this OO esoteric language) turns out to be the source of all evil in this world.
21:26:36 <GregorR> However, it is now working.
21:26:46 <GregorR> However however, I'm at work and can't send it up anywhere :(
21:38:13 -!- Keymaker has joined.
21:38:31 <GregorR> (I'm not here, I'm at work ;) )
21:39:47 <GregorR> So I'll upload my esoteric OO language somewhere this evening (when I'm not at work)
21:40:08 <GregorR> This sample will multiply 5 by 5 then output the result
21:40:21 <GregorR> There is a mathematician called ProfBob.
21:40:29 <GregorR> There is an outputter called StdOut.
21:40:34 <GregorR> ProfBob's first operand is 5.
21:40:40 <GregorR> ProfBob's second operand is 5.
21:40:53 <GregorR> StdOut is to output ProfBob's result.
21:41:56 <GregorR> And it's object oriented beyond all usefulness :-P
21:55:04 <Keymaker> must.. invent.. own.. esoteric.. language..
21:56:12 <Keymaker> can't get any connect to brains :p
22:01:41 <GregorR> I think I'm about done creating them ...
22:01:52 <GregorR> I've created a too-little-to-work-with-a-la-BF one...
22:02:01 <GregorR> I've created a too-damn-wordy-to-be-useful one...
22:02:21 <GregorR> But one of these days, I'll go "You know what would be totally worthless..."
22:29:34 <fizzie> I think I want a befunge variant with function calls (simple define-function-with-integer-name, call-function-n and return would suffice, although I'm not sure if there should be a way of having more than a single return value) and perhaps with a _really_ simple module system (load-a-file, which could export a set of functions).
22:29:53 <fizzie> I guess it'd be cheatey and unbefungey, but that'd be a language one could actually use for real-world applications.
22:30:58 <GregorR> I would LOVE to see a non-esoteric 2D language.
22:31:56 <GregorR> My attempts to conceptualize one have all been in vain, however :(
22:42:45 <pgimeno> damn, I've been too busy tonight and I must leave now... I'll read the backlog tomorrow, bye
22:50:09 <Keymaker> i'm too tired to do anything, i'll go too
22:50:18 -!- Keymaker has quit ("Freedom!").
23:56:48 <GregorR> I made a quaint little 60-line recursive Fibonacci number generator in ORK :-P
23:57:05 <GregorR> It would have taken, oh, maybe as many as 10 in C++.