02:09:10 -!- wooby has joined.
02:16:40 <graue> writing an interpreter (slowly) for a new esolang
02:37:46 <wooby> an esolang of your own design?
02:52:57 <graue> it is based on the principle of insertion sort
02:55:10 <wooby> that's interesting
03:16:03 <graue> *p++ parses as *(p++), right?
03:24:59 -!- kipple has quit (Read error: 60 (Operation timed out)).
04:20:32 -!- malaprop has quit ("quit").
05:25:30 <GregorR> Wow, logicex-2 is a bitch.
05:25:35 <GregorR> I'm never going to beat this >_>
05:26:42 <GregorR> Until jix does, then I will be forced to defeat his :)
05:31:35 <graue> heh, i just realized these two operators i had proposed are exactly the same:
05:31:36 <graue> ^ Strings String Provides whichever comes later out of op1 and op2,
05:31:36 <graue> or "" if they are equal
05:31:36 <graue> $ Strings String Returns "" if both strings are "", the string that
05:31:36 <graue> comes later out of op1 and op2 if neither string is
05:31:37 <graue> "", or the string that is not "", if one of them is
05:31:47 <graue> obviously, i had not had my coffee when i made those up
05:33:35 <graue> have you considered making an interactive FYB, wherein players could control their warriors at runtime somehow?
05:33:43 <graue> using , and . of course
05:50:25 <graue> it wouldn't work very well
05:50:45 <graue> i can't imagine a situation where a person at the keyboard could decide what to do better than the program
06:30:16 -!- wooby has quit.
06:35:40 <GregorR> You would need to have a really, really good grasp on what the program was doing.
06:35:47 <GregorR> Which is incredibly difficult to get.
06:35:51 <GregorR> (Part of the point, really)
06:39:14 <graue> and if you were that smart, though, you would just make your program figure it out, right?
06:53:44 <graue> i hope you will enjoy my new esoteric programming language
06:53:56 <graue> the interpreter is not working right, i will have to fix it tomorrow, good night
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
11:19:25 -!- sp3tt has joined.
11:21:04 <sp3tt> ";; warning: alcohol destroys brain cells! (not as much as brainfuck)" rofl
11:22:39 <pgimeno> hi sp3tt, yeah that was a good advice :)
11:23:11 -!- sp3tt has quit (Client Quit).
12:25:08 -!- kipple has joined.
13:05:00 -!- jix has joined.
13:09:28 <pgimeno> kipple: your 99bob is still in the first place closely followed by Shakespeare
13:14:45 <kipple> pgimeno: yes, wonder how long it's gonna last
13:18:15 <pgimeno> it's a hard competition, both are equally fascinating :)
13:22:21 * jix has an idea... .. is it turing complete ?.... *thinks*
13:39:54 <jix> i have an idea for an ultimate language
13:40:29 <jix> programs will look like levels of a platform game .. and even work a bit like them ^^
13:41:32 <kipple> is there a nethack esolang, btw?
13:46:21 <jix> my language will use a graphical editor.. text representation is.. to complex (maybe i write a text exporter and importer.. but graphical editor comes first)
13:46:53 <kipple> yay! the world needs more non-ascii based esolangs!
13:47:20 <jix> name: bit-dropper
13:49:05 <jix> anyone here knows 'the hellacopters' ?
13:49:43 <kipple> I've heard about it. Aren't they finnish or something?
13:49:49 <jix> swedish afaik
13:50:05 <kipple> only heard about them, not heard them...
13:51:33 <jix> the flaming sideburns rule too.. they are finnish
14:03:04 -!- J|x has joined.
14:03:34 -!- jix has quit (Nick collision from services.).
14:03:40 -!- J|x has changed nick to jix.
14:03:53 <jix> what was my last msg ?
14:08:34 -!- malaprop has joined.
14:30:53 <jix> moin malaprop
14:33:14 -!- sp3tt has joined.
14:35:35 <jix> moin sp3tt
14:40:41 <kipple> jix: good news for your graphical language: http://www.99-bottles-of-beer.net/language-labview-729.html :)
14:40:51 <kipple> (99bob supports images now)
14:41:12 <kipple> and, Hi sp3tt (what kind of nick is that anyway???)
14:41:27 <jix> does it support image+text (text for pasting it into the interpreter)
14:42:27 <kipple> jix: no idea. I don't even know what you mean... ;)
14:42:33 <jix> because i'm not going to store the data as images
14:42:54 <jix> but it would be too hard to write programms in the native (binary) format
14:43:25 <sp3tt> The IKEA language?
14:43:44 <jix> bit-dropper
14:43:48 <kipple> haha. no I don't think that one will be made
14:45:37 <sp3tt> Do you have a link for bit-dropper?
14:45:53 <jix> no i just thought a bit about it
14:46:28 <jix> the programs look like platform-game levels.. and work a bit like them.. hmm a mix of: falldown,lemmings and super mario
14:48:12 <jix> the levels look like super mario.. the object movement is a bit like falldown.. but the strategy is a bit like lemmings
14:58:09 <jix> in bit-dropper bits can slide,fall,roll,jump,bounce,fly...
14:58:44 <jix> i hope it's turing complete.. but anyway it's crazy
15:00:00 <jix> ok i'm still connected... (it's quiet here)
15:03:34 <kipple> does anybody know if there is a command line utility like the linux timer available for windows?
15:06:21 <pgimeno> do you mean the "time" command?
15:07:11 <pgimeno> any bash will do; I think there's a non-cygwin bash
15:07:25 <pgimeno> but 'time' is a bash command
15:07:30 <jix> mingw+msys
15:07:36 <jix> arg.. i'm away....
15:08:02 <pgimeno> yeay -> yeah (I mean: msys has a bash)
15:08:48 <kipple> anyway, I installed perl on my windows box in order to run my sous-chef version of 99bob in a reasonable amount of time, and it needed only 5 minutes :)
15:08:50 <sp3tt> Now Windows can bash instead of being bashed! Resistance is futile!
15:09:25 <pgimeno> kipple: "only" as compared with what? I don't remember the other timings
15:09:56 <kipple> well, I never ran it with 99 verses, but I ran it with fewer, and estimated it to take about 45 minutes
15:10:51 <pgimeno> sp3tt: cygwin is around for several years actually; msys is more modern but is still a bit old
15:11:17 <kipple> well, the windows box is 1.4GHz Duron compared to 187MHz K6, so it wasn't really a surprise :)
15:12:14 <pgimeno> I like cygwin for one reason: it's basically a distribution
15:12:23 <kipple> anyway, the time it takes to run a chef program with sous-chefs grows exponentially with the number of sous-chef calls...
15:12:47 <pgimeno> exponentially? wasn't it quadratically?
15:13:35 <kipple> I think I could find an exponantial function that is a good estimate for it as well. (I don't have enough data really to be precise)
15:13:55 <pgimeno> just wondering based on what you told
15:14:29 <pgimeno> I have no idea on how the interpreter is written anyway
15:14:40 <kipple> it's the spec, not the interpreter
15:15:18 <kipple> basically you have to pass ALL data in the program as parameters (by value!) to each function call
15:16:45 <pgimeno> hum, how much data are we talking about?
15:17:15 <kipple> depends on the program. in this case, the lyrics to 99bob
15:17:40 <kipple> that's not too much, so I guess the interpreter could be more efficient
15:22:13 <fizzie> We-ell, the interpreter could pass the contents by-reference and do some copy-on-write -like thing.
15:23:10 <fizzie> (Disclaimer: I don't really know anything about Chef.)
15:24:54 <pgimeno> me neither, apart from having fun with the Fibonacci Numbers with Caramel Sauce
15:25:55 <pgimeno> btw, copy-on-write is just another example of a lazy strategy :P
15:26:28 * pgimeno promises he'll be quiet next time
15:33:34 <CXI> the world needs a language based on recursive regular expressions
15:34:02 <CXI> it could be called Two Problems :D
15:39:13 <CXI> it's a quote from Jamie Zawinski
15:39:38 <CXI> "Some people, when confronted with a problem, think 'I know, I'll use regular expressions.' Now they have two problems."
15:41:04 <CXI> heheh, it'd be a functional language
15:41:07 <CXI> oh, so evil >:)
15:41:16 <malaprop> Heh, I was just about to point out it'd be FP.
15:41:41 <CXI> that's so awesomely evil
15:43:00 <malaprop> the primary conditional could be a list of regexps, works like a switch (without fallthrough)
15:43:17 <CXI> who said anything about a conditional? :)
15:43:44 <CXI> bah, I suppose it's necessary
15:44:05 <malaprop> Is not so much a conditional as matching. Like how in ML you'll have to write f for the empty list as well as for the full one.
15:44:47 <CXI> maybe just use the regex match operation
15:45:12 <CXI> and keep sets of match:sub triplets
15:47:50 <CXI> not sure whether I need variables *messes around*
15:53:45 <CXI> er, by variables I mean functions
15:53:56 <CXI> yeah, guess I do
15:57:56 <GregorR> CXI "Some people, when confronted with a problem, think 'I know, I'll use regular expressions.' Now they have two problems." < where is this quote from?
15:58:20 <CXI> comp.lang.emacs
15:58:26 <CXI> fairly famous
15:58:52 <GregorR> Excellent, excellent quote :)
16:02:28 <pgimeno> GregorR: I just found this which may be of interest to you: http://fishbowl.pastiche.org/2003/08/18/beware_regular_expressions
16:03:32 <GregorR> I'll look at it later, time to go to school.
16:08:57 <CXI> blagh, I keep forgetting all the perl I know :D
16:09:33 <CXI> ah, crap, I can't store my function table as a hash because of pattern matching
16:10:02 <CXI> or maybe I could store it as a hash of hashes... yes! >:)
16:11:21 <malaprop> CXI: Are you implementing Two Problems now?
16:12:08 <CXI> actually pretty easy to write in perl, I'm just working out how to do the functional bit properly
16:18:06 <CXI> I haven't done data structures in perl for ages, wow
16:39:54 -!- j|x has joined.
17:24:08 -!- jix has quit ("This computer has gone to sleep").
17:51:28 -!- j|x has quit ("Leaving").
17:54:32 <CXI> I just realised I may be doing this in an unnecessarily complex way
17:54:50 <CXI> right now I'm doing function:/pattern/:/match/replace/
17:54:59 <CXI> but pattern and match are fundamentally the same thing
18:00:41 * CXI kicks himself for being silly
18:00:50 <CXI> most of the development time here is forgetting how to use perl
18:13:50 <CXI> hello world works
18:17:02 <CXI> erk, I've hit another "my brain stopped working" roadblock
18:17:02 -!- jix has joined.
18:19:15 <sp3tt> Example of the language?
18:19:43 <CXI> actually, the problem is working out how the language should go
18:22:57 <CXI> actually, hmm, I think I've got it
18:23:02 <CXI> just have to work out how to write it down
18:23:16 <jix> what language ?
18:23:25 <CXI> Two Problems :D
18:23:35 <CXI> a functional language based entirely on regular expressions
18:23:58 <jix> using which regex engine ?
18:24:17 <ZeroOne> pgimeno: hey, no problem :)
18:24:17 <CXI> perl's, at the moment
18:24:36 <jix> does perl support recursive regexpes ?
18:24:39 <ZeroOne> the articles aren't safe in wikipedia
18:25:09 <CXI> jix: not really... but yes with a little craziness
18:25:17 <CXI> the perl regex engine lets you use a function in the replacement of a regex
18:25:17 <jix> use: http://www.geocities.jp/kosako3/oniguruma/
18:25:31 <jix> that's not recursive pattern matching
18:26:09 <jix> with oniguruma it's possible to test a string like (()((()())())) for correct ( ) placement
18:37:22 <pgimeno> ZeroOne: wow, that's a 50 hour lag :)
18:37:40 <CXI> yeah, I was gonna say I thought I saw the comment that started that a couple days ago
18:38:47 <ZeroOne> pgimeno: just some military service in between there ;)
18:39:18 <pgimeno> ZeroOne: hehe, no prob, just probably the biggest lag I've seen on IRC
18:40:29 <ZeroOne> pgimeno: ok :) I've got this shell running irssi and it notifies me about new messages when I come back.
18:40:58 <pgimeno> graue has been working on porting your articles
18:42:17 <pgimeno> (see http://esoteric.voxelperfect.net/wiki/Special:Recentchanges )
18:50:44 <CXI> turns out perl probably wasn't the best choice for this
19:06:46 <CXI> haha, this is so ugly, but I think it works
19:09:07 <CXI> main:/(.*)/(head $1)/
19:09:08 <CXI> head:/^(.).*$/$1/
19:09:12 <CXI> best syntax ever
19:11:08 <CXI> C:\Projects\TwoProblems>2probs test.2p hello
19:11:17 <CXI> heh, and only about 5 regex calls to do that, too :P
19:11:42 <CXI> though I think recursion may not entirely work... :D
19:12:09 <CXI> actually, scratch that, I know recursion doesn't work
19:12:27 <malaprop> you should make () do print and plain be code. optimize for the common case, eh?
19:13:07 <lindi-> CXI: doesn't that form a context-free grammar and not a regular grammar?
19:14:34 <malaprop> Hm, it's not quite a CFG. Close, tho.
19:14:45 -!- Keymaker has joined.
19:15:03 <CXI> except if you can use main/^.(.*)$/(main $1)/ or something similar
19:15:32 <CXI> which you should be able to do according to the spec of the language, but for some stupid reason I accidentally didn't implement right
19:17:14 <CXI> oh dear, I definitely need to go to bed :P
19:17:14 <malaprop> CXI: You should have the ability to have multiple rules of the same name that match different things. main:/^foo.*/saw foo $1/ \n main:/^bar.*/saw bar $1/
19:17:29 <CXI> yeah, theoretically that's what should happen
19:18:58 <CXI> I'll fix it up later when I'm not so tired
19:19:37 <jix> where are the specs ?
19:23:16 <CXI> anyway, definitely need sleep
19:23:22 <CXI> catch you guys later
20:01:16 -!- Keymaker has quit ("Freedom!").
20:18:20 -!- kipple has quit (brown.freenode.net irc.freenode.net).
20:18:20 -!- cpressey has quit (brown.freenode.net irc.freenode.net).
20:24:02 <jix> GregorR: the specs for FYB need an extension: ;: added on runtime and unmatching ;:,{} and []
20:24:12 -!- kipple has joined.
20:24:12 -!- cpressey has joined.
20:32:20 <jix> GregorR: 1
20:32:25 <jix> GregorR: !
20:37:14 -!- sp3tt has quit ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]").
20:54:41 -!- jix has changed nick to jix|crackattack.
21:46:19 <graue> the interpreter for my insertion sort language is nearly complete
22:16:16 -!- jix|crackattack has changed nick to jijx.
22:16:23 <jijx> graue: complete ?
22:16:42 <graue> i am still working on the regular expression matcher, an essential feature
22:21:36 -!- jijx has changed nick to jix.
22:24:30 <jix> is it written in perl?
22:27:37 -!- jix has quit ("Banned from network").
22:28:50 <graue> it is written in C
23:09:53 <graue> http://illegal.coffeestops.net:3703/sort.zip - enjoy
23:23:25 <pgimeno> is it already finished? wow
23:24:00 <kipple> heh. that's one quick development process!
23:29:18 -!- calamari has joined.
23:31:06 <calamari> made some nice improvements to EsoShell (bash-style command history, program return values/$?, better defined API and JavaDoc comments, but won't be able to upload it until the 8th
23:31:35 <calamari> I waited too long to have my phone service switched and so I'll be without an internet connection until then.. oops!
23:32:09 <calamari> Unless I copy it all on a floppy and come back here to upload.. could do that :)
23:32:27 <calamari> I want to implement globs, forgot about those
23:32:37 <pgimeno> are you in an internet caf?
23:32:49 <kipple> when you say API, does that mean that there will be an easy way for third party apps to be made?
23:33:42 <calamari> kipple: yes, for sure.. I'm offering familiar exit(), out.__ and in.. as well as main(String[] args)
23:33:52 <kipple> btw, do you have the link again? forgot to bookmark...
23:34:03 <calamari> Writing an EsoShell app is very similar to writing a Java console app
23:34:32 <calamari> http://lilly.csoft.net/~jeffryj/EsoShell or http://kidsquid.com/EsoShell
23:34:38 <kipple> hmm. is there any reason you need a special API? couldn't you just execute a normal console app?
23:35:00 <kipple> yes. console apps are classes like everything else, no?
23:35:14 <calamari> System.exit() wouldn't work, I know that
23:35:29 <calamari> System.out would print to the Java console, rather than the applet window
23:35:38 <kipple> can't you redirect that?
23:35:51 <calamari> possibly.. I'll do that if possible
23:35:57 <kipple> maybe not. it was just a thought
23:36:01 <calamari> might cause some kind of security exception though
23:36:33 <calamari> but, good idea if it works I'll do it :)
23:36:58 <fizzie> Google says octothorpe is a #.
23:37:22 <calamari> anyhow.. I'm pushing back multiple threads/taskbar for now
23:37:56 <kipple> can't you use a custom made System object to override normal System.exit()?
23:38:19 <calamari> kipple: aren't the methods final?
23:39:39 <kipple> anyway, initializing an app might be as easy as this: ConsoleApp c = new ConsoleApp(); c.main(args);
23:39:59 <kipple> but there are probably issues I'm not thinking of here...
23:40:05 <calamari> I'm already runnign the applications just fine
23:40:29 <calamari> But, If I can provide amore familar interface than I am, that's great
23:42:13 <calamari> hhmm, System.exit is final.. might not work well if I decide to do the multithreaded thing in the future
23:44:17 <graue> i've been working on the sort thing since yesterday
23:44:31 <graue> also, () and [] in regular expressions don't work yet
23:45:40 <pgimeno> but there aren't many examples...
23:45:51 <calamari> wel,, I'm gonna go grab some food.. I'll be baack when I can
23:45:51 -!- calamari has quit ("Leaving").
23:45:57 <graue> i haven't figured out how to write a nontrivial program yet
23:47:12 <graue> hmm, regular expressions in general seem to be buggy
23:47:15 <pgimeno> I'd like to see examples of how the description applies to the language
23:47:44 <graue> it matches the name of the current expression, which it shouldn't, and the ! modifier doesn't work at the end of the search string
23:48:01 <pgimeno> I have some difficulty understanding some aspects of the language
23:48:03 <graue> here's an alternate hello world that demonstrates regular expressions:
23:48:03 <graue> hello := "hello, " "w...." "" ? ~
23:48:43 <graue> substituting ".!d" for "w...." also works
23:50:19 <pgimeno> is the initial order important?
23:51:24 <graue> the expressions are always maintained in sorted order
23:51:53 <pgimeno> absence of operator is concatenation, right?
23:52:04 <graue> no, ~ is concatenation
23:52:20 <graue> a literal number or string just pushes itself onto the stack
00:04:38 <pgimeno> I'm too tired right now to try to figure out how to do anything with sort
00:04:52 <pgimeno> I'm off to bed, good night
00:17:47 <graue> updated http://illegal.coffeestops.net:3703/sort.zip, fixed one regex bug
00:23:20 <graue> hello := "hello, " ".!" "" ? ~
00:55:11 <graue> heh, i just realized you can trick the matcher into matching a literal !
00:55:42 <graue> "r@!", if you can make sure there won't be an r at the beginning, will match only "!"
01:51:22 <GregorR> A) If you put a [, { or : somewhere where there HASN'T been one, it will work just like any other. If you put one where there HAS been one, it will still be spent.
01:51:35 <GregorR> (That is, a : placed where there has been one will still be spent)
01:52:05 <GregorR> B) If a jump is to be made, but there is no matching symbol, the jump is ignored.
01:52:26 <GregorR> IE: in [[], if it hit that first [ and decided to jump, it wouldn't, and in []] if it hit that second ] and decided to jump, it wouldn't.
02:20:53 -!- malaprop_ has joined.
02:29:25 <graue> hey Greg, ph, what do you guys think of my sorted language innovation?
02:34:56 -!- malaprop has quit (Read error: 110 (Connection timed out)).
02:37:21 <GregorR> Sorry, haven't taken a look at it yet. Also, my name is Gregor ;)
02:38:15 -!- kipple has quit (Read error: 110 (Connection timed out)).
02:43:50 <graue> eliminating all syllables but the first is a typical way of abbreviating someone's name
02:44:31 <GregorR> Yes, I'm well aware of that, but I personally don't like blunt names, such as one-syllable names starting and ending with the same letter ;p
02:46:24 <graue> so you are offended by the 99bob program in ORK, which uses someone named Bob as a mathematician?
02:50:15 <graue> or are you only offended when blunt names are used to address you?
02:51:26 <graue> anyway, check out the sort lang
02:51:37 <graue> i fixed all regex bugs of which i am aware
03:39:48 -!- graue_ has joined.
04:14:41 <graue_> i posted some thoughts on sort at http://esoteric.voxelperfect.net/research/
04:14:48 <graue_> as well as an updated package
04:14:51 -!- graue_ has quit ("Leaving").
04:27:22 <GregorR> I'm not offended by blunt names.
04:27:39 <GregorR> And if somebody wants to be called by a blunt name, I'll call them that.
04:27:41 <GregorR> I just prefer not to myself.
04:27:57 <graue> as long as you're here, why not give Sort a look?
04:28:46 <GregorR> (Please ignore my terrible Spanish :-P)
04:28:52 <graue> i don't even know what that means
04:29:18 <GregorR> In my happy universe where I know any Spanish, it means "Why not?"
04:36:03 <GregorR> So, stack elements are a sort of "variant," that can be either a number or a string?
04:36:55 <graue> if by "variant," you mean they get automatically converted to whichever form an operator requires when the operator is used, then yes
04:45:21 <graue> heh, pretty esoteric, eh?
04:46:00 <GregorR> I'm trying to wrap me brain around it.
04:46:20 <GregorR> I don't quite understand what triggers the program to end ...
04:46:38 <graue> when there is only one expression left
04:46:46 <graue> all expressions but one must have deleted themselves
04:46:48 <GregorR> OHhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
04:47:36 <GregorR> And when you create an expression with :=, what does that expression evaluate to when it gets to it?
04:48:18 <GregorR> Not when you "create" an expression ...
04:48:23 <GregorR> But when one expression translates into another.
04:48:23 -!- malaprop_ has quit ("quit").
04:48:33 <graue> translates into another?
04:49:11 <graue> an expression that is evaluated must result in exactly one value on the stack
04:49:25 <graue> that value if it is a number is converted to a string, then it becomes the new name of the expression
04:49:30 <graue> an expression that is renamed to "" is deleted
04:49:39 <graue> the number 0 converts to the string ""
04:50:09 <GregorR> It becomes the new NAME of the expression ...
04:50:59 <GregorR> And when it comes across that expression again (now with the new name), what does it evaluate to?
04:51:25 <graue> whatever the result of the expression is
04:51:45 <graue> the expression is unchanged, although the results of a regex searching the expression name list may be
04:51:55 <GregorR> So, for simple string literals, just itself, though other-------
04:51:59 <GregorR> I was just mentally computing that.
04:52:46 <GregorR> I think the doc could be helped a bit by explicitly defining all of the nomenclature at the top.
04:53:05 <graue> like "push", "pull", "regex", "expression"?
04:53:34 <graue> uh oh, the interpreter has another bug
04:54:18 <GregorR> I guess [name] := [expression] is pretty much what I was looking for, and is there.
04:54:27 <GregorR> So ... *cough* ... ignore me.
04:56:21 <graue> feel like trying a new esolang today?
04:56:51 <graue> maybe tomorrow, then
05:20:42 -!- CXI has quit (Read error: 145 (Connection timed out)).
06:25:09 <graue> i uploaded a new package fixing clobbering
06:25:30 <graue> meaning that if an expression evaluates to the name of another existing expression, it overwrites that one
06:25:37 <graue> so you can now write hello, world like this:
06:25:41 <graue> hello := "hello, world"
06:25:45 <graue> world := "hello, world"
06:26:19 <graue> this also may make it easier to write more sophisticated programs, but it's hard to say
06:55:56 -!- graue has quit ("Are you a Schweinpenis? If so, type "I am not a Schweinpenis."").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:32:56 -!- puzzlet has joined.
08:33:36 -!- puzzlet has quit (Client Quit).
08:33:39 -!- puzzlet has joined.
10:35:16 -!- kipple has joined.
11:08:56 <pgimeno> hm, it looks to me as if graue's language has a mechanism for converting the programas to SMETANA
13:16:09 -!- malaprop has joined.
13:24:46 -!- pgimeno has quit (Read error: 110 (Connection timed out)).
13:33:04 -!- pgimeno has joined.
13:38:18 -!- jix has joined.
14:21:01 -!- CXI has joined.
15:20:56 -!- graue has joined.
15:29:00 <graue> i think Sort resembles Whenever a bit
15:29:21 <pgimeno> I was wondering if it is possible to transform a SMETANA program into a Sort program
15:29:44 <graue> the ending conditions are different
15:29:54 <graue> in Sort, if it falls off the end it just goes back to the beginning
15:30:44 <CXI> you know what'd be a neat idea?
15:31:22 <CXI> a program to take a list of inputs and outputs, and use some kind of state-space search over all possible programs to find a program that matches the inputs and outputs
15:31:53 <graue> yeah, that would be cool
15:32:21 <graue> you could use it to duplicate a closed-source reverb effect
15:32:26 <CXI> it'd be easier in BF because of its' tiny instruction set
15:32:30 <graue> give it a PCM wave before and after the effect was applied
15:32:43 <malaprop> CXI: How goes the regexp esolang?
15:32:52 <graue> i wrote a program once that generated BF programs at random
15:33:00 <graue> you'd type and they would do funny things
15:33:03 <CXI> been busy since yesterday, unfortunately
15:33:28 <graue> i have a concern about the regexp esolang
15:33:41 <graue> if it uses perl for the regexp matching, doesn't that tie the language inextricably to perl?
15:34:25 <CXI> I don't think so... though I suppose there are slight regex variations between engines
15:34:44 <kipple> CXI: are you familiar with genetic programming?
15:34:55 <graue> maybe if that "perl compatible" regexp library really is, it would work
15:35:05 <graue> perl's regular expressions are not anything like a standard though
15:35:15 <CXI> kipple: I'm quite a fan of it, but not terribly familiar
15:35:36 <kipple> because it is used for what you described
15:35:47 <pgimeno> that's more or less how the first Hello world program was written in Malbolge
15:36:26 <CXI> malbolge is a fearsome beast
15:36:43 <puzzlet> malbolge is the name of hell
15:36:58 <CXI> and so appropriately named
15:37:21 <pgimeno> I'm trying to write a 'cat' program in it
15:38:20 <pgimeno> my program is already complete if the memory can be preloaded into the virtual machine; I'm now working in the initialization
15:39:08 <pgimeno> i.e. the code that sets up the memory to be as desired, but it will be several K's long
15:39:43 <pgimeno> it's a bit stalled right now until I finish the changes in my homepage though
15:40:25 <pgimeno> I'm pretty sure I won't see a quine in Malbolge
15:40:38 <pgimeno> Dis is a bit more tractable
15:40:58 <graue> poor Dis never really gets talked about at all
15:41:09 <pgimeno> yeah, I wanted to change that
15:41:38 <pgimeno> there are just a few progs ever written in Dis
15:42:01 <pgimeno> it *might* be possible to write a (real) 99bob in dis
15:43:14 <pgimeno> the main advantage of Dis is that instructions stay in their place, i.e. they do not change after being executed (as opposed to Malbolge)
15:43:34 <CXI> I thought that was an endearing feature, personally
15:43:42 <graue> we need an article on Dis in the esolang encyclopedia
15:43:53 <graue> i've never really looked at it, so it would be nice to have an overview
15:44:07 <pgimeno> if you can wait about one week more I can write it
15:47:17 <pgimeno> in "useable" Malbolge, the program flow is expressed as data (jump addresses), because instructions must be at fixed positions
15:48:06 <pgimeno> Lou Scheffer wrote an excellent article (which hooked me into Malbolge coding)
15:48:28 <jix> graue: use oniguruma for regexps
15:48:50 <graue> he's the one making the regexp language
15:48:58 <graue> unless you mean for Sort
15:49:13 <jix> for anything where regexps are used
15:49:14 <graue> Sort intentionally uses its own underpowered regexp implementation
15:49:27 <jix> CXI: use oniguruma for regexps
15:49:51 <CXI> you mentioned it before, but to be honest I've already written most of it in perl now anyway
15:49:55 <graue> jix, have you checked out sort?
15:50:25 <graue> it is at http://esolangs.org/research/
15:53:19 <CXI> I want to make a uno programming language
15:53:55 <CXI> flow control: reverse, skip
15:54:07 <CXI> IO: draw two/draw four
15:57:12 <kipple> uno? like in the card game?
15:58:03 <kipple> hehe. nice idea. (long time since I've played that)
16:37:11 <graue> hey kipple, you tried out Sort yet?
16:43:12 <GregorR> I realized a problem with my old programs.
16:43:23 <GregorR> Many of them had something like this: :@....;
16:43:44 <GregorR> The problem is, when that thread does the second loop, it defects again, hence editing the enemy!
16:44:05 <GregorR> So, *cough*, yeah, totally fubar'd code there 8-D
17:43:20 <jix> i just noticed that a FYB war ends after the 1st or 2nd bomb.. so my idea was: every player has 10 lives
17:54:42 -!- GregorR-L has joined.
17:55:09 <GregorR-L> The reason that it ends after the first is so that threads are a blessing and a curse.
17:55:22 <GregorR-L> They're nice because you can do more, but bad because they make you more susceptible.
17:55:30 <GregorR-L> I think having more lives would skew that balance.
17:56:54 <GregorR-L> Or at least, I can't think of a "lives" system that would not skew that balance, I don't know if you have something up your sleeves ;)
18:12:36 <jix> is there a language that uses analog memory
18:18:33 <GregorR-L> Would that not be similar to simply having floating-point memory elements?
18:24:44 <jix> memory positions are floating too...
18:25:00 <GregorR-L> Oh, I think I sort of see what you're saying.
18:34:04 <GregorR-L> The only command is "add to output que"
18:34:15 <GregorR-L> Any character entered is assumed to be a parameter for this command.
18:35:55 <graue> heh, already been invented
18:36:14 <graue> that was discussed on lang@esoteric a few years back
18:36:26 <graue> the main attraction of cat is that every program is a quine
18:37:12 <malaprop> Hm, the defintion for "programming language" that I have in my head requires conditionals.
18:37:25 <graue> if you add a second command to read from the output queue, you can get by like that, with no formal way of storing data
18:37:36 <graue> (you do need other commands to process the data, of course)
18:37:56 <graue> Choon works that way, its only data storage is its own past output
18:38:24 <GregorR-L> malaprop: Is HQ9+ a programming language?
18:38:58 <graue> is Sort a programming language?
18:39:51 <kipple> HQ9+ is a parody of a programming languge :)
18:39:58 <GregorR-L> malaprop: The H command outputs "Hello World!", the Q command outputs the content of the program, the 9 command outputs 99-bottles-of-beer, the + command increments the accumulator.
18:39:59 <graue> HQ9+ is a language with four commands, H = print hello world, Q = print program's source code, 9 = print lyrics to 99 bottles of beer, + = increment the accumulator
18:40:09 <GregorR-L> Hahah, I win by several seconds :-P
18:40:11 <graue> Sort is at http://esolangs.org/research/
18:40:17 <graue> it was not a contest
18:42:14 <malaprop> I would not call HQ9+ a programming language, no. But I still like it.
18:43:09 <malaprop> Hm, I'd like to see an esolang where it's impossible to write a quine in the lang.
18:43:46 <GregorR-L> Make it incapable of outputting arbitrary characters.
18:43:47 <kipple> malbolge? (I dare anyone to disprove it!)
18:44:24 <graue> i dare anyone to write a quine in Sort!
18:45:31 <graue> (man, what's the deal here? Everyone was like, "Hey, graue, we're really excited about your esoteric language," but now that I have a working interpreter no one seems to care)
18:46:32 <GregorR-L> I still haven't wrapped my head around it enough to write anything useful :P
18:49:58 <GregorR-L> \22 didn't get translated into a " for me ...
18:52:47 <GregorR-L> Whoops, up-entered in the wrong window.
18:58:22 <graue> an expression can't find itself with a regex
18:58:27 <graue> it only searches all the other expression names
18:58:49 <GregorR-L> I guess that makes sense, otherwise it would recurse forever :P
18:59:10 <graue> no it wouldn't, i just disabled that feature to make it esoteric :)
19:00:38 <graue> you realize, don't you, that it only searches expression names, not the expressions themselves?
19:03:37 <GregorR-L> I thought it searched the names and replaced with the expressions, but I'm realizing that that's wrong.
19:04:29 <pgimeno> for the record, I do consider HQ9+ a programming language, just not Turing-complete
19:04:52 <pgimeno> graue: the lack of examples makes the idea difficult to aprehend
19:07:27 <pgimeno> hm, my Spanish->English dict says "aprehender" = "seize"
19:08:36 <GregorR-L> Apprehend might be another word :P
19:09:26 -!- sp3tt has joined.
19:10:10 <GregorR-L> Though seize is right too I suppose.
19:10:57 <graue> pgimeno, i've included all the examples i've been able to come up with
19:10:58 <pgimeno> maybe grab would make more sense
19:11:11 <graue> it seems possible to make more sophisticated programs, but i haven't figured out how to do so yet
19:11:20 <graue> have you seen hello3.sort? it illustrates some features usefully
19:11:34 <pgimeno> nope, I just downloaded the zip
19:12:03 <graue> get the new tar.gz from http://esolang.org/research/
19:12:08 <GregorR-L> I'm trying to figure out how to have a decrementer ... have something like a99 := "a98", but then a98 becomes a97, etc.
19:12:10 <graue> it also fixes some bugs in the interpreter
19:12:25 <graue> well, you need at least two expressions to pull that off
19:12:40 <graue> an expression can rename only itself, but it can access only the names of others
19:13:08 <jix> graue: i care about sort.. but i need time to get an idea how to do things
19:13:14 <GregorR-L> Yeah, I figured I would need more than one, but still haven't figured out how :P
19:13:50 <pgimeno> graue: oh, by the way, http://www.esolangs.org/wiki/ redirects to voxelperfect
19:13:57 <jix> i hate this.. every day i add a new dns server to my list and the 2nd day it's down
19:14:29 <graue> pgimeno: yeah i am aware, i'm not sure if there is a way to fix that
19:14:42 <graue> (other than making it do the reverse)
19:14:53 <pgimeno> there's an ugly way, using index.html and a refresh with a relative path
19:15:27 <graue> the HTTP spec doesn't allow refreshes with relative paths
19:15:39 <graue> however, i could examine the Host: header in the request
19:15:48 <graue> i was hoping for a way to do it without editing MediaWiki :)
19:16:05 <pgimeno> you'd just need an index.php
19:16:23 <graue> i already do, it's from mediawiki
19:17:37 <pgimeno> btw, when are you going to set up the database and images backup?
19:18:45 <graue> is there demand now?
19:19:39 <pgimeno> well, I'm already backing up svn and waiting to start backing up the rest
19:19:51 <GregorR-L> Perhaps I'm confused, but it seems that the regex "a(.)" works bu "a(.!)" does not ...
19:20:09 <graue> ! and @ aren't allowed within groups
19:21:02 <graue> i think it'll search for a literal ! if you do that, actually
19:21:13 <graue> so there is a way to search for a literal ! or @, do [!] or [@]
19:25:31 <sp3tt> Is it possible to write a quine in Chef? XD
19:27:04 <kipple> btw sp3tt, is that Chef-interpreter you made available on the web somewhere?
19:27:22 <sp3tt> It has some regexp trouble when it comes to multiple bowl.s
19:44:17 <sp3tt> These troubles seem to have disappeared overnight :O
19:44:29 <sp3tt> I'll write some comments and upload it...
19:52:22 -!- Keymaker has joined.
19:52:32 <Keymaker> this channel is TOO active!!!!!! :p
19:52:53 <Keymaker> logs are filled with interesting stuff about interesting new or old languages
19:53:03 <Keymaker> i don't have time to read them nor think about them!!!!!!!!!!!
19:53:14 <graue> just read and think about Sort
19:53:20 <graue> the others can wait
19:56:43 <graue> i made it up two days ago
19:56:50 <graue> got the interpreter working yesterday
19:57:03 <graue> still have yet to figure out how to write anything more sophisticated than hello, world in it
19:59:14 <graue> it's a series of named expressions
19:59:29 <graue> at runtime, first the expressions are sorted lexically according to their names
19:59:50 <graue> then the expressions are evaluated in turn going down, and wrapping around when reaching the bottom
19:59:51 <sp3tt> GAH. Two problems is named correctly.
20:00:11 <graue> the catch is that each expression renames itself to the value it evaluates to
20:00:22 <graue> the other catch is that this renaming is the only form of data storage
20:00:36 <graue> the final catch is that an expression can only rename itself and can only examine other expressions' names
20:00:45 <graue> lexically means, it's sorted according to the results of strcmp()
20:00:57 <graue> that probably is not what "lexically" really means, i apologize
20:01:13 <graue> oh yeah, there's actually one more catch
20:01:30 <Keymaker> (well, haven't used strcmp()..)
20:01:35 <graue> the program ends when only one expression is remaining, and prints out the name of that expression (that's its only form of output)
20:01:50 <graue> an expression can delete itself by renaming itself to "", or can clobber another expression by renaming itself to that expression's name
20:02:15 <graue> the sorting is based on bytes being less than or greater, starting with the first byte
20:02:25 <graue> i.e., if you consider only capital letters, it's alphabetical
20:02:31 <pgimeno> terminate := ".!" "" ? <- that terminates any program
20:02:59 <graue> another expression could run in the meantime and rename itself to "terminate"
20:03:23 <Keymaker> too hard language for me, probably
20:03:35 <graue> well, maybe you can try it
20:03:41 <graue> it's definitely too hard for me, its inventor
20:03:53 <Keymaker> but i can't get anything done probably
20:03:55 <graue> by the way, i fixed the problem on the wiki
20:04:10 <graue> when you submit edits, it now redirects you using the proper hostname, so you can edit comfortably from http://esolangs.org
20:04:33 <kipple> Wow! I just noticed that David Morgan-Mar, the creator of Chef, Piet, Whenever etc. is the author of the Irregular Webcomic!
20:05:08 <graue> i had never heard about Irregular Webcomic until i read the wikipedia article about Mr. Morgan-Mar
20:05:14 <kipple> http://www.irregularwebcomic.net/
20:05:14 <graue> but i guess it's cool that he did something famous
20:05:42 <kipple> I've been reading that comic for a while without knowing :D
20:07:46 <graue> i hope to rename it once i learn more about its characteristics
20:07:52 <graue> http://esolangs.org/research/
20:09:30 <sp3tt> I was thinking of a very painful esolang... Using mathematics.
20:09:55 <sp3tt> It is partly based on beatnik, but instead of scrabble words, mathematical functions...
20:10:09 <pgimeno> graue: I think it may fail to be turing-complete
20:10:42 <sp3tt> A modulo operation determines which opcode a given value represents.
20:10:45 <graue> maybe it's practically, but not formally, turing-complete
20:10:45 -!- GregorR-L has quit (Read error: 113 (No route to host)).
20:10:49 <graue> http://esolangs.org/wiki/Turing-complete
20:11:40 <pgimeno> are you sure that something can e.g. do a finite loop before stopping?
20:11:58 <sp3tt> So, if the opcode for "Read from STDIN" is 3, one would have to come up with a mathematical function to return 3 at that point on the X axis XD
20:12:10 <graue> however, i do not know of a reason why that is not possible, either
20:12:48 <Keymaker> the idea about the language that uses md5 as input sounds great
20:13:11 <Keymaker> (although then there are more than one possible inputs)
20:13:43 <graue> a language with only one possible input would be pretty boring
20:14:03 <Keymaker> i mean more than one input for one md5
20:14:16 <pgimeno> well, if there's an stopper like terminate := ".!" "" ? then the only way to do a loop is to insert strings before reaching it
20:14:56 <jix> sp3tt: i had the same idea!
20:15:09 <graue> hmm, so why do you have to use an expression like that?
20:16:15 <pgimeno> graue: in order to terminate
20:16:20 <jix> but i have also an idea for an lazy evaluating bf like list based language..
20:16:27 <graue> you don't need clobbering, though
20:16:39 <sp3tt> You need an opcode to change between functions though.
20:16:42 <graue> you can make every expression but one rename itself to "" if a certain condition is met
20:16:51 <sp3tt> Imagine how representations of programs would look!
20:17:00 <graue> this should be possible between ^ and ?
20:17:07 <pgimeno> the language is "lossy" in the sense that no new expressions can be created; all you can aspire to is swapping
20:17:09 <jix> sp3tt no your function can have an unlimited set of variables
20:17:09 <sp3tt> I'll try to code an interpreter for something like that this weeken.
20:17:13 <jix> and you can change them
20:17:17 <sp3tt> Naming suggestions?
20:17:27 <jix> i want to implement it...
20:17:29 <graue> pgimeno, you can make fake variables, by adding onto the ends of names of existing expression
20:18:17 <graue> the difficulty arises only because an expression cannot look at its own name
20:18:33 <pgimeno> in any case it's a quite unamageable beast :)
20:18:33 <graue> so you have to do something like, a renames itself to a99, which makes b rename itself to b98, which makes a rename itself to a97
20:19:19 <graue> hm, i think there is a change that would make it more manageable
20:20:04 <sp3tt> kipple: http://rename.noll8.nu/sp3tt/chef.py
20:20:05 <graue> if a regex has (a)! at one point, and it matches aaa, perhaps aaa could be captured instead of a
20:20:26 <sp3tt> Has some bugs, no error reporting and it does not support stir.
20:20:31 <graue> that would make it possible for a single regex to look for "99", "4", and "", for instance
20:20:45 <sp3tt> But it is version 0.0.1 after all :)
20:20:49 <graue> also, character classes would help a lot
20:21:01 <sp3tt> Tell me what you think...
20:21:26 <graue> i don't think that makes anything possible that isn't now, though
20:21:29 <graue> it would just make it more manageable
20:24:43 <kipple> thanks sp3tt. I've written a short chef article in the wiki. Should I link to it, or do you want to wait until a more complete version?
20:25:38 <jix> i'm going to call my language lazy-brain
20:25:45 <kipple> sp3tt: so, stir and sous-chefs is all it is lacking now?
20:29:07 -!- Keymaker has quit ("Freedom!").
20:29:56 <sp3tt> Link me to the article.
20:30:12 <sp3tt> Loops are a bit buggy though...
20:30:22 <kipple> anyway: http://esolangs.org/wiki/Chef
20:31:05 * kipple must install python now...
20:31:10 <sp3tt> Thanks. Have to go now. Be back tomorrow. Esoteric for life!
20:31:12 -!- sp3tt has quit ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]").
20:33:56 <jix> lazy-brain will rule
20:34:35 <jix> it's inspired by bf and haskell
20:35:54 -!- puzzlet has set topic: Another brainfuck site (http://www.bf-hacks.org/) is open! ~ http://chriscoyne.com/cfdg/ ~ Esolang Preservation project info: http://tinyurl.com/d3fk5 ~ Esolang wiki: http://esolangs.org/wiki/Main_Page.
20:38:35 <pgimeno> I think elpp can be removed from the topic
20:41:18 -!- puzzlet has quit ("Leaving").
20:45:08 <jix> hmm i need to change some things in my concept
20:46:32 -!- pgimeno has set topic: Another brainfuck site (http://www.bf-hacks.org/) is open! ~ http://chriscoyne.com/cfdg/ ~ Esolang wiki: http://esolangs.org/wiki/Main_Page.
20:47:27 -!- graue has set topic: Another brainfuck site (http://www.bf-hacks.org/) is open! ~ http://chriscoyne.com/cfdg/ ~ Esolang wiki: http://esolangs.org/wiki/.
21:01:17 <cpressey> smetana is NOT turing complete!
21:01:28 <cpressey> looks like i'm going to have to start editing this wiki thing :)
21:02:08 <pgimeno> cpressey: lament proved otherwise
21:03:45 <cpressey> i can give you a proof that SMETANA programs are equivalent to FSA's, though.
21:04:00 <cpressey> a SMETANA program has a finit # of states
21:05:03 <pgimeno> but there's no size limit for a SMETANA program
21:05:35 <cpressey> there's no size limit for an FSA either
21:05:48 <cpressey> given a "big enough FSA" you can compute anything
21:05:57 <cpressey> that doesn't mean FSAs = Turing Machines
21:06:33 <pgimeno> that's what "practical Turing completeness" referred to :)
21:07:04 <pgimeno> I think it's just a problem on the choice of words
21:09:36 <fizzie> There is a size limit for an FSA: it must not have an infinite number of states.
21:12:18 <fizzie> Hm. Does the alphabet for a FSA need to be finite? Perhaps not.
21:15:08 <pgimeno> speaking of FSAs, Malbolge may fail to be complete enough for performing complex tasks; it has a limit of 3^10 memory positions which may be insufficient even for the requisites of writing a countdown from e.g. 65535 to 0 (let alone a true 99bob)
21:15:27 <cpressey> yes, the alphabet has to be finite IIRC
21:15:51 <cpressey> pgimeno: but is that just an artefact of implementation?
21:16:26 <fizzie> I'm not sure if an infinite alphabet would make much of a difference. Perhaps it would.
21:16:47 <pgimeno> well, it's a VM with 10 trits per register
21:17:02 <pgimeno> the 10 trits is part of the language because rotations, one of the two operators that can be used, are 10 trits
21:18:53 <pgimeno> every memory position holds a 10-trit machine word, and the instruction and data pointer and the accumulator are also a machine word long each
21:19:24 -!- Keymaker has joined.
21:19:46 <pgimeno> the machine words might be extended to, say, 24 trits and maybe that makes it useable
21:19:53 <cpressey> yeah, it might be like befunge-93 then.
21:20:10 <cpressey> or... no, even befunge has a stack, making it a PDA
21:20:45 <pgimeno> (assuming it's not Personal Data Assistant)
21:23:27 <pgimeno> I wrote my language Bitxtreme as a parody on Malbolge's capabilities
21:25:15 <pgimeno> to express with some sense of humor my doubts about it being powerful enough as to perform simple tasks
21:31:36 <pgimeno> I'm sorry you took it seriously, Keymaker
21:32:21 <pgimeno> I didn't intend to trick anyone
21:32:41 <Keymaker> you don't need to tell everyone i'm stupid :P
21:33:05 <pgimeno> heh, I also didn't intend to mean that :)
21:33:16 <kipple> Keymaker: don't worry. It's not a secret ;)
21:34:20 <Keymaker> can anyone remember the name of that esoteric language that
21:34:31 <kipple> anyway, nice to see all the updates in the wiki today.
21:34:36 <Keymaker> like the output is to 2d screen
21:34:49 <Keymaker> (as pixels and shapes like triangles and circles)
21:35:20 <Keymaker> there was even pong made in it
21:37:52 <pgimeno> that just rings a distant bell
21:38:44 <Keymaker> if i remember any correct it started with 'o'
21:41:07 <Keymaker> http://www.student.kuleuven.ac.be/~m0216922/gammaplex/Manual.html
21:43:02 <Keymaker> lol, the language has a big set of instructions :D
21:43:35 <pgimeno> I'm afraid my bell was something else
21:47:19 <pgimeno> that one is in danger of disappearing, btw
21:47:24 <pgimeno> the page is by one student
21:53:38 <lament> an overcomplicated befunge dialect
21:53:41 -!- graue has quit (Read error: 60 (Operation timed out)).
21:54:39 <lament> after befunge 94 and wierd and piet, it seems there's no new ground left for 2d languages :)
21:54:50 <lament> oh and the game of life of course
21:55:35 <kipple> I think a saw a 4d language somewhere...
21:55:45 -!- graue has joined.
21:55:48 <Keymaker> you're not the only one then i guess
21:55:58 <Keymaker> i remember seeing something like that as well
21:57:06 <lament> it was probably befunge
21:58:03 <Keymaker> i thought that befunge-like languages were called funges
21:58:12 <kipple> no, I don't think it was a funge
21:59:24 <Keymaker> http://www.cliff.biffle.org/esoterica/4dl.html
22:00:45 <lament> later funges are bizarrely complex
22:00:59 <lament> dunno if they allowed for more than 2d but seems likely
22:01:38 <lament> it's amazing how much work cpressey put in later funges
22:01:47 <lament> and i doubt anybody ever actually used them :)
22:02:03 <lament> just look at http://catseye.mine.nu:8080/projects/funge98/doc/funge98.html
22:02:52 <lament> seems like an attempt to make it a non-esoteric language
22:03:55 <cpressey> Funge-98 was mostly designed by committee (isn't it obvious? :) so I can't take entire credit :)
22:04:51 <cpressey> it's a language family, not a single language, technically, so of course it's a royal mess.
22:05:08 <cpressey> it kind of maxed out at Nefunge (n-dimensional) and Chronofunge (time-travelling)
22:05:32 <cpressey> that is the WRONG question to ask in this community :)
22:05:37 <lament> cpressey: did people ever write any programs fon any of those?
22:05:42 <Keymaker> how would time travelling work in language?
22:05:59 <cpressey> lament: they were never specified fully or implemented, so i imagine, no
22:06:02 * lament thinks of continuations
22:06:19 <cpressey> store the state of the program at every step
22:06:27 <cpressey> then when you travel back in time, restore it
22:06:38 <lament> so, continuations without returning anything?
22:06:42 <lament> seems horribly useful :)
22:06:59 <cpressey> it's the time travelling to the future that we never quite modelled :)
22:07:55 <lament> shouldn't be too hard!
22:08:29 <Keymaker> well, probably not unless the language has input
22:09:10 <lament> well, any instruction implicitly travels to the future
22:09:22 <lament> at an alarmingly fast rate of one second per second
22:10:08 <kipple> ok. how about letting the interpreter optimize it by altering the system clock instead? ;)
22:10:13 <Keymaker> hey! i got an idea: program language that has one bit as it's memory, but it can be accessed at different times
22:10:45 <kipple> neat! (as long as you can move back and forward in time)
22:10:52 <Keymaker> and since future is uncertain, the future bit, along with all the ones before it would be randomized
22:10:58 <Keymaker> so the future couldn't be predicted
22:11:24 <lament> in Choon you can access the past
22:11:49 <lament> it has one 'register' and you can access its value at any past point
22:12:17 <Keymaker> so, does this mean somebody used time travelling and stole my idea?
22:12:38 <graue> as you said, time travelling to the future isn't possible
22:12:43 <lament> well, it wasn't a one-bit register, and choon had other things as well
22:12:54 <Keymaker> yeah, so i think i can still use it
22:13:47 <lament> besides nobody knows about choon
22:13:57 <graue> it's on the wiki, everyone will know soon
22:13:59 <lament> and it wasn't the key feature of choon
22:14:05 <lament> oh, so that's how wiki works
22:14:35 <Keymaker> but seriously, since i hadn't idea about that and it isn't totally same idea, so i can't see a problem if i use this idea
22:14:46 <graue> indeed, there is no problem whatsoever
22:14:46 <Keymaker> as well, many esolangs share same features
22:14:58 <Keymaker> but this will be probably much different than any choon
22:15:08 <Keymaker> now i'll try to think with brain
22:15:30 <lament> the key feature of choon is sound output
22:15:34 <lament> nobody cares about its other features
22:16:30 <jix> ok.. lazy-brain specs are complete (in my head)
22:17:09 <Keymaker> now write them down before you forget
22:17:36 <jix> lazy-brain is brainfuck with functions,lists and lazy evaluation
22:18:30 <Keymaker> well, one could code those extras with normal brainfuck :p
22:19:05 <jix> you could code a c compiler in smallfuck+io extension
22:19:43 <lament> that would be grotesque
22:19:49 <Keymaker> i'm waiting to see your work now
22:19:56 <lament> it would be neat to write anything in smallfuck
22:20:13 <lament> compiling brainfuck code to smallfuck
22:20:53 <Keymaker> i'll write something it when i have time
22:21:50 <lament> jix: so what about this lazybrain thing!
22:22:07 <jix> lament: wait.. i post an example
22:22:24 <jix> it doesn't shows all features.. just lists and functions
22:24:54 <GregorR> Today I'm going to release a new version of FYB with a better spec (Thanks jix for telling me what things needed to be added) and more verbose output when verbose is enabled.
22:25:16 <jix> http://rafb.net/paste/results/cY9zp019.html
22:25:31 <jix> should print ABCDEFGHIJKLMNOPQRSTUVWXYZ
22:27:05 <jix> wait no.. updated specs in my head
22:27:07 <pgimeno> well, I'm going to sleep, so you guys don't flood up the log while I'm away, ok? ;)
22:27:23 <jix> lament: while he's away!
22:30:17 <jix> http://rafb.net/paste/results/pzwMJM37.html
22:32:08 <jix> its: upto a b = (a:if a==b EMPTY else upto a+1 b)
22:50:56 <jix> hmm i need to rethink some things for lazy brain
22:52:04 -!- jix has quit ("Banned from network").
22:53:42 -!- Keymaker has quit ("Freedom!").
02:04:37 -!- graue_ has joined.
02:06:27 <graue_> GregorR: is FukYourBrane really a programming language, rather than a game?
02:07:03 <graue_> it's definitely of interest to the Esoteric World, but i'm thinking maybe it shouldn't go on the language list in the wiki
02:13:10 -!- kipple has quit (Read error: 60 (Operation timed out)).
03:40:08 <graue_> the wiki doesn't have any programming languages whose names start with X
03:40:15 <graue_> someone make up a language with a name that starts with an X
04:20:42 <GregorR> graue_: I guess the question is, is RedCode a programming language?
04:22:16 -!- malaprop has quit ("sleep").
04:31:51 <graue_> RedCode may be but CoreWars isn't
04:33:35 <graue_> FYB/FukYorBrane is associated with your game, not with the language, and you use the page to describe the game, not the language
04:33:43 <graue_> hence, i'd call it a game, and not a language
04:33:59 -!- graue has left (?).
04:34:04 -!- graue_ has changed nick to graue.
04:34:48 <GregorR> I see. So where should I link to it? I'd rather not have it just be a hanging page ...
04:35:10 <graue> add it to [[Category:Brainfuck derivatives]]
04:35:50 <graue> perhaps link it from Brainfuck as a "more interesting variant", too
04:37:15 * GregorR is unsure how to get to the Category: Brainfuck derivatives page ...
04:39:11 <graue> add "[[Category:Brainfuck derivatives]]" at the end of the FYB article
05:35:31 -!- graue has quit ("Leaving").
06:28:07 -!- GregorR-L has joined.
06:30:23 <GregorR-L> Cool new verbose system implemented.
06:30:36 <GregorR-L> Produces megs of output for a run, but is very helpful.
07:45:02 -!- graue has joined.
07:45:26 <graue> i uploaded a wiki sql backup to http://www.oceanbase.org/graue/junk/sqlbackup.zip
07:45:34 <graue> so pgimeno, you can download that and stop worrying
07:45:46 <graue> it doesn't have the images, but there was only one image anyway, and it sucked, so no great loss
07:45:48 -!- graue has left (?).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
09:17:01 -!- sp3tt has joined.
09:19:17 -!- GregorR-L has quit (Read error: 110 (Connection timed out)).
09:20:59 -!- sp3tt has quit (Client Quit).
10:08:04 -!- kipple has joined.
12:22:39 -!- sp3tt has joined.
12:33:04 -!- sp3tt has quit (Read error: 104 (Connection reset by peer)).
12:37:51 -!- malaprop has joined.
13:37:17 -!- jix has joined.
14:12:36 <kipple> Gregor: are the periods at the end of each line optional in ORK?
14:13:01 <GregorR> It ignores the punctuation, but it's good for clarity *shrugs*
14:13:20 <kipple> I'm writing a polyglot, so it's nice to know these things :)
14:13:34 <GregorR> Good luck with that *head explodes*
14:13:57 <kipple> so far I have brainfuck, befunge and ORK and it was rather trivial
14:14:57 <kipple> I can put the befunge and brainfuck code straight into the file, and ORK just ignores it!
14:15:03 <GregorR> I guess since you would only need to formally comment in ORK, it ought not be too hard *shrugs*
14:15:27 <GregorR> I didn't make an } else { printf("THIS BAD CODE!!!"); }
14:15:33 <kipple> what do you mean with "formally comment"?
14:15:46 <GregorR> Well, by the spec you have to use a # to comment.
14:16:03 <kipple> hehe. same with kipple :)
14:16:22 <jix> cipple support both types of comments
14:16:51 <kipple> what is the other type? (not #)
14:17:39 <jix> 10>o This is ignored because here is no command "Hello">o
14:18:21 <jix> i tried to get as close to your interpreter as possible
14:18:43 -!- sp3tt has joined.
14:35:01 -!- J|x has joined.
14:38:28 <kipple> Yay! I've got the polyglot working with befunge, brainfuck, kipple and ORK :)
14:44:52 -!- jix has quit (Read error: 110 (Connection timed out)).
14:44:59 -!- J|x has changed nick to jix.
14:46:39 <kipple> but I intend to add several more languages
14:51:28 <kipple> program that is valid in more than one language
14:51:55 <kipple> http://en.wikipedia.org/wiki/Polyglot_(computing)
14:59:27 <kipple> still a work in progress...
15:00:49 -!- jix has changed nick to jix|essen.
15:01:30 <sp3tt> From the eight language polyglot page: "25 Jan 2001Richard StallmanThe proper name is GNU/Polyglot, damn you!"
15:03:13 <sp3tt> I am working on a language with some basic self modification...
15:32:45 -!- jix|essen has changed nick to jix.
15:37:53 -!- Keymaker has joined.
15:38:08 <Keymaker> hey! i wanna write a polyglot too!
15:38:54 <malaprop> Keymaker: Just write 'print "hello world";' and you've got python, perl, and PHP done. :
15:40:34 <malaprop> Now if you really want to have fun, write a polygot quine.
15:41:00 <Keymaker> that sounds really interesting
15:41:14 <jix> malaprop: ruby too
15:41:28 -!- Keymaker has quit ("Freedom!").
15:45:35 <jix> but for php you need <?php ?>
15:47:02 <jix> one of my polyglots: http://rafb.net/paste/results/d6Bq0K77.html
15:47:12 <jix> 4 languages
16:17:17 <sp3tt> http://rename.noll8.nu/sp3tt/mathspec.txt Comments?
16:20:21 <jix> are you going to use the 8 bf commands ?
16:27:59 <GregorR> RMS doesn't get the respect he deserves.
16:28:49 <malaprop> Did RMS create an esolang that doesn't have a wiki page?
16:29:14 <GregorR> I guess it's not a language, but it's pretty damn esoteric.
16:29:35 <GregorR> I was just referring to the quip about "GNU/Polyglot"
16:30:11 <GregorR> I'll stop calling "Linux" GNU/Linux the day I decide to release a program I care about under a weak license like BSD instead of GPL.
16:30:29 <GregorR> (Not that those are directly related)
16:32:53 <kipple> sp3tt: do you have some code examples?
16:33:24 <sp3tt> http://rename.noll8.nu/sp3tt/hw.math
16:34:26 <sp3tt> Basically uses a stack to print Hello world, when it can be done without one. Also demonstrates how to use userdefined vars in functions.
16:59:05 -!- Keymaker has joined.
16:59:25 -!- Keymaker has left (?).
17:02:25 <jix> http://rafb.net/paste/results/MmZgkY86.html
17:02:58 <jix> my 5 lang poly that prints: Just another <Insert Language Here> hacker,\n
17:03:33 <sp3tt> :O I am surprised it is even possible.
17:04:34 <jix> in c i'm using #define:s and /**/ to comment the other code out
17:04:49 <jix> in bf i jump ([-][ code ]) over the code containing ,s
17:05:03 <jix> in ruby i end the code with __END__
17:05:11 <jix> (with is defined as c macro ;) )
17:06:02 <jix> line 13,14 is a comment for bash to line 21 and for perl to 24
17:06:20 <jix> line 23 is a comment for bash to line 26
17:06:33 <jix> now i'm going to add whitespace ;)
17:09:51 <jix> i'm not going to do that
17:22:13 <CXI> [-][code] isn't really safe
17:22:53 <CXI> you were talking about something specific, not in general
17:26:29 <jix> Kipple is included
17:26:38 <jix> 6 langs.. i rule ;)
17:27:36 <jix> uh.. it's working with Cipple but not with the java interpreter
17:28:14 <jix> Cipple is very syntax tolerant =<<- is ignored because neither the first nor the second < have valid arguments
17:45:35 <sp3tt> 3 != 3 according to python...
17:50:01 <jix> 3 != 3 #=> False
17:51:05 <malaprop> sp3tt: that evaluates to False for me
17:54:32 <sp3tt> Not according to python if you don't use int() correctly first <.<
17:56:30 <jix> enough polygloting for today..
17:56:41 <jix> time to write down lazybrain specs
17:58:28 -!- OliBir has joined.
17:59:13 <jix> moin OliBir
18:03:02 -!- OliBir has left (?).
18:05:47 -!- NotGregorR has joined.
18:06:00 -!- NotGregorR has left (?).
19:21:34 <kipple> anybody familiar with C-INTERCAL here? Chris?
19:21:54 <kipple> I get an error when trying to compile the included examples
19:21:57 <kipple> ICL999I NO SKELETON IN MY CLOSET, WOE IS ME!
19:21:57 <kipple> CORRECT SOURCE AND RESUBNIT
19:38:11 -!- jix has quit ("Banned from network").
20:12:17 <pgimeno> kipple: I don't know about C-INTERCAL but that error sounds as if it depends on a file from the distribution that can't be found
20:19:02 <kipple> it's the same error that comes if I try to compile a file which doesn't exist.
20:19:37 <pgimeno> the "no skeleton" part suggest it but you never know
20:50:17 -!- sp3tt has quit ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]").
21:41:38 -!- Keymaker has joined.
21:48:41 -!- jix has joined.
21:52:10 <Keymaker> i'm gonna be few days away starting from tomorrow
21:52:39 <Keymaker> a 140km bike trip (and the other 140km back)
21:53:00 <Keymaker> the longest trip i have ever done is ~10km
22:05:53 <Keymaker> it took me about 20 mins to realize a logical error..
22:07:05 -!- graue has joined.
22:07:52 <graue> yeah, C is pretty damn annoying
22:15:10 <jix> but it's fast
22:17:29 * GregorR hugs DirectNet, OBLISK, orkc, 2lc, and FYB.
22:17:41 <GregorR> You're such a wonderful language. What power, what grace.
22:18:15 * GregorR does some pointer manipulation.
22:18:35 <graue> C is easy to learn because it does exactly what you tell it, but like, if you make large projects with it, it sort of becomes an impossible mess
22:19:34 <graue> doesn't it? right?
22:19:56 <GregorR> Any language can become an impossible mess.
22:20:04 <GregorR> Mozilla is an impossible mess because of bad design.
22:20:14 <GregorR> But yes, C doesn't HELP any ;)
22:21:49 <graue> we need an INTERCAL article at the wiki
22:21:52 <graue> anyone feel like writing one?
22:27:21 <graue> INTERCAL is one of those classic esoteric programming languages everyone praises and nobody programs in, i guess
22:32:13 <pgimeno> someone said recently in the GMP mailing list: 'C' gives you enough rope to hang yourself, and will even do the favor of throwing one end of the rope over the tree for you ...
22:32:59 <graue> i made a lame stub for INTERCAL just to have something there
22:33:21 <graue> by the way, pgimeno, did you see the SQL backup i made available?
22:33:35 <pgimeno> yes, it's here, thanks! :)
22:34:03 <pgimeno> but I suspect I'm not the only one who wants to make backups
22:34:21 <GregorR> Most people look at that rope, and go "hey, that's handy!" then kill themselves.
22:34:43 <GregorR> The trick is to use the rope to devise a pully system, and then exert less effort to get your task done.
22:34:57 <GregorR> Also, stretch all metaphores far beyond any real meaning.
22:36:41 <pgimeno> I just read partially the spec of INTERCAL, a few years ago
22:37:19 <pgimeno> some day I want to read it fully
22:37:28 <jix> wasn't INTERCAL designed to be uninterpretable/compilable?
22:37:45 <pgimeno> it was designed just to be different
22:38:10 <pgimeno> there are interpreters and compilers, or that's what I thought
22:38:14 <jix> i have my spec writing setup complete... i can start writing specs fast now!
22:38:51 <jix> pgimeno: yes but afaik they tried to make it as hard as possible to code them
22:39:16 <GregorR> An esoteric language that is neither compilable nor interpretable.
22:39:20 <kipple> I was going to try out INTERCAL today, but I can't even manage to compile the example programs :(
22:39:44 <GregorR> How about a language that acts differently depending on the author's eye color.
22:39:58 <GregorR> Since the computer can't know that, it can neither compile nor interpret it.
22:40:06 <GregorR> Though I guess it could be an input.
22:40:10 <kipple> you would need a web cam
22:40:40 <jix> How about a language that acts differently depending on the author's thoughts
22:41:11 <Keymaker> and uses author's brain cells as memory
22:41:13 <pgimeno> if the author is thinking "Sex" then it prints "Hello, world!"
22:41:32 <kipple> and if it is think "beer" then...
22:41:45 <pgimeno> that's easy in basic: 10 PRINT "Hello, World!" 20 GOTO 10
22:41:46 <Keymaker> 99 booootleeeees oof beeer on thee waaaal
22:42:57 <pgimeno> some day I'll submit my Choon program
22:43:12 <pgimeno> too bad the wav converter crashes
22:47:44 <malaprop> This sounds like the work of David R. Hawkins.
23:31:21 <pgimeno> kipple: I've reproduced the problem; when I do an strace I get this: open("/usr/local/share/intercal-0.24/ick-wrap.c", O_RDONLY) = -1 ENOENT (No such file or directory)
23:34:44 <pgimeno> there's an intercal package available for Debian, apparently (is it the first esoteric language to be in a Linux distribution?)
23:35:32 <pgimeno> two, actually; one in perl and the other seems to be c-intercal
23:35:43 -!- mathkid has joined.
23:35:44 <jix> my current specs (just lang design no syntax yet): http://www.harderweb.de/jix/langs/lazybrain/specs.rc.txt (redcloth text file) http://www.harderweb.de/jix/langs/lazybrain/specs.html the generated html
23:37:59 <GregorR> pgimeno: I'm pretty sure it's not the first, they've got Java.
23:44:59 <jix> updated my .txt => html script to output strict xhtml (the automatic content list generation is done by me... txt => html is redcloth and html cleanup is tidy)
23:47:32 -!- graue has quit (Read error: 110 (Connection timed out)).
23:49:41 <jix> i've done an important part of my specs and no one cares .. ;)
23:53:49 <GregorR> For a basic idea of "be patient," consider that it was several weeks between my writing FYB and your picking it up ;)
23:54:28 <jix> GregorR: but it was 5min between i knew about FYB and my first test program ;)
23:56:04 <GregorR> However, we cannot yet write programs in lazybrain.
23:56:33 <jix> hehe.. yes. but i just want some respond to my ideas..
23:56:36 <jix> With spelling?
23:59:22 <kipple> Yay! the debian intercal package works!
00:01:01 <jix> there is no dp intercal package
00:01:01 * kipple is reading the lazybrain spec
00:01:46 <jix> darwin ports
00:02:09 <jix> automatic downloading+(patching if needed)+compilation of source code
00:02:33 <jix> there is apt-get for osx (fink) too.. but the packages are always out of date
00:03:41 <kipple> jix: are the function's tapes local or global?
00:03:55 <jix> semi local
00:04:16 <jix> they are used for passing arguments.. but they aren't used for returning values
00:05:08 <kipple> so, whatever the function does, it does not alter the main tape? (except for the return values)
00:05:33 <kipple> ok. the spec should be a bit clearer about that methinks
00:06:14 <kipple> or perhaps not... on second reading it is quite clear :)
00:07:05 -!- graue has joined.
00:08:16 <jix> changed it a bit so that it is clear on the first reading
00:08:22 <graue> debian has the libacme-brainfck-perl package, which seems to implement brainfuck (it allows it to be mixed with perl code according to the package description)
00:09:04 -!- mathkid has left (?).
00:09:09 <graue> also, a whitespace interpreter, whitespace, is there
00:13:19 <graue> lazy brain confuses me too much
00:16:11 -!- graue has quit ("Leaving").
00:19:11 -!- graue has joined.
00:27:10 <jix> graue: why?
00:30:07 <jix> 22 commands...
00:41:40 -!- Keymaker has left (?).
00:57:01 <pgimeno> I've abandoned xhtml in favour of html4 since these M$ patents
00:57:45 -!- graue has quit (Read error: 110 (Connection timed out)).
01:01:00 <jix> Sorry! The wiki is experiencing some technical difficulties, and cannot contact the database server.
01:01:00 <jix> Can't connect to local MySQL server through socket '/tmp/mysql.sock' (61)
01:02:06 <kipple> which wiki? the esolang wiki works fine...
01:02:14 <jix> it was down for about 20 secs
01:13:24 -!- jix has quit ("Banned from network").
01:14:56 -!- graue has joined.
01:35:05 -!- wooby has joined.
02:00:20 -!- kipple has quit ("See you later").
02:10:19 -!- graue has quit ("Lost terminal").
02:53:02 -!- comet_11 has joined.
03:16:09 -!- CXI has quit (Connection timed out).
03:26:21 <GregorR> This stupid commercial says that they can give you any hair color, "within the physical limitations of electromagnetic waves."
03:26:30 <GregorR> WHERE'S MY ULTRAVIOLET HAIR?!
03:52:30 <wooby> i'm sure it could be managed with the right chemicals
03:52:43 <wooby> invisible wavelength hair is an interesting concept, lol
04:17:08 -!- GregorR-L has joined.
04:33:43 <wooby> your hair could also give other people cancer
04:36:15 <GregorR-L> But would I care? No! I'd be too brain-cancery to care.
04:39:07 <wooby> yeah if i had elite radioactive hair i probably wouldn't care either
04:42:30 <GregorR-L> When your hair flowed around, different static would be sent over the radio.
04:59:17 <wooby> it would be kind of cool to walk into a room and the TV goes bonkers
04:59:39 <wooby> "hey sonny, you dig my ku-band hair?"
05:00:49 <wooby> so i desperately want to come up with my own esolang, but i'm idea-less
05:02:09 <GregorR-L> If I came up with an idea and gave it to you, it wouldn't be your idea.
05:05:45 <wooby> yeah i know! that's the kicker
05:14:55 <GregorR-L> If I knew anything about the communication between proteins, it would be awesome to make a programming language based on genetic code :)
05:17:47 <wooby> well a hack would be to implement smallfuck, using g,t,c,a as the operators
05:18:08 <wooby> programs would look cool, anyways
05:18:46 <GregorR-L> Not authentic enough for me *shrugs*
05:19:03 <wooby> yeah me neither :\
05:24:22 <wooby> well, i'm calling it a night
05:24:37 <wooby> have to polish off some takeout and watch some law and orders
06:04:04 <GregorR-L> OK, now I know how to build peptide chains ...
06:05:14 <GregorR-L> I'm still not sure how to turn that into programming :-P
06:50:27 <GregorR-L> The function of the peptide sequences is deterministic but mind-numbingly complex.
06:54:54 -!- comet_11 has quit (brown.freenode.net irc.freenode.net).
06:54:54 -!- pgimeno has quit (brown.freenode.net irc.freenode.net).
06:54:54 -!- cpressey has quit (brown.freenode.net irc.freenode.net).
06:54:56 -!- wooby has quit (brown.freenode.net irc.freenode.net).
06:54:58 -!- lindi- has quit (brown.freenode.net irc.freenode.net).
06:54:58 -!- fizzie has quit (brown.freenode.net irc.freenode.net).
06:54:59 -!- ChanServ has quit (brown.freenode.net irc.freenode.net).
06:54:59 -!- GregorR-L has quit (brown.freenode.net irc.freenode.net).
06:55:14 -!- malaprop has quit (brown.freenode.net irc.freenode.net).
06:55:14 -!- cmeme has quit (brown.freenode.net irc.freenode.net).
06:55:14 -!- mtve has quit (brown.freenode.net irc.freenode.net).
06:55:14 -!- ZeroOne has quit (brown.freenode.net irc.freenode.net).
06:57:00 -!- ChanServ has joined.
06:57:00 -!- GregorR-L has joined.
06:57:00 -!- comet_11 has joined.
06:57:00 -!- wooby has joined.
06:57:00 -!- malaprop has joined.
06:57:00 -!- pgimeno has joined.
06:57:00 -!- cpressey has joined.
06:57:00 -!- lindi- has joined.
06:57:00 -!- fizzie has joined.
06:57:00 -!- ZeroOne has joined.
06:57:00 -!- cmeme has joined.
06:57:00 -!- mtve has joined.
06:57:00 -!- irc.freenode.net has set channel mode: +o ChanServ.
06:57:26 <GregorR-L> Well, I made a PHP genetic code -> peptide parser
06:57:26 -!- comet_11 has changed nick to CXI.
07:23:34 -!- Keymaker has joined.
07:23:47 <Keymaker> i just to came say "bye for a while"
07:24:17 -!- Keymaker has quit (Client Quit).
07:43:09 -!- graue has joined.
07:43:55 <graue> news flash: sort language gets name, nice website, faux-academic paper! details @ http://www.oceanbase.org/graue/sortle/
07:46:12 <CXI> From Esolang
07:46:12 <CXI> (There is currently no text in this page)
07:46:12 <CXI> awesome :D
07:46:45 <graue> heh, well, go ahead and make it then
07:47:13 <CXI> I would if I knew anything about it
07:47:56 <graue> i vaguely remember a programming language called GCAT that pretended to be genetic code
07:52:33 <lament> a vaguely remember hearing something about a sorting language
07:53:02 <lament> not sure if i'm hallucinating or not
07:53:49 <graue> there's the language Sorted!, but it doesn't seem very similar to sortle
07:54:16 <graue> Bubble? there's also Jeffry Johnston's Bubble, based on bubble sort
07:54:55 <graue> i hadn't gotten around to reading this yet, but it's described at http://lilly.csoft.net/~jeffryj/compilers/bubble/bubble.txt
07:59:35 <graue> is it fun? it doesn't seem to have been implemented
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:02:42 <lament> why are ^ and $ separate operators?
08:04:09 <graue> because i didn't realize they were exactly equivalent when i wrote the spec :)
08:04:35 <graue> i decided to maintain both of them just to see if anyone would notice
08:04:41 <graue> their implementation is the exact same
08:05:26 <lament> i noticed, can you remove one now? :)
08:06:32 <graue> maybe in commercial implementations, the difference will be that the ^ operator is licensed for noncommercial use only, and you have to pay extra to get the $ operator
08:06:57 <graue> i'll replace the $ operator with something better when i have an idea for another string operator that will be useful
08:09:53 <graue> maybe the opposite of ^? "" if either string is empty?
08:12:32 <GregorR-L> After I've produced peptide sequences, how should they be parsed into functional entities?
08:16:09 <graue> i'm blissfully ignorant as to what a peptide sequence represents in the first place
08:17:03 <GregorR-L> Amino acids are combined into peptide sequences, which in turn fold into proteins, which are the most prominant physical building blocks of life.
08:18:54 <graue> is this programming language supposed to be realistic?
08:19:05 <graue> what does a peptide sequence look like? GCAT and such?
08:19:48 <CXI> Gregor: well you just have to work out how they fold into proteins, and then use the proteins as functional entities :P
08:20:05 <CXI> yeah eh? :D
08:20:14 <GregorR-L> graue: Chemically speaking, they're usually written something like this: SKPRVYASQDVR
08:20:28 <GregorR-L> That's some peptide sequence in neurons.
08:27:17 <graue> well, heck if i know
08:27:24 <graue> you're the peptide expert
08:35:57 <GregorR-L> UGUCAUGUCGACGCGAGACGCGCCGUCGCACGCUUCGACUACUACUAUGCGUUCGAACUCCACCACUAA
08:35:57 <GregorR-L> UCACGCGUUCGAGCAUCGACUACGCGUGUCGAUCGACACGUCGCAUCGAACCGCAUGAUCGAUCGAUGA
08:35:57 <GregorR-L> CUCGAUCACAGUCACCGCGUCUAUUCGACCGUUCGAACGACACUCCUAUCGACGUCACCUCUCUACUAUGCUGUGCCUCGUAGCUGUACGUAG
08:42:11 <graue> what's the relationship between GCAT and GCAU, again?
08:42:24 <graue> is it A <-> T/U, G <-> C?
08:48:47 <GregorR-L> Oh, I just answered the wrong question, didn't I?
09:23:53 -!- GregorR-L has quit ("Leaving").
09:24:35 <fizzie> There's http://www.wisdom.weizmann.ac.il/~udi/DNA5/scripps_short/sld019.htm and the slides after that.
09:25:21 <fizzie> Not-really-related-but-still.
09:58:11 -!- sp3tt has joined.
10:13:29 -!- sp3tt has quit (Read error: 145 (Connection timed out)).
10:39:09 <graue> good moining, pgimeno
10:40:40 -!- GregorR has quit (Read error: 110 (Connection timed out)).
10:45:41 <pgimeno> (np: Scrap Heap - Hiccup Jam)
11:04:40 -!- puzzlet has joined.
11:17:59 -!- sp3tt has joined.
11:26:47 <graue> i wish C had ||= and &&= operators
11:28:10 <puzzlet> graue: maybe += and *= will do it
11:28:37 <graue> |= !! works, i guess
11:29:02 <graue> turns a value into 0 or 1
11:29:26 <pgimeno> the lhs should be already 0 or 1 for that to work
11:29:50 <puzzlet> what was i thinking, !! works for tribit or something?
11:30:20 <pgimeno> how are troolean operations defined?
11:30:36 <pgimeno> (if George Boole saw me write that...)
11:30:51 -!- jix has joined.
11:30:55 <puzzlet> there is crazy operators for tribits in [[Malbolge]]
11:31:01 -!- GregorR has joined.
11:32:01 <graue> how does that go? true, false, or maybe?
11:32:35 <pgimeno> I have a strong preference towards balanced trinary though
11:32:54 <graue> how about analog boolean algebra; instead of false or true everything is a float from 0.0 to 1.0
11:33:12 <pgimeno> that sounds like fuzzy logic
11:34:04 <puzzlet> how about, like GTTCAAATGGTA?
11:35:07 <graue> i swear i remember a "GCAT programming language" from somewhere
11:37:18 <puzzlet> i've seen an article about making a processor out of DNA's and RNA's
11:40:01 <puzzlet> maybe making retro-virii out of those biocomputers to infect human world will become possible ;)
12:04:33 -!- kipple has joined.
12:22:00 <jix> uhrg... some logic mistakes in my Lazy Brain design
12:25:35 -!- J|x has joined.
12:26:01 -!- jix has quit (Nick collision from services.).
12:26:09 -!- J|x has changed nick to jix.
12:30:15 -!- GregorR has quit (Read error: 60 (Operation timed out)).
12:32:27 -!- GregorR has joined.
12:37:16 <jix> ok.. that should work now
12:41:17 <kipple> graue: I've read the Sortle spec. it's not clear to me how to push values onto the stack.
12:41:50 <kipple> there are a list of operators that work on the stack, but I can't find how to acutally get any data on the stack in the first place...
12:42:00 <sp3tt> "Befunge and BrainF*ck are both toy languages written expressly to be perverse in some way (Befunge to be uncompilable, and BrainF*ck to be absurdly minimalist.)"
12:57:42 <sp3tt> http://slashdot.org/comments.pl?sid=32469&cid=3504293
13:01:23 -!- sp3tt_ has joined.
13:02:52 <kipple> bah. he got a slashdot entry for a polyglot with just 4 languages??
13:09:55 -!- sp3tt has quit (Read error: 60 (Operation timed out)).
13:10:01 <graue> kipple, literal numbers or strings push themselves onto the stack
13:10:10 <puzzlet> he sees uncompilability as absurdness?
13:11:27 <puzzlet> every language is compilable though
13:11:38 <kipple> ok. so will the expression "12" push 12 or 1 and 2 onto the stack?
13:12:28 <kipple> ok. so how do you separate numbers? space? comma? semicolon? (is this missing from the spec, or am I blind?)
13:13:01 <graue> terms are separated by spaces
13:13:42 <kipple> ok. you might want to make the spec a little clearer on this...
13:16:26 -!- smart has joined.
13:16:53 <graue> http://www.oceanbase.org/graue/sortle/sortle.pdf
13:17:28 <graue> the format used is spelled out in "Source Code Format"
13:25:12 -!- smart has quit (Read error: 104 (Connection reset by peer)).
13:33:29 -!- GregorR has quit (Read error: 104 (Connection reset by peer)).
13:37:33 -!- sexy has joined.
13:38:04 -!- sexy has quit (Read error: 104 (Connection reset by peer)).
13:39:01 <jix> i have a 5lang polyglot
13:40:05 -!- GregorR has joined.
13:40:09 <kipple> but I intend to add more
13:43:36 <jix> what languages has your poly?
13:43:55 <kipple> BF, befunge, kipple, Ork and chef
13:44:07 <jix> bash perl ruby c and BF
13:44:32 <CXI> no malbolge?
13:44:44 <jix> i have also a version with kipple but it doesn't work with the online interpreter (with cipple it does)
13:45:18 <jix> does the java interpreter ignore << ?
13:45:38 <jix> cipple does because in $E=<<#&>/dev/null there is no valid command
13:45:54 <jix> and i use heredocs to seperate ruby,perl and bash code
13:46:09 <kipple> i assume my interpreter will give an invalid stack identifier error or something
13:48:57 <kipple> hmm. here's a thought: If I allow < to be used as a stack name, then this expression could be used: a<<b (a.push(<.pop()); <.push(b.pop()) )
13:49:56 <jix> cipple ignores everything that isn't valid code
13:50:21 <kipple> yeah. well the spec doesn't say anything about that, so that's ok
13:51:41 <kipple> hmm. I think I will allow ANY character as a stack name in the next version, except numbers, whitespace and #
13:51:47 <graue> i like the a<<b idea
13:55:05 <kipple> then a<+++>b would be valid code (brainfuck/kipple polyglot would be very nice)
14:07:33 <jix> no a stack
14:07:47 <jix> and a command
14:07:49 <kipple> it's either a stack or an operator
14:16:36 <jix> a friend of my brother is a friend of the false inventor
14:19:26 <kipple> hmm. should I keep stack names case insensitive, or change to case sensitive?
14:20:58 <CXI> I just realised a much easier way to write my regex language
14:21:29 <CXI> I can do away with function names entirely
14:21:45 <CXI> and just make it repeatedly reapply the regexes
14:22:46 <graue> kipple: i have no opinion on that at the moment
14:23:04 <kipple> not a big deal, but it might break some old programs
14:25:57 <kipple> yeah. screw backwards compatability :)
14:26:59 -!- sp3tt__ has joined.
14:27:02 -!- sp3tt__ has changed nick to sp3tt.
14:27:20 <CXI> real men don't need backwards compatibility
14:31:56 -!- graue_ has joined.
14:40:09 -!- graue has quit (Read error: 145 (Connection timed out)).
14:41:51 <sp3tt> http://slashdot.org/comments.pl?sid=32469&cid=3505272 rofl
14:44:45 -!- sp3tt_ has quit (Read error: 110 (Connection timed out)).
15:01:31 -!- graue_ has quit (Read error: 110 (Connection timed out)).
15:02:25 <CXI> chef is awesome
15:06:06 -!- graue_ has joined.
15:25:27 -!- graue_ has changed nick to graue.
16:01:01 * CXI tries to figure out 99 bottles
16:01:52 <CXI> in Two Problems :P
16:02:02 <CXI> see, I'm not actually sure if it's turing complete
16:02:31 <CXI> basically I figured I can just make it a list of regular expressions and evaluate them in order, rewinding the list if any match
16:07:24 <CXI> I made it count from 1 to 99
16:07:27 <CXI> so that's something :D
16:07:35 <CXI> but I just need to find a less braindead way of doing it
16:13:15 <sp3tt> Heh. My maths based language can print 99 bottles, but it's not pretty xD
16:13:29 <sp3tt> http://rename.noll8.nu/sp3tt/beer.math
16:16:56 <CXI> http://members.dodo.com.au/~sgentle/99.2p
16:17:04 <CXI> that only counts up to 99 :(
16:17:25 <CXI> well, technically it counts down from 99
16:17:40 <CXI> but it adds to the front of the list
16:18:52 <sp3tt> At least it proves the name fits the language.
16:19:16 <kipple> or maybe it should be called 99 problems
16:19:42 <CXI> but a bitch ain't one?
16:20:19 <CXI> (google 99 problems if you don't get it)
16:20:49 <kipple> ah. didn't know it was a song
16:52:39 <graue> i just invented and implemented a new language
16:53:06 <kipple> wow. these languages sure keep popping up lately...
16:56:53 <CXI> now you see why wikipedia is so afraid of them
17:21:12 <graue> i think the interpreter works, now it's time to write hello world
17:27:11 <graue> why does "k">@>o in kipple produce 7?
17:27:17 <graue> shouldn't it produce the ascii value of k?
17:28:23 <kipple> "k">@ pushes 3 values onto @, 1, 0 and 7. @>o only pushes one value onto o, nemaly 7
17:32:47 <kipple> "k">@ (@>o) would be the way to do that
17:42:19 <kipple> "k">( would give an error that ( is not a stack
17:42:37 <kipple> though I have considered allowing that
17:44:31 <pgimeno> CXI: are there specs for 2p already?
17:46:44 <CXI> heh, not really... I want to make sure it's turing complete first
17:47:32 <pgimeno> have you seen Thue? it's turing-complete
17:50:23 <CXI> hmm, interesting
18:17:00 -!- graue has quit ("Leaving").
18:17:12 -!- graue has joined.
18:32:40 <pgimeno> does anyone have a description of PingPong?
18:55:45 <ZeroOne> pgimeno: http://web.archive.org/web/*/http://www.inz.info/pingpong/
18:56:21 <pgimeno> wee, thanks! I tried it in the past to no avail.
18:57:00 <ZeroOne> no problem. :) archive.org is sometimes a true jewel.
18:58:26 <pgimeno> however I mean that I tried archive.org in the past but I got an error or a not found
18:59:05 <ZeroOne> oh, ok. maybe you tried some wrong address then?
19:00:04 <pgimeno> I don't know what happened
19:00:22 <pgimeno> I'm pretty sure I tried that at least twice a few weeks ago
19:01:12 <pgimeno> Wikipedia redirects to the Pong game :(
19:01:49 <GregorR> I've got an idea for my genomic programming language :)
19:02:18 <GregorR> My peptide chains will stack rather than fold, and simply based on every-other amino acid being "compatible"
19:02:44 <GregorR> Certain peptide chains will be attracted to the "output" receptor, and will cause the data on them to be output.
19:02:56 <GregorR> Same with input, except a new peptide chain will be created.
19:03:10 <GregorR> I'm still working on breaking peptide chains.
19:04:40 <ZeroOne> good luck with that genetic manipulation then. ;) bbl. ->
19:07:28 <graue> damnit, the storage available to programs in my language is dependent on code size
19:07:43 <graue> i'll have to change something to fix this
19:08:41 <graue> (it took me two hours to realize that)
19:09:51 <pgimeno> graue: do you mean Sortle or the new one?
19:09:55 <kipple> how so? can't both the expressions and the expression names be of arbitrary length?
19:11:34 <graue> actually, if a program reads input up to EOF, it has as much storage as it wants because it can keep getting new zero bytes
19:11:39 <graue> but that's not very pretty
19:13:12 <pgimeno> what's the opinion about having all of the languages of the List of Lesser Known Languages in the Wiki, with a category just for them?
19:14:13 <kipple> pgimeno: about this wiki-category "Lesser known programming languages". what exactly do you consider lesser known?
19:14:22 <graue> well, they're jokes, right?
19:14:38 <graue> if they're significant in your opinion they could go on the joke language list
19:14:49 <graue> kipple: the list is an old joke posted to usenet in the 80's
19:14:56 <graue> of languages that didn't exist
19:15:30 <graue> one of them, VALGOL, has since been implemented
19:15:44 <pgimeno> is there such a list already created?
19:15:49 <kipple> anyway, I think this "joke language" category has some issues
19:16:26 <kipple> while some languages are just a joke (Bitxtreme, HQ9+), some are fully functional
19:17:04 <graue> is it interesting for more than humor value to you?
19:17:53 <graue> so that's why it's a joke
19:18:07 <graue> HQ9+ is just as fully functional; it's been implemented
19:18:40 <kipple> well I was talking about being actually usable.
19:20:00 <kipple> INTERCAL (and a lot of other esolangs) isn't really interesting to me for more than humor value, either
19:20:21 <pgimeno> so do you want to make a list of remarkably useable programs as opposed to a list of joke languages?
19:20:51 <kipple> no. I want ALL languages in the main list, and several categories to classify them further
19:21:05 <pgimeno> kipple: I was asking to graue, sorry
19:21:17 <pgimeno> and I agree with kipple: arguably most esoteric languages are jokes
19:22:11 <kipple> and where the line between jokes and interesting languages go is highly subjective
19:23:06 <pgimeno> yeah I think that the wikipedia approach of adding a short explanation of the language together with the name is a good idea
19:23:26 <pgimeno> I thought that that was possible with categories, hence my comment some days ago
19:23:55 <pgimeno> but it turns out not to be possible, so the main list seems to be the proper place
19:25:53 <lament> i think it's reasonable to split languages into turing-complete, non-turing-complete, and unknown
19:26:15 <lament> that would filter out hq9+ which is not turing-complete
19:26:36 <graue> that's a good idea, categories for computational class
19:26:44 <kipple> I disagree. turing-completeness isn't that important
19:26:54 <graue> of course, SMETANA and Befunge-93 are not Turing-complete, but still interesting
19:27:02 <graue> Argh! is not Turing-complete
19:27:17 <lament> s/turing-completeness/anywhere close to turing :)
19:27:18 <graue> kipple: doesn't mean it isn't a nice category idea though
19:27:32 <graue> we can have as many sets of categories as we like
19:27:48 <kipple> very true. we should have a bunch of categories
19:28:05 <lament> i still have no idea what makes smetana/befunge better than hq9+ computationally
19:28:11 <pgimeno> indeed I've added some already (Lambda calculus paradigm)
19:28:12 <lament> actually befunge is turing-complete i think
19:28:24 <graue> it had a limited code size
19:28:26 <kipple> you can program with smetana/befunge. You cannot program in HQ9+ ;)
19:28:42 <cpressey> turing complete != "you can program in it"
19:29:19 <kipple> turing completeness is often overrated IMHO
19:30:03 <graue> maybe a "finite state machine with enough states to do a lot of useful things at least" category
19:30:05 <lament> "TC with memory restriction" is important
19:30:12 <lament> which is handwaving of course
19:30:24 <lament> but essentially means "as good as computers"
19:30:48 <lament> befunge and smetana can do as much computation as a computer
19:31:43 <graue> i still like the cat programming language: every program is a quine!
19:31:51 <graue> what category should that one go in?
19:33:32 <cpressey> "TC with memory restriction" = finite state automaton = lookup table, at least in terms of computability
19:33:46 <cpressey> the really interesting thing is not just computability then
19:34:09 <cpressey> i've looked in the literature and there's really nothing that i could find about it
19:34:12 <pgimeno> "Useable for programming"?
19:34:26 <CXI> can write 99bob in it? :D
19:34:38 <cpressey> can write 'n' bottles of beer, maybe
19:34:42 <pgimeno> I was just suggesting it being a Category:Useable for programming
19:34:59 <graue> i think it's spelled Usable
19:35:11 <cpressey> CXI: actually, no, you're right
19:35:26 <cpressey> it's like, being able to write 99 bottles of beer, in less space than writing out the song literally
19:35:45 <CXI> (don't laugh, there's a gzip quine)
19:36:09 <pgimeno> that's also what the malbolge program did
19:36:12 <cpressey> well, if wang tiles are a computer then...
19:37:43 <kipple> graue: I think both spellings are allowed
19:38:20 <kipple> at least, in smb.conf you can use both writeable and writable ;)
19:39:03 <pgimeno> my English-Spanish dict does not list "useable", so it's probably wrong
19:39:33 <jix> my dict: usable also: useable
19:39:41 <graue> don't you hate it when you make a wonderful elegant symmetrical Turing tarpit with just the right level of pain and it turns out the storage available is limited by how many nested loops you use?
19:39:44 <kipple> yeah. dictionary.com too
19:40:00 * pgimeno throws his dict out the window
19:40:05 <jix> http://dict.leo.org/?useable
19:40:34 <graue> i hate it when that happens
19:42:59 <kipple> okay: how about distinguishing between pure joke languages (HQ9+, bitxtreme etc.) and humorous, though still useful languages
19:43:02 <cpressey> graue: sounds like a push-down automaton
19:43:47 <cpressey> a category for languages clearly intended as jokes would work, i think
19:44:05 <pgimeno> a category plus a little mention in the list, IMO
19:44:08 <lament> well, just because a language is intended as a joke, doesn't mean it can't be useful
19:44:18 <lament> (as in turing-complete)
19:44:38 <lament> not that i can think of any examples at the moment
19:45:08 <graue> suppose the joke category is only for languages which both were clearly intended as jokes and have not attracted significant attention from others after their creation
19:45:10 <cpressey> the problem is this is that unless the author makes the entry, we're sort of left to try to read their minds
19:45:11 <lament> yeah, ook and the like.. i'm not even sure they deserve a mention
19:45:21 <lament> they aren't even jokes
19:45:34 <lament> it's not funny, it's sad
19:45:54 <graue> to clarify my preceding statement, significant attention as us[e]able languages :)
19:46:01 <kipple> well, I thought the Hello World program in Ook! was pretty funny the first time I saw it...
19:46:23 <cpressey> i'd actually like a rating/voting system , but that's probably beyond the scope of a wiki
19:46:33 <cpressey> like: 3 people thought this was amusiing, etc
19:46:35 <graue> i think the fact that we're whining about Ook! on irc is enough reason to document it, but it shouldn't be on the main list
19:47:33 <pgimeno> I think it could be, with an entry like this: * [[Ook!]] (joke), direct translation of [[Brainfuck]] commands
19:49:10 <cpressey> it could be in a "alternate representations" category
19:49:31 <lament> but only ook and cow would be in it
19:49:43 <CXI> doublefuck
19:49:48 <CXI> the huffman encoded BF
19:49:54 <pgimeno> heh, that opens a whole new can of worms: is Malbolge an alternate representation of Dis? is it the other way around?
19:50:02 <kipple> isn't fuckfuck one of those as well?
19:50:20 <lament> so all alternate representations are alternate representations of brainfuck
19:50:40 <lament> perhaps they could all be grouped in one article then.
19:50:40 <CXI> there's a nice list on wp: http://en.wikipedia.org/wiki/Brainfuck#Languages_based_on_brainfuck
19:50:57 <lament> along with smalfuck and the like
19:51:21 <pgimeno> that's a good idea, lament
19:51:23 <kipple> there is a difference in "based on" and "exactly the same" though
19:51:49 <lament> but are there any bf-based languages that really deserve any attention? :)
19:52:44 <cpressey> erm... i'm not sure i'd call the lambda calculus a "paradigm"...
19:53:03 <kipple> I think we should aim to include every esolang, even ook, fuckfuck, cow etc. but those could be bunched together in one article, referenced from the BF article
19:53:21 <graue> and if the most succinct way to describe it is "it's Brainfuck with a...", it belongs in that article
19:53:23 <pgimeno> cpressey: sorry, I'm not an academic, feel free to correct it
19:53:36 <CXI> yeah, I think that's a good approach too
19:54:01 <cpressey> pgimeno: ok (still reading the diffs from the past few days :)
19:54:56 <pgimeno> so the only remaining question is whether they should be listed in the main list or not
19:55:20 <pgimeno> I think they should, so that anyone looking for a particular language can find them
19:55:25 <kipple> about this "program forms" category: what exactly should be in it? only abstract concepts like the ones there now, or also things like hello world and 99bob?
19:56:17 <CXI> I think categories for the level of presence of a langauge would be nice
19:56:24 <CXI> probably measured in the amount of works there are for it
19:56:55 <CXI> spec/compiler or interpreter/sample programs etc
19:56:57 <kipple> CXI: yeah. but where to draw the line.....
19:57:08 <cpressey> also, SNUSP looks like a bf descendant and a 2-d language, should probably be in both cats
19:57:19 <CXI> well, you wouldn't necessarily have to draw any lines
19:57:46 <CXI> just have category:compiler/interpreter exists or whatever
19:58:59 <kipple> cpressey: I agree, but graue apparently disagrees.
19:59:06 <graue> SNUSP and LNUSP are both derived from PATH, so if any of them should be in the BF-derived category, all should probably be
20:00:08 <kipple> graue: the SNUSP article is written by you, right?
20:00:12 <graue> SNUSP is the most interesting of them and in its modular version it doesn't really look anything like brainfuck code, but core snusp is indeed close
20:00:25 <kipple> well, it says: " Core SNUSP is a two-dimensional Brainfuck with a more flexible way of expressing loops"
20:00:42 <graue> well, most SNUSP programs are written in Modular SNUSP
20:00:42 <kipple> and " Core SNUSP is essentially Brainfuck with a two-dimensional control flow"
20:01:26 <kipple> CXI: how about category:implemented ?
20:03:42 <CXI> yeah, that's nice
20:06:45 <CXI> the wikipedia Chef Hello World isn't well-formed
20:06:46 <CXI> no title :D
20:07:45 <pgimeno> it's becoming apparent that there should be a list of categories to categorize each language (sorry for the repetition): joke, usable, implemented...
20:08:01 <kipple> CXI: it has a title. it's comments it lacks.
20:08:27 <CXI> mm? it doesn't have anything above "Ingredients." though
20:08:34 <CXI> oh, wait, we may be looking at different pages
20:08:40 <CXI> incidentally, this made me laugh:
20:08:41 <CXI> The following code should theoretically translate to the peptide HELLQWQRLD, (cross fingers).
20:08:41 <CXI> TACGTACTTAATAATGTTACCGTTGCAAATCTAATC
20:09:31 <CXI> okay, yeah, the one on [[Chef programming language]] is okay
20:09:52 <CXI> I was talking about [[Hello world program in esoteric languages]]
20:11:52 <kipple> well, now it is correct :)
20:12:12 <kipple> pgimeno: yes. there are a LOT of potential categories
20:13:07 <kipple> for instance: I think we should have a "stack-based" category
20:13:46 <CXI> stack-based meaning which languages?
20:14:00 <kipple> but what exactly is that? only langs with only one stack, like befunge, or including languages like Chef and Kipple?
20:14:36 <pgimeno> I think that including all; that makes it easier to look for a particular language which is stack based
20:15:01 <jix> languages that use stacks as its main/only data structure
20:15:11 <kipple> what do you call the brainfuck datastructure? tape?
20:15:17 <CXI> I'd call it a tape, yeah
20:15:38 <pgimeno> I'm going to write an attempt of a [[Categorization]] page
20:15:46 <jix> but there are 3 different tape types.. no ends.. one end.. 2 ends
20:15:51 <sp3tt> 99 esoteric languages on the web, 99 esoteric languages.
20:16:18 <sp3tt> You look one up and code a song in it, 98 esoteric languages on the web.
20:16:25 <jix> drink 99 bottles of beer and write a new...
20:16:42 <sp3tt> Rather 99 cans of jolt
20:17:00 <kipple> alternatively: stay up late, write a spec. 100 esolangs on the web.
20:17:09 <cpressey> "Hello, 99 bottles of beer on the world!"
20:17:45 <graue> pgimeno, make it an [[Esolang:Categorization]] page
20:17:56 <graue> meta stuff should be in the Esolang namespace since mediawiki likes it that way
20:18:01 <kipple> jix: I don't think it is necessary to be THAT specific with the cats
20:18:14 <jix> hehe.. yes..
20:18:27 <sp3tt> cpressey: that needs a quine!
20:18:39 <graue> you missed a fourth type of tape, jix, the kind that loops around
20:18:47 <graue> unless you count that as "no ends"
20:19:08 <jix> and the one that has one end end loops at the other end
20:19:12 <sp3tt> Sugar high... Ugh.
20:19:35 <CXI> how about a 99bob-based language
20:20:06 <sp3tt> A brainfuck translation with parts of the lyrics.
20:20:40 <sp3tt> On the wall, go to the store all represent different operations. XD
20:20:53 <CXI> 13 letters of "Hello, world!" on the wall, 13 letters of "Hello, world!" Take one down, pass it around, 12 letters of "Hello, world!" on the wall.
20:20:55 <kipple> CXI: yeah! it could have 99 commands. Each verse a different one
20:21:31 <kipple> so you would need four lines of code to do the equivalent of a brainfuck >
20:22:05 <kipple> 99 commands in the spec. 99 commands.
20:24:47 <kipple> write one down and pass it some arguments. 98 commands in the spec
20:26:40 <graue> hmm, i'm tempted to add a debugger or an assert command to this esolang of mine, but that would be cheating
20:27:43 <CXI> I want to write a language made entirely of asserts
20:28:06 <CXI> it just brute-forces the input until it matches all your asserts and then returns it :P
20:32:18 <cpressey> graue: i have to say, sortle's pretty neat
20:36:42 <jix> CXI: hmm prolog?
20:37:24 <jix> if you write your own naive sort function in prolog it scales O(n!*n)
20:37:37 <jix> in the worst case
20:37:54 <cpressey> (hm, maybe "unimplemented" would be a better category than "implemented")
20:38:38 <jix> i need a language where i have a simple platform independent canvas i can draw to and get mouse events from
20:39:43 <jix> non esoteric
20:41:07 <jix> hmm ruby/tk.. but i don't know tk
20:41:44 <lament> don't know about ruby but python has a very good tk reference :)
20:42:09 <jix> there are ruby/tk tutorials and references
20:42:37 <lament> then stop complaining :)
20:43:05 <jix> i don't want to learn how to use tk just for a stupid canvas
20:46:15 <pgimeno> http://www.esolangs.org/wiki/Esolang:Categorization <- my first attempt
20:46:23 <graue> cpressey, sorry for the delayed reaction but cool, i'm glad you like it
20:47:54 <cpressey> graue: np... do you suspect that it (umm) "admits computation" or not?
20:48:45 <cpressey> i like that there is no strict requirement that esolangs be TC... it provides open research questions.
20:50:15 <graue> i suspect that it admits computation, yes, although i haven't thought of a way to show this
20:52:21 <lament> hm, do "lesser known programming languages" have to be a category?
20:52:41 <pgimeno> well, there are quite a few and I think they deserve one
20:53:06 <graue> heh, everything's going to be in like ten categories
20:53:06 <pgimeno> but if you have a different thought you're welcome to expose it
20:53:48 <lament> "turing tarpit" seems a problematic category
20:53:57 <pgimeno> ultimately I'd add an "esolang" category
20:54:08 <lament> what's a tarpit and what's not
20:54:19 <lament> e.g. Lazy K could be trivially made one instruction shorter
20:54:40 <lament> so it dosen't have "as few instructions as possible"
20:54:56 <jix> lament: doesn't lazy k needs i for church integers ?
20:55:19 <lament> jix: i can be represented with s and k
20:55:55 <jix> how can you be represented with s and k? ;p
20:56:08 <CXI> lazy k? that sounds a lot like unlambda
20:56:29 <jix> lament: how can you...
20:57:07 <jix> CXI: but unlambda has unneeded commands with side effects
20:57:14 <jix> lazy-k is side effect free
20:57:17 <CXI> so which came first?
20:57:25 <cpressey> combinatory logic came first ;)
20:57:36 <lament> pgimeno: i guess "purely functional" deserves a category
20:57:38 <CXI> is that where s/k notation came from?
20:57:49 <lament> CXI: unlambda came first
20:57:51 <cpressey> lament: there's a "functional programming" cat now
20:57:55 <pgimeno> I don't know much about functional programming
20:58:11 <lament> cpressey: yes, and also "functional paradigm" :)
20:58:37 <lament> but there's a difference between functional and purely functional
20:58:44 <lament> unlambda is functional
20:58:54 <pgimeno> "functional paradigm" has 0 members now, it can die
20:58:57 <lament> iota, jot, lazy k are purely functional
20:59:12 <cpressey> lament: not a difference worth categorizing on, imo... or if it is, call it "referentially transparent"
20:59:25 <lament> pgimeno: paradigm sounds better though :)
21:00:04 <pgimeno> I'm not sure if Thue has a different paradigm and if it's worth being included in any if so
21:00:51 <lament> there's even a name for it
21:01:23 <cpressey> rewriting languages could be their own cat
21:01:30 <pgimeno> I was tainted to include that but I was not sure as I've just said
21:01:32 <cpressey> (ignoring that any language can be described as a rewriting language :)
21:02:08 <cpressey> at some point, for categorization, you just have to go on what the author probably intended...
21:02:23 <lament> would malbolge go in "Unusable"?
21:02:41 <pgimeno> I don't think it's categorizable yet...
21:02:55 <lament> there should be category: unknown TC status
21:03:04 <lament> a very important category imo
21:03:06 <cpressey> i think ben intended "hellishly difficult" rather than purely "unusable" :)
21:03:08 <pgimeno> it's usable to some extent, but it's possible that as an FSA it has too few states
21:04:06 <pgimeno> is anyone editing the Esolang:Categorization page?
21:04:48 <lament> can turing tarpit be a subcategory of turing-complete?
21:06:21 <CXI> what's tarpit mean, anyway?
21:06:49 <cpressey> a pit full of tar, like LaBrea :)
21:06:50 <pgimeno> I don't remember the details nor where I read about that
21:06:57 <lament> i don't think tarpit is a useful category for esolangs
21:07:00 <lament> most esolangs are small
21:07:01 <cpressey> where all the dinos got stuck...
21:07:09 <CXI> I know what an actual tarpit means
21:07:21 <lament> i propose to just keep turing-complete
21:07:39 <cpressey> a turing tarpit is just "arbitrarily low # of instructions"
21:07:49 <cpressey> for some def'n of "instruction"
21:08:08 <lament> pgimeno: what do you think
21:08:34 <pgimeno> I think that it's useful to hold Turing tarpits as a [sub]category
21:09:01 <lament> and i definitely propose we invent a word for "turing-complete with memory constraint"
21:09:04 <pgimeno> and that it's listed in the categorization list
21:09:07 <lament> and use that as a category :)
21:09:18 <pgimeno> lament: that's FSA and is there
21:09:41 <lament> but FSA sounds almost insulting
21:10:04 <lament> brainfuck is listed as a turing tarpit
21:10:19 <pgimeno> together with "Usable" it will be meaningful enough I think
21:10:39 <lament> but most brainfuck specifications make it a FSA
21:10:46 <lament> including the original one
21:11:59 <lament> it's not enough to be a FSA
21:12:08 <lament> it has to be "easy to extend"
21:12:34 <lament> brainfuck, befunge, smetana can all be trivially extended to arbitrary size
21:13:52 <lament> but that's not a sufficient condition either
21:14:09 <lament> brainfuck without loops is a FSA, right?
21:14:53 <cpressey> brainfuck without loops is, um... a tuple of integers? :)
21:14:59 <lament> yes, but a "turing-complete with memory constraint" language must have loops
21:15:08 <lament> so not all FSA qualify
21:15:27 <lament> (by loops i mean some way of making it not halt, at the very least)
21:15:30 <cpressey> lament: i would tend to agree, but (as i mentioned before) i can't find *anything* in the literature about it
21:16:01 <lament> you know your language is nowhere near TC when you can determine if a program halts with current computational resources :)
21:16:36 <lament> (and in befunge you can already write a program that won't ever halt or repeat state)
21:18:41 <lament> how about "brainfuck-complete"
21:20:12 <lament> "brainfuck-complete with upper memory bound 80 cells"
21:20:23 <lament> "brainfuck complete with arbitrary memory size"
21:21:10 <pgimeno> I'm not sure that's a serious name :)
21:21:37 <lament> how serious does it have to be? :)
21:22:34 <lament> the nice thing about it
21:22:44 <pgimeno> I'm somewhat puzzled... if an algorithm is required to stop, and a Turing machine is required to run an algorithm, and a SMETANA program can implement any algorithm... how come SMETANA is not Turing-complete?
21:22:49 <lament> is that if you say "BF-complete with upper memory bound 40"
21:23:05 <lament> and everybdoy will know approximately what class of problem it can solve
21:23:40 <jix> pgimeno: semnta can't store an infinite number states.. some algorithm require infinite states
21:23:57 <lament> jix: no algorithm requires infinite steps
21:24:08 <lament> jix: unless it doesn't halt, in which case it doesn't matter what it requires
21:24:23 <lament> any halting algorithm can be implemented in smetana.
21:24:30 <cpressey> if you come up with an algorithm that requires n steps, i can come up with one that requires n+1
21:24:31 <lament> but you have to know memory requirements in advance.
21:24:48 <lament> smetana is brainfuck complete :)
21:25:01 <pgimeno> oh, that's a point, lament
21:25:05 <jix> btw i'm going to use ruby/tk .. seems to be very simple
21:25:40 <cpressey> pgimeno: turing machine can do more than just algorithms, it seems
21:25:51 <cpressey> turing machines can hang, algorithms can't
21:25:55 <pgimeno> I think that's THE point: given an arbitrary algorithm, you can't know in advance how much memory it will take
21:26:43 <cpressey> the thing with "BF-complete with upper memory bound n" is that it's the same as "FSA with upper state bound m" or "lookup table with x entries"
21:27:22 <pgimeno> nope, some FSAs can't compute certain things (e.g. Brainfuck without loops)
21:27:50 <lament> cpressey: all bf-complete with upper bound languages are FSA
21:27:53 <cpressey> they *can*, they just need more states
21:27:54 <lament> cpressey: but the reverse is not true
21:28:38 <lament> you can compile brainfuck to this language.
21:28:48 <lament> and run your program with memory size n.
21:29:17 <cpressey> so you are saying that: not all FSA are languages that can have brainfuck compiled into them?
21:29:32 <pgimeno> uhm, I think I'm getting cpressey's point
21:29:41 <lament> cpressey: i think so.. is that wrong?
21:29:44 <cpressey> you mean brainfuck with finite tape?
21:30:00 <fizzie> I would consider "BF-complete with upper memory bound n" is more like linear-bounded automata, not a finite state automaton.
21:30:19 <fizzie> I mean, a FSA must always terminate (for finite input).
21:30:42 <lament> that's exactly what we were looking for
21:30:55 <cpressey> ok, so the claim is: exists F, F is an FSA that cannot be the result of translating a (finite-tape) brainfuck program to an FSA
21:31:29 <lament> cpressey: it's not just that
21:31:49 <lament> cpressey: it's that your language should be capable of expressing all the FSA corresponding to all the brainfuck programs with up to that memory size
21:32:30 <cpressey> lament: i'm sorry, that still sounds like "equivalent to an FSA" to me.
21:32:45 <lament> http://en.wikipedia.org/wiki/Linear_bounded_automaton
21:33:15 <graue> by the way, i'd prefer if wiki articles did not link directly to user or talk pages
21:33:23 <fizzie> As far as grammars go, linear-bounded automata (turing machine with a tape length limited to the input; what I would guess brainfuck-with-n-sized-memory) can recognize all context-sensitive grammars, IIRC. Type-1 grammars in the Chomsky hierarchy.
21:33:28 <graue> (so it is possible to mirror just the content, if anyone should later want to do that)
21:33:36 <fizzie> While finite state automata only recognize type-3 languages.
21:33:54 <lament> cpressey: but LBA seems to be equivalent to brainfuck complete :)
21:34:06 <cpressey> but LBA is already coined as a term :)
21:34:17 <lament> it would seem that LBA is a subclass of FSA
21:34:22 <cpressey> i only wish there was a ref on wp
21:34:48 <cpressey> graue: should there be entries for people (instead of linking directly to user pages?)
21:34:52 <fizzie> Why would they be? The grammars they can recognize are a superset of those FSA:s can.
21:35:06 <lament> fizzie: they have a finite number of states.
21:35:08 <cpressey> they can (e.g._ fail to halt, you mean?
21:35:16 <graue> cpressey, i suppose so
21:35:28 <lament> anyway LBA should definitely be a category
21:35:52 <jix> the language i'm writing atm is a LBA
21:35:56 <fizzie> If you want something more distinctive than just "turing-complete/not-turing-complete", why not use the chomsky hierarchy?
21:36:00 <lament> and most of the stuff that's now in "Turing complete" should migrate to LBA... which is kindof sad :(
21:36:03 <CXI> incidentally, anyone want to see the perl script I use for Two Problems?
21:36:17 <lament> fizzie: I like that idea
21:36:52 <jix> you implemented it in perl.. you should call it 3 problems..
21:37:03 <cpressey> LBA still seems not quite right... size of tape = function of input size.
21:37:14 <cpressey> this is compicated by the fact that many of these languages are interactive
21:37:30 <CXI> http://members.dodo.com.au/~sgentle/2probs.pl
21:37:39 <lament> well, IO is supposedly irrelevant to turing-completeness
21:37:40 <fizzie> Anyway, every language an FSA recognizes can easily be recognized by an LBA (so L(FSAs) is a subset of L(LBAs)), and there are languages that can't be recognized by a FSA but can with a LBA (so L(FSAs) is a _proper_ subset of L(LBAs)).
21:38:04 <CXI> I should really fix that eye-bleedingly horrible bit
21:38:08 <cpressey> irrelevant to computation, yes
21:38:17 <lament> cpressey: but yeah, you're right
21:38:26 <cpressey> who the heck uses computers for computations anymore?
21:38:29 <lament> but that can be a separate category
21:38:45 <CXI> plus if you don't output anything your program is really easy to optimise
21:39:21 <lament> CXI: because of the halting problem
21:40:04 <lament> CXI: consider a program that tries to express every number as a sum of two primes
21:40:15 <CXI> well, you could call a halting program an optimisation of a non-halting program
21:40:18 <CXI> and then you're safe
21:40:19 <lament> starting with 4 and going up
21:40:30 <lament> when it finds one it can't express, it halts
21:40:37 <CXI> pgimeno: syntax is 2probs.pl sourcefilename arguments
21:40:43 <lament> go and optimize that, you'll win the fields prize and get a million dollars
21:40:48 <CXI> http://members.dodo.com.au/~sgentle/99.2p if you missed it before
21:41:10 <CXI> prints numbers from 1 to 99
21:41:24 <pgimeno> CXI: sorry, I'm postponing taking a look at your prog right now (will look at it later)
21:41:38 <CXI> and also prints an error message that I've been too lazy to fix (this isn't really production-quality) :P
21:41:42 <lament> input is a valid point
21:42:15 <lament> nah... i don't think so.
21:42:24 <lament> you could store all input in the body of the program :)
21:42:38 <CXI> I thought the input question was about two problems
21:43:09 <lament> wrt to IO there're three types of languages i think?
21:44:04 <lament> perhaps the first three could be categories
21:44:14 <sp3tt> A Swedish site sells custom badges... I'm thinking about ordering one with "hello world" in brainfuck XD
21:45:01 <jix> nah.. order "you are dumb" in bf.. if someone asks you what it means ... :D
21:45:21 <ZeroOne> cpressey: what's that language called Version you've added to the language list?
21:46:05 <ZeroOne> it's rather hard to find information about esoteric programming languages, let alone a language with that kind of name. I hope you've got its homepage address somewhere written down...
21:47:00 <sp3tt> Need to find a program that generates brainfuck that outputs a certain string...
21:47:29 <jix> sp3tt: do it manually .. generate delta values for the string and use multiplication to shorten the code
21:47:54 <lament> okay, added IO capabilities categories
21:48:04 <pgimeno> ZeroOne: http://catseye.mine.nu:8080/projects/version/doc/version.html
21:49:00 <sp3tt> I have a BF interpreter in python around here somewhere...
21:49:23 <CXI> or do what I do, be lazy and generate output in binary instead
21:51:54 <CXI> a la http://bur.st/~comet/xmas.b
21:52:06 <pgimeno> yuck, /me merges lament's changes with his own ones
21:53:36 <pgimeno> NB: I preferred "cell-based" instead of "tape-based" because that way it can be applied to fungeoids et al, which in my opinion share the same idea
21:54:35 <lament> i think i just overwrote your changes again
21:54:58 <graue> you can't overwrite someone's changes
21:55:13 <graue> if someone has edited since you pulled up the edit form, it just gives you an edit form again
21:55:32 <lament> then what is pgimento 'merging'?
21:55:33 <sp3tt> The program should output "Your brain is fucked" XD
21:55:50 <lament> i just killed the entire turing-completeness class of categories
21:56:49 <graue> did we decide on abolishing the Turing tarpits category or keeping it?
21:57:01 <graue> if we keep it, it could be a subcategory of Turing-complete, which might be good
21:57:04 <lament> it has nothing to do with computational complexity
21:57:17 <lament> besides most languages in it are probably not turing-complete :)
21:57:21 <graue> so we are keeping it, though?
21:57:30 <pgimeno> why have you removed the turing completeness?
21:57:31 <lament> well, it's the only category that actually has something in it
21:57:35 <pgimeno> bf is not turing-complete?
21:57:37 <graue> Brainfuck is Turing-complete with unbounded memory, and it is usually specified as such
21:57:45 <lament> pgimeno: i replaced it with "computational class"
21:57:46 <graue> even if the original implementation didn't do it that way
21:57:58 <lament> pgimeno: turing complete/linear bounded automata/finite state automata
21:58:08 <lament> what we were just discussing for an hour
21:58:13 <pgimeno> oh, that's a renaming then :)
21:58:32 <lament> but it does get rid of the amazing "usable" and "not usable" categories :)
21:58:35 <fizzie> There's pushdown automata between those two last ones, but I'm not sure there would be many languages in that one.
21:58:51 <lament> thue is a LBA of course?
21:59:09 <pgimeno> I think it's Turing-complete
21:59:38 <lament> is this classification called "Computational class"?
21:59:42 <lament> or "Computational complexity"
21:59:52 <lament> what should the category for languages of unknown class be named
22:00:14 <fizzie> I was going to utter "computational complexity" at one point, but I'm not quite sure now.
22:01:04 <pgimeno> I had written: * Usable for writing programs // ** [[:Category:Usable]] // ** [[:Category:Unusable]] // ** [[:Category:Usability unknown]]
22:01:17 <fizzie> "Computational complexity" reminds perhaps too much of time/space-complexity, which is really a different issue.
22:01:31 <graue> [[Category:Unknown computational class]]?
22:01:48 <lament> usability is different from computational class
22:01:59 <lament> and i'm not sure if it's a good category anyway
22:02:08 <lament> who are we to decide what's usable :)
22:02:13 <lament> just ask any sane person
22:02:19 <lament> none of the languages on the wiki are usable :)
22:02:26 <fizzie> I did connotation-mapping (read: googled for it) and came up with pages about P != NP, so perhaps the '-- class' is better.
22:02:59 <pgimeno> malbolge is usability unknown
22:03:23 <lament> that's also reflected in its computational class
22:03:46 <fizzie> The computational class for HQ9+ would be something even more restricted than FSA, wouldn't it?
22:03:48 <cpressey> graue: how about "open research questions" or similar?
22:04:10 <lament> then you would have to specify each time
22:04:11 <lament> what exactly the question is
22:04:18 <lament> there're different research questions
22:04:40 <lament> HQ9+ has infinite states :)
22:06:38 <fizzie> I seem to recall some pushdown-automata-like language (single stack, no other real storage), but now I've forgotten it. How is befunge classified, btw? At least '93 has that 80x25 fixed size limit...
22:07:10 <lament> does LBA have to have arbitrarily big storage?
22:07:29 <cpressey> lba tape size is a function of input size (according to wp)
22:07:55 <lament> then LBA is not a very good description at all :(
22:08:26 <cpressey> a brainfuck program can do something to an infinite input with only a finite tape
22:08:39 <cpressey> "do something" = turn a's into b' or whatever
22:08:53 <fizzie> Well, it's a good description as far as grammars recognizable by the language are considered, but it's perhaps not a very good measure for real-world things.
22:09:09 <lament> brainfuck-complete then? :)
22:09:34 <cpressey> heheheh BANCStar! i remember BANCStar (DIMLY...)
22:10:12 <lament> how do you distinguish between a language like brainfuck that can turn all a's to b's
22:10:17 <lament> and a language that can't do anything else? :)
22:11:01 <fizzie> As far as real-world uses are considered, most people want more than a "yes/no" answer from their programs, too, so Chomsky hierarchy (which is about the strings accepted by the program) probably isn't that good a category.
22:11:02 <cpressey> lament: that appears to be an open research question :)
22:11:42 <lament> we have to be fair to no-IO languages
22:12:21 <pgimeno> I've just made a few changes: moved Turing tarpits as a subcategory of Turing complete, added String-rewriting paradigm, and usability (Usable by default; otherwise [[Category:Unusable for programming]] and [[Category:Usability unknown]])
22:12:53 <sp3tt> I understand why brainfuck is named brainfuck <.<
22:13:04 <fizzie> You could cheat and classify as Turing-complete all languages that are "turing-complete if not a simple memory space restriction of K, the changing of which would not change the language semantics _that_ much", but that's horribly unexact.
22:13:05 <cpressey> i ought to design and implement that someday
22:13:06 <lament> perhaps" usable for programming" is the best classification after all
22:13:25 <lament> fizzie: that's what i proposed
22:13:30 <lament> fizzie: "brainfuck-complete"
22:13:55 <lament> which is actually pretty exact if you specify brainfuck cells to contain 8 bits or whatever
22:14:03 <cpressey> i still think it (somewhat uninterestingly) comes down to a compression problem
22:14:27 <cpressey> a TM with a 1000-symbol tape is a FSM, but it is a much more compact representation
22:14:58 <cpressey> now, *why* it is a more compact representation - that is an interesting question
22:15:19 <cpressey> every programmer seems to intuitively understand why, but where's the bloody formalism?
22:15:25 <fizzie> It's not really a FSM. (There's the halting thing, for one -- it can do state transitions without consuming input.)
22:15:47 <lament> these chomsky things are completely useless
22:15:53 <lament> as are the original turing things
22:15:57 <lament> because of their notion of "input"
22:16:38 <sp3tt> Sigh. I can't even construct a simple loop in bf.
22:17:08 <sp3tt> That should decrease the current memory cell with ten, right?
22:17:09 <cpressey> link for BogusForth seems to be dead
22:17:23 <fizzie> Assuming the next memory cell was zero, apparently.
22:17:48 <lament> okay screw it, let's just keep "usable" :)
22:17:57 <lament> and have the category:usable itself be an "open research question" :)
22:17:59 <pgimeno> BF-complete was already used by Fraans Faase, btw
22:18:15 <lament> it's a natural way to classify things :)
22:18:48 <fizzie> Does brainf*ck specify any limitations to program length, btw?
22:18:54 <pgimeno> but not in that sense I'm afraid
22:19:13 <ZeroOne> should we have some Template:Stub like in Wikipedia? we could use one to mark articles that only have one sentence or so.
22:19:18 <fizzie> Befugne (93) would (probably) not be brainf*ck-complete, then.
22:19:36 <lament> so that's still a crappy definition :)
22:19:53 <lament> "brainfuck-complete with memory and code restriction" just doesn't sound very good
22:19:56 <pgimeno> ZeroOne: looks like a good idea
22:20:31 <lament> how about HQ9+ complete :)
22:21:02 <lament> well, not HQ9+, but have a list of problems that a language should be able to do
22:21:14 <lament> the only side effect is allowing a language that does nothing but those problems
22:21:15 <cpressey> "code restriction" opens up a whole new can of worms
22:21:46 <lament> but apart from that, it seems pretty good..
22:21:49 <cpressey> i'm much happier just leaving all the contentious stuff uncategorized, btw.
22:22:05 <lament> it will also give people things to do
22:22:20 <lament> implement the "qualification" programs in all the languages :)
22:23:09 <cpressey> what are our "qualification" programs?
22:23:38 <fizzie> I always write a befunge interpreter, but perhaps that's not a good idea. :p
22:23:38 <cpressey> what does it qualify the language for?
22:23:55 <jix> 99 bob using substaction and looping
22:24:06 <lament> well, 99 is not a great program
22:24:11 <ZeroOne> pgimeno: ok, here's the template in action: http://esoteric.voxelperfect.net/wiki/Ale
22:24:14 <fizzie> You probably can use an "approved by esowiki" stamp on the marketing brochures after that.
22:24:16 <cpressey> for some def'n of "subtract" and "loop" i suppose :)
22:24:52 <lament> a bunch of math problems... number factorization.. sorting..
22:25:14 <lament> none of it is relevant mathematically speaking
22:25:45 <lament> but in real world terms, it means a lot when something like Chess was implemented in befunge
22:25:56 <fizzie> Heh, and will we specify for how large inputs do these qualification programs need to work? The befunge qsort is pretty limited, for example, since all the data must fit on the playfield.
22:26:41 <pgimeno> lament: TPK may be what you're looking for
22:26:55 <fizzie> Your (plural you) use of the "we" pronoun is contagious.
22:26:57 <pgimeno> http://www.cs.fit.edu/~ryan/compare/
22:27:11 <graue> i don't think the stub template is a good idea
22:27:19 <graue> it makes the site look messy and unfinished
22:27:29 <graue> just let stubs be stubs and if someone cares they'll be expanded
22:27:36 <lament> fizzie: note however that you can implement the actual algorithm in befunge
22:27:51 <lament> or, for example, in smetana
22:28:53 <pgimeno> graue: the intention is to have a more or less detailed description of each language, not just a quick overview like now, right?
22:29:25 <lament> and it's just that really
22:29:30 <lament> it's not about the size of input
22:29:31 <graue> yes, but that'll happen when it happens
22:29:36 <lament> it's about being able to write non-trivial code
22:29:38 <graue> making the pages look a mess isn't going to speed it along
22:30:17 <lament> why is there so little math in all of this :(
22:30:59 <pgimeno> graue but it would be good to create the sensation that the intention is detailed descriptions, and without the stub notice it seems like they're more or less complete
22:31:39 <graue> almost everything is a stub now
22:31:54 <cpressey> it's fairly clear that more info can be added
22:32:00 <pgimeno> yeah, but it would seem as if the intention is to have just short descriptions
22:32:05 <cpressey> and if no one does, well, we live
22:32:18 <lament> consider the following language:
22:32:19 <cpressey> we could add a note in the list
22:32:23 <lament> it's "seemingly turing-complete"
22:32:28 <lament> it has no interactive IO
22:32:36 <pgimeno> cpressey: yes, that's another way
22:32:41 <lament> when a program terminates, if the state is "hello world", it gets changed to ""
22:32:55 <lament> Is this turing-complete?
22:33:17 <lament> no matter what i do i can't get it to output hello world
22:33:48 <cpressey> lament: i've come across that before (actually ben did)... it seemed like a representation problem
22:33:57 <cpressey> you can output hello world in e.g. binary ascii
22:34:27 <cpressey> i think it came up because ben thought the original wierd couldn't output ascii 0
22:34:42 <cpressey> which it could, but it still raised an interesting question
22:35:03 <cpressey> say (eg) the alphabet of symbols you can write is a subset of those that you can read
22:35:10 <cpressey> is that turingmachine still tc?
22:35:27 <jix> because a turingmachine is always tc
22:35:34 <cpressey> (unless the subset is like the null set or something)
22:36:14 <cpressey> right, which makes me wonder about judging turing tarpits based on # of symbols (they can all be encoded in e.g. unary even, if you ignore the problem of "telling where the program stops")
22:36:20 <lament> ok, i officially give up and advocate to use "usable"/"unusable"
22:36:59 <lament> tarpits are just small languages
22:37:14 <lament> actually do they have to be small?
22:37:17 <pgimeno> cpressey: any file can be coded in unary
22:37:18 <lament> i thought the requirement was
22:37:27 <lament> "everything is possible, but nothing of interest is easy"
22:37:40 <graue> that's the derivation
22:37:53 <graue> the meaning is "a Turing-complete language with few symbols/instructions"
22:38:47 <pgimeno> yeah, "turing tarpit" is not well defined
22:39:23 <lament> there's nothing magical about tarpits vs non-tarpits
22:39:32 <pgimeno> it's more like a definition by enumeration of the currently accepted TTs
22:40:53 <cpressey> pgimeno: yes, the "problem" is "where does it stop?" (i'm not saying it's a "real" problem... just that it might be, depending on how you look at things)
22:41:11 <lament> the problem with the TC stuff is that everybody uses TC to mean "almost TC"
22:41:40 <pgimeno> cpressey: stop in what sense? I don't get you here; if you have a file you know where it stops, and if you have a binary number you also do
22:41:41 <lament> eg on the smallfuck page
22:41:45 <lament> "Like Brainfuck, Smallfuck is Turing-complete. Provided you have an implementation that can initialize memory cells arbitrarily before running the program and print out their content when the program ends, you can use Smallfuck to make any kind of calculation."
22:41:53 <cpressey> or, there's a bald claim to TC with no proof
22:42:19 <lament> when smallfuck is explicitly defined to have some memory limit
22:42:21 <cpressey> TC and implementations shouldn't mix
22:42:57 <cpressey> pgimeno: how do you know how it stops without having either a) a terminator symbol (which is not the same as your unary symbol) or b) a file size (which is stored how?)
22:43:40 <pgimeno> cpressey: yeah, I agree about the terminator symbol; but translation to a file is made by storing the number with a '1' prepended
22:44:15 <pgimeno> i.e. a one byte file is the digit 1 plus the 8 bits of the file
22:44:16 <cpressey> pgimeno: i don't quite follow - is '1' the file size?
22:44:28 <lament> yet i keep having a feeling there's SOME sort of math behind this :(
22:44:33 <cpressey> but can you stor *that* in unary?
22:45:30 <pgimeno> cpressey: you can store in unary e.g. 257 which is 100000001, meaning the file with the ASCII character <SOH>
22:47:10 <pgimeno> but you need a terminator char if you use unary anyway
22:47:26 <cpressey> oh, ok - if you have a max file size (which all real filesystems do,) yes, i can see that
22:48:11 <sp3tt> Ok, Brainfuck totally rocks, pwns, and is teh shit!
22:48:12 <pgimeno> that's "the EOF problem" which also rises in compression theory
22:51:06 <cpressey> pgimeno: a max file size? well... all i meant was that in practice, you don't use bignums ;)
22:51:23 * cpressey sees an "esoFS" approaching on the horizon :)
22:51:41 <sp3tt> ++++++++++[>+++++++++<-] >-.>++[<+++++++++++>-]<.++++++.---.>++++++++[<---------->-]<--.>++++++++[<++++++++>-]<++.>++[<++++++++>-]<.>++[<-------->-]<-.++++++++.+++++.>++++++++[<---------->-]<++.>++++++++[<+++++++++>-]<+.>++[<+++++>-]<.>++++++++[<---------->-]<---.>+++++++[<++++++++++>-]<.>+++[<+++++>-]<.>++[<--------->-]<.++++++++.------.-.>++++++++[<-------->-]<---.
22:52:03 <pgimeno> calamari was working in one for his shell
22:52:53 <sp3tt> That prints "Your brain is fucked!"
22:53:14 <sp3tt> Esoteric filesystem? LOL
22:53:23 <sp3tt> Chef-FS, imagine that.
23:03:10 <graue> i've been thinking of writing up an Esoteric Software License for interpreters i write
23:03:29 <graue> viral licenses have been done, but not polymorphic viruses!
23:13:11 <sp3tt> XD A badge with green text on black background.
23:13:41 <sp3tt> And the text is a brainfuck program that outputs "Your brain is fucked".
23:31:22 -!- sp3tt has quit ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]").
23:35:28 <lament> that's a very long program.
23:35:31 <lament> i bet it could be shorter.
23:37:28 <lament> cpressey: perhaps program growth vs. problem complexity growth has something to do with it
23:37:39 <lament> not sure what exactly those two would mean
23:37:59 <lament> (it = "turing-complete-likeness")
23:38:21 <lament> so yeah, "compression", asymptotically
00:05:16 <jix> i've designed turing-complete language with only 5 instructions
00:05:40 <jix> wait.. i can reduce it by one
00:06:30 <jix> it's name is XUML
00:07:08 <jix> it has 4 instructions: X = flip bit value
00:07:27 <jix> U = User interact (takes argument)
00:08:40 <jix> L = Loop (takes argument)
00:08:46 <jix> M = Move (takes argument)
00:08:48 <kipple> Yay, a language starting with X. at last :D
00:09:15 <jix> i just noticed my syntax definition is wrong
00:09:22 <cpressey> lament: yeah, something like that... there are still a few books that looked promising at the library that i didn't check out; i'll keep looking...
00:13:07 <lament> i won't be at all surprised if nobody ever researched this seriously
00:13:53 <lament> mainstream CS seems to look at these things from a very different perspective
00:14:24 <lament> ignoring interactive IO and such
00:20:19 <lament> it seems the basic concepts CS operates with (in this regards) are not exactly the basic concepts relevant to esolangers
00:24:34 <graue> new language, hooray, fanfare etc: http://www.oceanbase.org/graue/qdeql/
00:25:50 <lament> that's turing complete?
00:26:45 <jix> urgh i don't want to write XUML programms
00:26:59 <lament> (and did you forget about reenqueuing the 0 after a \ ?)
00:27:04 <graue> lament, i haven't proved it, but it intuitively seems so
00:27:24 <graue> if the byte is zero during a \ it just gets lost
00:27:25 <jix> is there any way to extend the queue size ?
00:27:33 <graue> yeah, it's dynamic
00:27:45 <graue> starts out empty, then you add to it
00:28:24 <graue> \ lets you enlarge and shrink the queue :)
00:28:31 <lament> what does - do on an empty queue
00:28:45 <jix> the boolfuck code: [[+]+] is LLLXXLXX in XUML
00:28:54 <graue> like it says, "dequeueing produces 0 if the queue is empty," so that's how it works
00:29:21 <jix> which is Loop(Flip Flip Loop(Flip) Flip)
00:29:28 <graue> jix, i like what i'm hearing
00:29:31 <graue> keep up the good work
00:30:25 <jix> you have to double flip (XX) because you cant place a subloop at the start of the parent loop
00:31:34 <jix> i didn't wanted to add control characters
00:32:00 <graue> well, i meant insane in a good way
00:34:33 <jix> UXXUUXXXUXXUUXX prints a newline
00:37:45 <jix> but only if it's the last outputting command
00:46:53 <jix> auto converted (BF=>BOOF=>XUML) programs are going to be so fucked long
00:50:03 <jix> > is MMLXX and < is MLX
00:55:07 <kipple> I want to add a category for languages where the source is not a text file, like Piet. But what to name it? non-text based languages? doesn't sound too good in my ears...
00:55:23 <jix> non-ascii ?
00:55:38 <kipple> that would exclude some text-based langs
00:57:33 <kipple> languages whose input is not in the form of a character stream is perhaps a bit verbose ;)
01:08:38 <kipple> yeah, that's better :)
01:11:22 <kipple> about the categories: do we really need categories for deterministic or one-dimentional?
01:11:40 <kipple> shouldn't we just assume they are, unless otherwise categorized?
01:12:08 <jix> ++++++++++[>++++>++++++++++>+++++++<<<-]>>>++.<+.+++++++..+++.<++++.<+++[>----<-]>.>++++++++.--------.+++.------.--------.<<+++[>++++<-]>++.<++++++++++.
01:12:16 <jix> is autoconverted 14kb
01:13:03 <jix> but it outputs the same thing as the boolfuck=>xuml ULXULXULXXULXXULXULXXULXXULXXULXXULXXULXXULXULXXULXULXXULXULXULXXULXULXXULXXULXULXXULXULXULXXULXULXXULXXULXULXXULXXULXULXULXULXXULXXULXULXXULXULXULXXULXULXXULXXULXXULXULXULXULXULXULXULXXULXXULXULXXULXULXULXXULXXULXULXULXXULXXULXULXULXULXXULXXULXULXXULXULXXULXXULXULXXULXULXULXXULXULXULXXULXULXXULXXULXULXXULXULXULXXULXXULXULXXULXULXXULXXULXXULXULXULXULXXULXXULXULXULXXULXXULXXULX
01:13:29 <jix> the xuml handwritten version is even shorter
01:14:29 <jix> oh.. made some.. mistake in the autoconverter
01:14:34 <pgimeno> kipple: Deterministic should indeed be the default, but one-dimensional is already the default
01:15:22 <pgimeno> note that in http://www.esolangs.org/wiki/Esolang:Categorization there's not a category, meaning it's default
01:15:24 <kipple> ah. that's what you've meant by not adding links for things like one-dimensional and Implemented?
01:16:14 <pgimeno> imperative and deterministic may be default too
01:16:21 <kipple> btw, i don't think 2D langs should be a subcategory og multi-D langs
01:16:26 <graue> i think Implemented should be a category, though
01:16:37 <graue> who's going to want to search for Unimplemented languages? they're no fun
01:16:43 <graue> and there are a lot of them
01:16:54 <graue> and why not, kipple? makes sense to me
01:17:03 <kipple> somebody looking for somehting to implement perhaps?
01:17:11 <kipple> I don't see the benefit
01:17:18 <graue> maybe, but Implemented are generally more interesting, i think
01:17:45 <graue> do you see the drawback? i don't
01:18:07 <graue> multi-D-but-not-2D languages are special and can be easily found by looking in the base multi-D category
01:18:11 <graue> what's the problem with that?
01:18:12 <pgimeno> I separated 2D and Multi = (3+)D, for the record
01:18:23 <kipple> just adds clutter to the multi-D page
01:18:36 <graue> no it doesn't, it only adds one category to that page
01:19:21 <pgimeno> well, it's fine with me that way
01:19:24 <kipple> well, true. lets keep it that way then
01:19:24 <graue> stuffing all the 2D langs on there would add more clutter
01:21:08 <kipple> ok. I'm changing deterministic to default (removing category)
01:23:05 <kipple> ok. let me know when you're done then
01:26:36 <kipple> btw, why is there an extra colon in the categories on that page? ( [[:Category:Nondeterministic]])
01:27:02 <pgimeno> because otherwise that page would also be added to the category
01:39:56 <graue> hmm, what counts as Implemented?
01:40:13 <pgimeno> at least an implementation exists
01:40:15 <graue> what if only some features work, or the newest version of the spec isn't implemented, or the implementation is really buggy?
01:40:45 <graue> like, suppose the only Brainfuck interpreter supported +-<>., and [] support was "coming soon", implemented or no?
01:40:56 <pgimeno> that's worth some notes in the text
01:41:29 <pgimeno> me too, plus explain the situation in the text
01:41:33 <jix> fuzzy logic!
01:45:36 <graue> do we need both Usability unknown and Unknown computational class?
01:46:02 <pgimeno> well, Malbolge is Usability unknown and Finite state automata
01:47:15 <kipple> hey! bitxtreme is a non-textual language, right?
01:47:41 <kipple> isn't the source code binary?
01:48:52 <kipple> well, now that category has at two languages! :D
01:49:00 <graue> Choon belongs there
01:49:07 <graue> oh wait, no it doesn't
01:49:13 <graue> source code only, right?
01:50:01 <kipple> though it is a bit special
01:51:30 <kipple> I know. I was talking about the output
01:52:05 <pgimeno> I'm talking about bitxtreme
01:52:07 <graue> there's no zero-dimensional category for NULL to go in?
01:52:28 <pgimeno> I didn't think one single language would qualify for a category
01:53:33 <kipple> hmm. so bitxtreme is text based after all? darn
01:54:05 <graue> someone needs to make a new zero-dimensional language somehow, i guess
01:54:09 <kipple> How should we categorize language level? is low / high enough?
01:54:14 <graue> but it's not like such a thing is possible
01:54:24 <graue> Homespring and ZOMBIE would be "very high"
01:55:33 <kipple> a scale then: turing tarpit - low - medium - high - high as a kite ;)
01:56:15 <graue> well, i'm going to sleep, you have fun categorizing articles
01:56:26 <graue> and maybe you can add Qdeql to the wiki if you feel like it
01:56:34 -!- graue has quit ("Leaving").
01:57:52 <pgimeno> I'm not for categorizing language level
01:58:32 <pgimeno> hm, on second thought maybe it helps looking for "powerful" languages
01:59:17 <kipple> I think high/low should be enough
01:59:23 <pgimeno> oh, var'aQ is not still there
02:00:13 <kipple> I also think we should have a category for strongly metaphored languages (Chef, Shakespeare, ZOMBIE)
02:00:40 <pgimeno> ZOMBIE looks pretty regular in my opinion
02:00:50 <pgimeno> but yes, there are a few more
02:00:53 <kipple> ok, perhaps not ZOMBIE
02:01:09 <kipple> or maybe it should be called Themed languages
02:01:19 <jix> bf2xuml conversion is so baaad
02:01:32 <jix> boolfuck2xuml is ok
02:01:52 <pgimeno> bad as in slow, or bad as in does not work?
02:02:10 <jix> bad as in output is very long
02:02:48 <jix> [-] auto-converted is a 500 byte XUML code
02:03:15 <pgimeno> you need an optimizing compiler
02:03:46 <jix> but the bad part is the bf2boolfuck
02:04:34 <jix> [-] is in boolfuck (not autoconverted) [+]>[+]>[+]>[+]>[+]>[+]>[+]>[+]> and autoconft to XUML LXMLXLXMLXLXMLXLXMLXLXMLXLXMLXLXMLXLXMLX
02:19:58 -!- jix has quit ("Banned from network").
02:25:38 -!- kipple has quit (Read error: 60 (Operation timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
09:20:44 -!- kipple has joined.
10:08:24 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
10:27:39 -!- puzzlet has joined.
10:29:53 -!- puzzlet has quit (Client Quit).
10:29:57 -!- puzzlet has joined.
10:31:03 -!- puzzlet has quit (Client Quit).
10:31:06 -!- puzzlet has joined.
10:32:57 -!- CXI has quit ("If you're reading this, it's probably x-chat's fault.").
10:37:01 <puzzlet> what client CXI was using?
10:37:54 -!- CXI has joined.
10:48:55 -!- sp3tt has joined.
11:01:10 -!- sp3tt_ has joined.
11:09:42 -!- sp3tt has quit (Read error: 60 (Operation timed out)).
11:29:46 -!- jix has joined.
11:58:30 <jix> XUML parser done
12:34:07 -!- J|x has joined.
12:34:21 -!- jix has quit (Nick collision from services.).
12:34:45 -!- J|x has changed nick to jix.
12:35:32 <jix> XUML interptreter done..
12:40:03 <jix> my tc language with only 4 instructions
12:40:08 <jix> X U M and L
12:40:48 <jix> and no other syntax elements (no () no [] no white-spaces no {}...)
13:50:53 <jix> wow autoconverted bf => XUML hello world is 12 kb
13:55:50 <jix> XLLLLMXXULXMMLXX is the first handwritten XUML program
13:56:04 <jix> an endless loop printing U:s
13:58:31 <jix> but xuml is little endian (because i want boolfuck => xuml conversion) so i need to start with a 1
13:58:33 <pgimeno> handling bits one by one is awkward
13:58:50 <jix> but i don't need + and - just X
13:59:52 <pgimeno> I'm only justifying the 12 Kb
14:03:31 <jix> not autoconverted it is much shorter
14:07:10 <jix> XLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMXULXULXULXXUXUXXULXXUXXULXXUXXULXXUXXULXXUXXULXXUXXULXXUXXULXXUXUXXULXULXXUXXULXULXULXXUXUXXULXULXXUXXULXULXXUXXULXXUXXULXULXULXULXMMLXX
14:07:19 <jix> prints XUML\nXUML\nXUML\n....
14:09:32 <jix> i'm in france next week. no internet.. no #esoteric :'( ;)
14:10:31 -!- jix has quit ("Banned from network").
14:34:48 -!- graue has joined.
14:37:53 <pgimeno> any clue of what kind of storage does [] use?
14:57:08 <graue> doesn't it say on the website?
15:02:42 <graue> does it have an interpreter or spec or anything?
15:03:49 <graue> then that should tell you
15:03:53 <graue> someone needs to add clunk: http://esoteric.sange.fi/essie2/download/clunk/
15:11:24 <wooby> reminds me of shrdlu
15:20:35 <CXI> blagh, need to actually write this newsreader
15:23:26 <CXI> woo, dodgy html parsing is a winner
15:28:31 <sp3tt_> Newsreader written in what? Brainfuck?
15:32:33 <pgimeno> graue: how do you rename a page? does it have to be deleted and the new one created?
15:40:09 <CXI> http://esolangs.org/wiki/Special:Movepage
15:43:26 <pgimeno> "You have not specified a target page or user to perform this function on."
15:43:53 <CXI> &target=pagename
15:44:57 <CXI> it's a little silly - in theory there should be a link somewhere in the interface to do that
15:45:54 <pgimeno> it was not worth creating a redirection etc.
15:46:18 <pgimeno> but now I don't know how to delete a page
15:49:28 <CXI> you have to be an admin first
15:50:12 <pgimeno> I'll leave that up to graue then (page: [[Category:Language]])
15:51:25 <pgimeno> CXI: you may be interested in this sed adder: http://www.formauri.es/personal/pgimeno/temp/addsed-r.txt
15:52:18 <pgimeno> does your language work by replacing strings via regexps?
15:54:04 <CXI> basically, yeah
15:54:59 <pgimeno> nice, then it should be straightforward to adapt the adder to your language
15:55:35 <CXI> well, it depends... :D
15:56:01 <CXI> see, it actually stores the regexes in a list, goes through the list and rewinds every time it makes a replacement
15:56:52 <CXI> alrighty, seeya
16:49:15 <pgimeno> does your lang admit \1, \2 etc.?
16:49:30 <CXI> yeah... though it uses $1 $2 instead at the moment
16:49:37 <CXI> I'll change it when I get around to cleaning up the code
16:50:23 <CXI> right now I'm bashing away at this newsreader
16:51:43 <pgimeno> when you say it rewinds, do you mean that it starts by the first RE of the list after each replacement?
16:52:32 <CXI> think of it like a functional language with only one function :P
16:52:37 <pgimeno> I don't think that's important then (for my adder)
16:53:53 <pgimeno> what's the string's initial state?
16:54:38 <CXI> though incidentally you'd get stuck in a loop between s/2/11/ and s/11/2/
16:55:01 <pgimeno> what's the stop condition?
16:55:13 <CXI> no patterns match :P
16:55:29 <CXI> did I mention there's no /g flag? :P
16:56:18 <pgimeno> still, it's easy to fix to adapt to these needs
17:05:58 <pgimeno> in a "s/regexp/replacement/g" sed statement, it replaces all occurences (as opposed to the first one when scanned from left to right)
17:07:25 <sp3tt_> I want to read the 2P specs.
17:08:05 <CXI> alright, I'll write one up quick-like
17:10:00 <CXI> I was sorta putting it off because I wanted to know whether it could actually be useful
17:11:25 <CXI> though keep in mind the interpreter won't actually match the spec until I fix it :P
17:13:02 <pgimeno> useful as in "turing complete" or useful as in "easy to use"? I can tell you in advance that it's TC
17:13:13 <CXI> ah, well then that's cool
17:13:16 -!- sp3tt_ has quit (Read error: 104 (Connection reset by peer)).
17:13:17 <CXI> easy to use, hell no :P
17:14:24 <pgimeno> you'd better specify which REs are admitted
17:14:36 <pgimeno> if possible, don't restrict them to be Perl REs, please
17:15:16 <CXI> I'm thinking maybe gnu regex
17:15:28 <CXI> is perl regex that different?
17:16:01 <pgimeno> well, there are quite a few extensions
17:16:27 <pgimeno> the problem is supporting them in non-Perl interpreters
17:21:28 <CXI> what are \1 \2 \3 called anyway? back-replacements?
17:23:00 <pgimeno> but only when used within a RE
17:23:41 <pgimeno> maybe sed has another name
17:23:55 <CXI> eh, I'll just define them in the spec as back-references :P
17:25:29 <pgimeno> "The replacement may contain the special character & to refer to that portion of the patter space which matched, and the special escapes \1 through \9 to refer to the corresponding matching sub-expressions in the regexp." (from the sed man page)
17:29:38 -!- ChanServ has quit (Shutting Down).
17:31:37 -!- ChanServ has joined.
17:31:37 -!- irc.freenode.net has set channel mode: +o ChanServ.
17:42:42 <CXI> heh, actually
17:42:52 <CXI> it might not be possible to write a fair few things in it
17:43:04 <CXI> if only because there's no way to distinguish what the user initially entered and what you're returning
17:43:35 <CXI> as in, writing something to add the letter s to any inputted string
17:44:09 <CXI> and /(.*)/(.*)s/ would just loop forever
17:44:22 <CXI> I mean /(.*)/\1s/
17:44:44 * CXI considers making the interpreter add '>' to the front of the input
17:49:57 <CXI> hmm, but then you could never have a program that outputs a >
17:50:05 <CXI> at the start of the output, anyway
17:51:28 <pgimeno> you can escape the input string somehow at the start
17:52:53 <pgimeno> e.g. s/\\/\\\\/g then s/^/\\i/
17:55:54 <CXI> but the problem is if the program was meant to output a string with \i at the start
17:56:53 <CXI> then that'd be matched by the expression you used to check for ^\i and the program would loop infinitely
17:56:56 <pgimeno> unescape it at the end; the regexps should then write \\i at the start instead of \i
17:57:24 -!- sp3tt has joined.
17:57:36 <CXI> ah... hmm, yeah, that works
17:57:51 <sp3tt> w00t, badge with brainfuck program on ordered :D
17:59:14 <sp3tt> And also badges with a gnu, one that says "Proud filesharer", and of course one that says "How about a nice cup of stfu?". XD
17:59:28 <CXI> heh, classy
17:59:33 <CXI> what's the brainfuck program?
17:59:49 <sp3tt> It prints "Your brain is fucked!"
18:00:00 <CXI> that sounds like it'd be pretty long
18:00:40 <sp3tt> Not with some clever multiplication...
18:00:42 <sp3tt> ++++++++++[>+++++++++<-]>-.>++[<+++++++++++>-]<.++++++.---.>++++++++[<---------->-]<--.>++++++++[<++++++++>-]<++.>++[<++++++++>-]<.>++[<-------->-]<-.++++++++.+++++.>++++++++[<---------->-]<++.>++++++++[<+++++++++>-]<+.>++[<+++++>-]<.>++++++++[<---------->-]<---.>+++++++[<++++++++++>-]<.>+++[<+++++>-]<.>++[<--------->-]<.++++++++.------.-.>++++++++[<-------->-]<---.
18:00:57 <sp3tt> Looks like this: http://www.knapp.nu/ShowBadge.aspx?id=2549463
18:01:32 <CXI> yeah, not so bad, I guess
18:02:04 <sp3tt> Should be here within 14 days :)
18:02:21 <sp3tt> Ordered one with the firefox logo on too.
18:12:19 <graue> how about writing that in qdeql?
18:12:59 -!- graue has quit ("brb").
18:26:26 -!- graue has joined.
18:29:15 <pgimeno> just a note that in http://puzzlet.org/puzzlet/%EC%95%84%ED%9D%AC~Aheui in the links section there's a link redirecting to an "obsolete" page
18:29:45 <puzzlet> even forgot to update those in Korean pages
18:31:10 * pgimeno wonders what each button will do in the JS interpreter
18:31:55 * puzzlet plans to make an extra frontend in English
18:32:41 <pgimeno> that would be very nice for non-korean speaking people :)
18:34:39 <pgimeno> to me it could say "press here to download and install Windows" without me noticing
18:41:42 * cpressey fears the wiki has gone category-crazy :)
18:42:04 <pgimeno> what's the difference between {{Category:whatever}} and [[Category:whatever]] ?
18:42:10 <puzzlet> the wiki goes wikipediastic
18:42:53 <puzzlet> i'm not sure that {{Category:whatever}} is a valid syntax
18:43:07 <cpressey> so {{}} brings in the text from another article
18:45:57 <graue> yeah, i think a lot of the categories are really bad ideas
18:46:31 <graue> in particular, low-level and high-level (how do you define that with respect to so many different programming styles?), and almost all of the other categories should be subcategories of "languages"
18:47:44 <pgimeno> how does a subcategory help with respect to a category?
18:47:59 <puzzlet> any there's going to need something like [[Category:Languages by storage types]] and so on
18:48:07 <graue> it means we don't have to put [[category:languages]] on practically every single page
18:48:38 <puzzlet> graue: because the list will do the complete list of languages
18:48:52 <cpressey> wp has "article which should be a category" category... that way a topic can start life as an article, then eventually become a category when it's clear that it needs to be... maybe that model would work better than trying to categorize everything immediately
18:49:24 <graue> that's a good idea
18:51:19 <pgimeno> I think that categories are a good way of getting an idea of what a language is like to start with
18:52:17 <pgimeno> is it imperative? is it non-deterministic? etc.
18:53:14 <pgimeno> of course that could belong to the description but using categories helps in making a cross-reference list at the same time
18:55:10 <pgimeno> about the inclusion of most or all categories as subcategories of the Languages one, I don't know how to list e.g. all languages that way
18:57:11 -!- CXI has changed nick to coredumpage.
18:57:32 -!- coredumpage has changed nick to CXI.
19:02:02 <pgimeno> for example, currently Turing tarpits is a subcategory of Turing complete, but you can't examine a list of all Turing-complete languages that includes Turing tarpits without entering each subcategory
19:02:39 <pgimeno> is there a way around that?
19:03:24 <puzzlet> [[List of Turing tarpits]]?
19:04:15 <pgimeno> that would require manual editing of just another list
19:05:28 <pgimeno> adding a language to a subcategory does not automatically add it to its parent category
19:11:04 <graue> so you can't examine a list of all Turing-complete languages that includes Turing tarpits without entering the subcategory
19:11:11 <graue> is it that hard to enter a subcategory?
19:12:19 <pgimeno> if all the current categories are subcategories of the Languages category, you can't have a list of Languages without entering every category
19:12:32 <graue> yes you can, by going to esolangs.org/wiki/Language_list
19:13:27 <pgimeno> what's the use of that page which can't be done with a Languages category?
19:13:54 <graue> it doesn't require global modifications
19:14:03 <graue> for a category, you have to edit every page in the category
19:15:09 <graue> so what's a good non-esoteric high-level language i should learn? objective-c? java? ruby? erlang?
19:18:07 <graue> you don't think any of those are good?
19:18:59 <pgimeno> "good for what" is the question
19:19:16 <pgimeno> java is quite more popular than the rest
19:19:44 <pgimeno> but I don't know if popularity is meaningful for you
19:20:49 <graue> well, good for programming in
19:21:05 <graue> i don't care if it's buzzword-compliant or not, if that's what you mean
19:21:45 <graue> i don't want to do BOP in a strongly-hyped language
19:23:10 <pgimeno> good speed-wise, ease-wise, self-explanatory-wise...? do you require it to be scriptable? have good string handling? etc.
19:25:20 <graue> what languages do you prefer?
19:25:23 <cpressey> graue: depends why you want to learn it (sort of like pgimeno said)... i can only say which non-eso languages i personally admire
19:26:32 <graue> what's cool about erlang?
19:26:42 <CXI> I quite like ruby
19:26:54 <cpressey> receiving messages based on patterns
19:27:34 <graue> is it (can it be) relatively fast? (not necessarily C-speed, but usable for some real-time stuff)
19:27:55 <cpressey> graue: it's billed as a "soft real-time" language (fwiw)
19:28:44 <cpressey> speed is, hmm, ok, in my experience... certainly acceptable for the things i use it for
19:28:53 <cpressey> it doesn't do so well on most shootouts though
19:29:02 <cpressey> although i'm not sure how much i trust the shootouts anyway
19:29:23 <graue> have you ever used Icon?
19:29:58 <cpressey> briefly. not for anything serious. i decided to go with lua instead, which has some similar features
19:30:28 <cpressey> icon was way ahead of its time...
19:32:16 <graue> i guess i'll study erlang in some more depth
19:32:44 <CXI> *pitches in* give ruby a look too :P
19:33:18 <graue> what is the downside of ruby?
19:33:34 <graue> it's so popular there must be a group of people who hate it
19:33:52 <graue> i'd like to hear from those people before spending much time on ruby, but it is interesting
19:34:14 <CXI> heh, I'm not sure how easy it'd be to find any of those people
19:34:14 <cpressey> i'm not so big a fan of ruby, but i don't have any particular thing against it
19:34:46 <CXI> I'm pretty quick to condemn a language, but I haven't been able to find much wrong with ruby at all
19:34:53 <CXI> the syntax was a little strange at first
19:37:03 <graue> oh, erlang can load code into running systems, that's cool
19:48:01 <cpressey> graue: btw i suspect qdeql needs 2 queues
19:48:32 <cpressey> you have the problem (i think) of the length of the queue being unknown at any given point
19:49:04 <cpressey> so how do you (e.g.) know you've cycled through the entire thing if you e.g. want to get at a cell in the very middle
20:02:28 <graue> isn't that equivalent to the problem of the position of the tape pointer in brainfuck?
20:05:15 <graue> it seems to me that it should be possible to keep track of the length of the queue in a byte (or two, or three, or an unbounded number of bytes) that is kept accessible at all times
20:19:17 <cpressey> i'm just not sure how you keep it accessible at all times
20:19:34 <cpressey> the tape in bf doesn't wrap around; you don't need to know the current length of it to navigate it
20:19:39 <cpressey> it seems like in a queue, you would
20:20:20 <cpressey> (then you could go "left" and "right" like in bf or a TM)
20:25:11 <graue> my initial idea was a deque, someone in here said it could be done with just a queue
20:28:36 <graue> maybe if you could test or subtract from the byte at the front of the queue without displacing it, something like that might make the difference?
20:28:41 <graue> it would certainly be easier to use
20:33:55 <pgimeno> just write an UTM in it and you'll be sure it's TC :) (sorry, I was afk)
20:35:20 <pgimeno> about the languages, I faced a similar decision some weeks ago and I decided to learn Python (not in your list though)
20:35:36 <cpressey> well, a seperate counter would clearly work, but is almost cheating (a FSA + 2 counters = TC, apparently)
20:40:19 <pgimeno> cpressey: is there an specification of SQUISHY?
20:40:45 <cpressey> pgimeno: heh. um... the original? no. Squishy2K? yes, somewhere...
20:41:20 <cpressey> http://catseye.mine.nu:8080/projects/squishy2k/doc/squishy2k.txt
20:41:37 <pgimeno> yeah, I was reading about Squishy2k
20:42:25 <cpressey> the original was more like thue-using-EBNF
20:42:40 <pgimeno> I was wondering if it's worth creating a SQUISHY entry in the wiki, as the predecessor of Thue
20:43:15 <cpressey> i don't think so... it really wasn't that significiant
20:45:57 <pgimeno> was Thue based on SQUISHY?
20:47:52 <graue> hey pgimeno, i tried to learn python before but i really found it confusing and counterintuitive
20:48:31 <graue> it seemed unclear what was or wasn't by reference, "deep copies" and "shallow copies" left my brain all fucked, so i stopped working on it
20:49:49 <graue> also, it seemed that there were exceptions for things that should be "compile-time" errors (e.g., the inconsistent indentation exception) so i was afraid i'd have to spend a lot of time fighting off silly exceptions, rather than solving the problem at hand
20:51:53 <pgimeno> I haven't faced deep vs shallow, but for the indentation problem I guess it's a "well-formedness" checking feature but it's detected at "compile time" i.e. when the script is loaded and parsed into tokens
20:56:49 <sp3tt> graue: you mean python fucked up your brain less that bf?
20:56:55 <sp3tt> o.0 How's that possible?
21:08:01 <graue> there isn't a comparison there
21:09:29 <graue> as a language bf is very simple and easy to learn; i'm familiar with exactly how every one of its features works
21:10:01 <graue> in python, and this is a problem i've had trying to learn other high-level languages, the language is doing crazy stuff behind my back that i don't understand
21:10:23 <cpressey> pgimeno: no, thue was based on, ummm, a [semi-]thue grammar :)
21:10:40 -!- wooby has quit.
21:12:47 <pgimeno> graue: yeah, you have a point there; but still, for quick'n'easy scripts (rather than big projects) I find it useful
21:13:54 <pgimeno> cpressey: I asked because it's listed as the successor of SQUISHY in several places
21:16:20 <graue> hmm, i usually do quick'n'easy script type things in C
21:16:54 -!- CXI has quit (Connection timed out).
21:17:17 -!- wooby has joined.
21:19:40 <cpressey> pgimeno: hmm, well - not in any strong sense... the idea might have sparked the idea of having a minimal string-rewriting language
21:22:46 -!- CXI has joined.
21:34:00 -!- graue has quit ("Leaving").
21:37:42 -!- wooby has quit.
21:42:06 -!- sp3tt has quit ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]").
21:54:21 -!- heatsink has joined.
22:04:37 <pgimeno> GregorR: is ORK based in Sorted! or SON-OF-UNBABTIZED?
22:04:53 <GregorR> No, I haven't even heard of them :P
22:05:29 <pgimeno> is it based on something at all?
22:07:29 <kipple> so, where do you draw the line between "based on" and "inspired by"?
22:08:07 <GregorR> Well, the fact that I hadn't heard of either of those makes it pretty unlikely that it was "inspired by" :P
22:08:35 <kipple> yeah, I was talking in general, regarding categorizing in the wiki :)
22:09:04 <GregorR> C++ is based on C, but Java is only inspired by C++.
22:09:25 <GregorR> Because while C++ borrows the majority (actually, all) of C's syntax, Java does not borrow the majority of C++'s syntax.
22:09:32 <GregorR> However, "the majority" is not a razor-sharp line.
22:10:51 -!- wooby has joined.
22:15:22 -!- lindi- has quit (Read error: 54 (Connection reset by peer)).
22:19:14 -!- lindi- has joined.
22:36:48 -!- wooby has quit.
22:41:45 <cpressey> lament: do you have a link to your Smallfuck-to-SMETANA compiler? Googling for "smallfuck" is, uh... unproductive
22:44:22 <heatsink> smetana? Like the those who do not learn from the past are condemned to repeat it person?
22:45:05 <cpressey> well, it was originally Smetana like the composer, but I'm open to other interpretations :)
22:46:36 <cpressey> "The Bartered Bride" is probably what he's most known for
22:47:52 <kipple> Moldau is one of my favorite classical pieces
22:48:41 <cpressey> google claims that the guy who said that quote was named George Santayana, btw. (but google claims a lot of things...)
22:55:08 <heatsink> that's probably why I rmembered the name.
23:10:36 <pgimeno> hum, an algorithm written in Chef having bugs must be quite disgusting
23:11:32 <kipple> isn't that true for most esolangs?
23:12:29 <pgimeno> well, imagine a Fibonacci Numbers with Caramel Sauce with bugs X-P
23:15:48 <kipple> well, the perl implementation doesn't make it easier with it's uninformative error messages :)
23:19:51 <pgimeno> just imagine one of these in the caramel sauce: http://images.google.com/images?q=bugs
23:20:32 <pgimeno> (though some would be actually interesting)
23:20:42 <kipple> well, some of them would be kind of kinky ;)
23:42:28 <cpressey> fwiw, I could argue that the 3 queues in the NULL language mean it's not *really* zero-dimensional...
23:42:55 <kipple> doesn't the dimensional aspect refer to the code, not the data structures?
23:43:19 <cpressey> well, ok. it could have 0-dimensional code
23:44:16 <kipple> but we should probably have a separate queue-based category.
23:48:11 <cpressey> categorization of esolangs is like counting the number of colours in the rainbow
23:48:51 <cpressey> btw kipple, i added an outline of a proof of turing-completeness to the kipple page
23:50:59 <kipple> I'm not very familiar with theory of computation, so I wouldn't know how to write such things.
23:51:04 <kipple> I consider the brainfuck interpreter proof enough
23:53:09 <pgimeno> cpressey: I was looking for such a way of classifying the languages like this. I was using my bookmarks but it was not enough. The categories that characterize each language are IMO very valuable.
23:55:39 <cpressey> kipple: oh, there's a bf interpreter written in kipple? i wasn't aware... yeah, that's excellent proof too, i'll note it
23:56:03 <kipple> IIRC it was the second program ever written in kipple :)
23:56:21 <kipple> http://rune.krokodille.com/lang/kipple/samples/bfi.k
23:57:00 <cpressey> pgimeno: well, what i mean is, once you have a category established, one of the most valuable new esoteric languages that can be designed, is one that defies classification under that category :)
23:59:48 <pgimeno> well, yeah but still I think it's good to have them
00:01:20 <kipple> heh. Befunge is now in 9 categories.....
00:20:24 <pgimeno> isn't TMMLPTEALPAITAFNFAL a joke language?
00:21:06 <pgimeno> (as in "totally unusable except as a joke")
00:22:36 <kipple> well, it is probably turing-complete... though perhaps not always :)
00:23:51 <pgimeno> if it is turing complete all days, is it turing complete?
00:24:04 * kipple doesn't like the idea of separating joke languages from the rest
03:16:17 -!- heatsink has quit ("Leaving").
03:21:15 <puzzlet> pgimeno, how about like listing all turing-complete languages on [[Turing-complete]]?
03:24:49 -!- kipple has quit (Read error: 60 (Operation timed out)).
05:43:04 -!- malaprop has quit ("sleep").
07:05:20 -!- graue has joined.
07:05:43 <graue> do SMITH and Muriel count as self-modifying?
07:20:40 <lament> cpressey: do you want it?
07:35:10 <lament> on [[Turing complete]], smallfuck is mentioned as a minimal example of turing-complete language
07:44:47 <lament> i should probably explicitly state somewhere that smallfuck implementations must have a memory size limit
07:44:56 <lament> or, change my mind and allow them to be infinite.
07:54:16 <graue> i read through all the mailing list discussion on the subject and don't remember seeing that
07:54:16 <lament> http://esoteric.voxelperfect.net/wiki/Ale
07:54:46 <graue> "stupid" is the term the author uses (see link)
07:55:02 <graue> i just wanted to make a page so someone could flesh it out later
07:55:25 <lament> or is that flower thing a logo
07:55:27 <graue> we need a PD Piet program to use as a logo
07:55:34 <graue> the flower thing is the mediawiki logo, so it sucks
07:55:55 <graue> also it should do something cool
07:57:01 <graue> with a proper command set, a language with only one bignum should be TC
07:57:03 <graue> that would be cool
07:57:29 <lament> that language could simply be Brainfuck
07:57:38 <lament> and that's not cool at all
07:57:51 <lament> it would operate on the digits of the bignum :)
07:57:51 <graue> [ only knows "0 or not-zero"
07:58:02 <graue> then it could be, yes
07:58:28 <lament> do you know of a graphics editor that'd be good for piet?
07:59:07 <graue> in fact, if you write one, release it as free software, because i don't know of any decent bitmap editors for working with pixels
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:03:53 <lament> the only interpreter is in perl!? awww
08:05:44 <lament> there's a txt2gif converter
08:05:49 <lament> http://www.majcher.com/code/piet/
08:06:54 <lament> and i can't download it, it's 403
08:07:29 <graue> does the wayback machine possibly have a copy from before it became 403'd?
08:08:09 <lament> oh, okay, it's part of the release
08:08:19 <lament> http://www.majcher.com/code/piet/Releases/Piet-Interpreter-0.03.tar.gz
08:09:46 <lament> so what would a logo program do?
08:10:54 <graue> something that it can do while looking nice
08:11:08 <lament> the fibonacci program on the piet website looks nice i think
08:12:11 <graue> you think we can get some copyright renunciation out of the guy?
08:12:56 <lament> why does it have to be public domain anyway?
08:14:35 <graue> because there's a blanket statement that anything on the wiki is, just to avoid complicating things
08:15:20 <graue> i guess you could say the logo is not content, but if it's an esolang program, people might think otherwise
08:15:21 <lament> you think it'd make a good logo?
08:15:23 <lament> http://www.dangermouse.net/esoteric/fibbig.gif
08:16:00 <lament> it's just the right size
08:18:43 <lindi-> graue: why not use 3-clause BSD license or MIT license?
08:19:15 <lindi-> graue: those at least state that there is no warranty
08:23:06 <graue> those licenses don't solve the problem of you having to acknowledge, "Parts copyright (c) 2004 'Bob1233'. Parts copyright (c) 2005 'Graue', Parts copyright (c) 2005 '68.133.119.11'" etc for every nontrivial page
08:23:14 <graue> i'll add something stating that there is no warranty
08:29:14 <lament> okay, i sent the guy an email
08:31:31 <graue> by the way, what was it you found, again, about a language with a single queue being TC?
08:32:19 <graue> i made such a language (http://www.oceanbase.org/graue/qdeql/) and implied that it was TC, and cpressey is not convinced
08:33:30 <lament> i have never found nor said anything about that
08:33:47 <lament> all i did was ask you if it was really TC
08:33:53 <lament> cause i'm not convinced either
08:36:37 <graue> damn, am i confusing you with someone else in this channel?
09:03:24 <lament> man, piet is a cool idea but too painful
09:03:32 <lament> i don't feel like installing perl modules :(
09:04:04 <graue> maybe you can pay someone $50 an hour to convert it to ruby then
09:04:35 <lindi-> graue: how does wikipedia handle this?
09:05:39 <graue> i imagine that wikipedia itself is violating the FDL immensely just by continuing to exist
09:05:49 <lament> graue: but the ruby version would also require the same module
09:05:57 <graue> lament: convert the code in the module
09:06:14 <graue> the module is on the Sylvain guy's site
09:07:05 <lament> graue: the module is ImageMagick and isn't in Perl at all...
09:10:44 <lament> you know what would be awesome
09:10:50 <lament> a language that uses musical notation
09:11:02 <graue> heh, yeah, that would be great
09:11:05 <graue> not to my knowledge
09:12:08 <lament> choon does'nt even come close
09:14:37 <graue> i'd be interested in a language that used natural language to control it, but in a totally unnatural way, so that any grammatically correct english sentence was a program
09:15:06 <graue> there's a research project it could be built on that analyzes sentences, "link grammar" or something like that, it's called
09:21:05 <lament> ok that's it i'm designing a music-based language
09:21:12 <lament> it's gonna be the best ever
09:22:07 <lament> programs will be polyphonic compositions in the style of Bach.
09:36:12 <graue> does atonal music crash?
09:36:35 <lament> okay, make that "potentially in the style of bach" :)
09:36:51 <lament> but they'll be polyphonic
09:37:14 <lament> that's a must, and i'm trying to figure out how to make that into a useful programming paradigm
09:37:48 <graue> is it too obvious to make each voice a thread?
09:38:19 <lament> but what to do with that later?
09:38:25 <lament> there must be some incentive to use more than one thread
09:38:47 <lament> to use 2 to 4 threads at most times
09:38:53 <graue> so now your challenge is "design language that is useful for computation if, and only if, multiple threads are used"
09:39:02 <graue> the music part is solved
09:40:30 <lament> they don't have to be threads though
09:40:43 <lament> i was thinking of having some sort of assembly
09:40:47 <graue> how about if the only program state is based on which thread is running what code right now?
09:40:55 <lament> where one voice is an operation
09:41:02 <lament> and other voices are parameters
09:41:17 <graue> can that produce good music?
09:42:07 <graue> do you plan to use the tonal system?
09:42:11 <lament> but it's against the nature of polyphony to designate one thread as special
09:42:21 <lament> i.e. have one "melody" aka "operation" thread
09:43:02 <lament> yeah, tonal system or something like that
09:43:12 <puzzlet> fugue programming language!
09:43:13 <lament> intervals are significant rather than notes
09:43:55 <lament> make enough room for expression, i.e. major and minor third in any direction is the same instruction
09:43:55 <graue> naturally i'll have to answer your language with a twelve-tone programming language
09:44:11 <lament> so i guess no, no tonal system :)
09:44:35 <graue> if you have a concept of major and minor third you are using the tonal system
09:44:57 <puzzlet> tonal system is like, you have major or minor.
09:45:09 <lament> not really, since they're always measured from the current note
09:45:10 <puzzlet> the opposite of atonal system
09:45:17 <lament> there's no tonal center
09:45:43 <lament> i'm just saying, "up 3 steps or up 4 steps is the same instruction"
09:45:52 <graue> but it's based on intervals, and that is the tonal system
09:46:20 <puzzlet> atonal system is based on intervals indeed
09:47:28 <graue> the tonal system is based on interval content, whereas, for contrast, the twelve-tone system is based on interval order
09:47:53 <graue> i can't comment on the atonal system, but it would not be possible to meaningfully use the twelve-tone system in this language
09:49:24 <graue> i don't mind programming in the tonal system
09:49:41 <lament> but the reason i'm not getting it is because you're not making any sense!
09:50:53 <graue> the reason i am ceasing my argument is because i don't believe i can explain it effectively!
09:51:50 <graue> in the twelve-tone system, you take all 12 notes of the chromatic scale, shuffle them into a random permutation, and then add registral details by assigning them to different octaves and such
09:52:01 <graue> it's based on all twelve tones being there all the time, more or less
09:52:26 <graue> are we calling the same thing two different names?
09:52:39 <graue> what i described exists and is called twelve-tone music
09:53:14 <puzzlet> but calling every music other than twelve-tone music "tonal" is wrong
09:53:59 <puzzlet> tonal music is based on tonality, the major chord.
09:54:37 <puzzlet> and i belive that other side of the music is called "atonal", which twelve-tone music is part of
09:56:36 <graue> atonal music is actually a subset of the intersection of tonal and twelve-tone music, according to noted composer Charles Wuorinen, whose book i have just consulted on the subject
09:56:36 <puzzlet> and beside that, atonal music includes other mechanisms like whole-tone scale music
09:57:17 <graue> Wuorinen sees "tonal" as part of "diatonic" and "12-tone" as part of "chromatic"
09:57:27 <graue> so perhaps this esolang idea is based on diatonic music, then
09:57:51 -!- sp3tt has joined.
09:58:09 -!- sp3tt has quit (Client Quit).
09:58:16 -!- sp3tt has joined.
09:58:43 <puzzlet> diatonic music is based on scale
09:59:31 <lament> it is based on chromatic
09:59:37 <puzzlet> but the idea of melody moving by interval is free from any scale, and not falls in 12-tone
10:00:03 <lament> yeah, it's just chromatic
10:00:09 <lament> but the programmer is free to make it as tonal as he likes
10:00:42 <lament> in particular, whatever the other instructions are
10:00:44 <puzzlet> becuase he/she can choose from major and minor 3rd interval
10:01:01 <lament> i have decided to make major/minor second a "skip the next interval" instruction
10:01:41 <lament> (an instruction like that is necessary so the voice stays within some reasonable frequency range)
10:01:45 <puzzlet> lament: do going-up and going-down indicate different instructions?
10:02:06 <lament> which leaves room for very few instructions really
10:02:35 <lament> but that's ok since they'll have arguments
10:03:07 <graue> you say a skip the next interval instruction, how about skipping the next n intervals?
10:03:36 <lament> just make the next interval (after the skipped one) again a second
10:03:48 <lament> you can write a lot with that
10:04:09 <puzzlet> lament: how do you plan about note duration?
10:04:38 <lament> (otherwise it will be practically impossible to make it sound good)
10:06:08 <lament> dunno what storage model could work
10:06:17 <lament> perhaps each voice has its own memory or something
10:11:13 <graue> what, the parameters have memory different from the operation's memory?
10:16:33 -!- graue has quit ("Leaving").
10:35:21 <pgimeno> <graue> we need a PD Piet program to use as a logo
10:35:56 <pgimeno> I used the hello.png Piet program with permission from the author; he was very happy that it was used for something
10:36:49 <pgimeno> (used in <http://www.formauri.es/personal/pgimeno/compurec/EsotericLanguages.php>)
10:37:18 <pgimeno> <lament> do you know of a graphics editor that'd be good for piet?
10:37:37 <pgimeno> maybe npiet works: http://www.bertnase.de/npiet/
10:38:57 <pgimeno> <graue> by the way, what was it you found, again, about a language with a single queue being TC?
10:40:25 <pgimeno> fizzie gave this link: http://jackson.cs.miami.edu/~burt/papers/1993.1/Saq-JAIIO-2.ps
10:53:45 <puzzlet> i got http://puzzlet.org/html/jsaheui_en.html done
10:57:28 <pgimeno> now I know what button to press, thanks :)
11:07:10 <pgimeno> I find it still a bit hard to use
11:07:27 <pgimeno> especially since I can't type Hangul
11:11:51 <pgimeno> what was the link to the language description, again?
11:14:27 -!- puzzlet_ has joined.
11:19:00 <pgimeno> well, all I could try is Hello, world
11:24:57 <puzzlet_> can you configure to use Korean input system?
11:25:27 -!- puzzlet has quit (Read error: 110 (Connection timed out)).
11:25:34 -!- puzzlet_ has changed nick to puzzlet.
11:26:46 -!- DMM has joined.
11:26:49 <puzzlet> there are external Hangul input system like saenaru and ngs, but i'm worrying either of them haven't been translated into English..
11:26:56 <pgimeno> I'm afraid not, and even if I can, I'm afraid of doing it and not being able to return to normal
11:27:04 <DMM> evening all
11:27:18 <puzzlet> evening? familiar timezone :)
11:27:28 <DMM> Sydney :-)
11:27:58 <DMM> I just got an email about the esolang wiki...
11:28:25 <puzzlet> if you use X window system, i recommend to use nabi.
11:28:25 <puzzlet> as the Hangul input system
11:28:25 <pgimeno> yup, lament sent it if I'm right
11:30:22 <pgimeno> DMM: thanks for your permission to use the hellobig.png as a logo, btw
11:30:59 <DMM> wow, I'm still writing my reply granting permission... :-)
11:31:34 <pgimeno> sorry, I mean here: http://www.formauri.es/personal/pgimeno/compurec/EsotericLanguages.png
11:31:42 <pgimeno> that was quite a while ago
11:31:44 <DMM> oh! right :-)
11:31:58 <pgimeno> http://www.formauri.es/personal/pgimeno/compurec/EsotericLanguages.php
11:36:08 <pgimeno> by the way, I have abused the idea on your BIT language and made up Bitxtreme: http://www.formauri.es/personal/pgimeno/prog/esoteric/Bitxtreme.php
11:37:54 <DMM> rofl... I like the file extension
11:38:49 <pgimeno> actually it's a joke language to ironize about the lack of space for writing complex programs in some space-limited languages, especially Malbolge
11:39:48 <DMM> heh... that's great. I like the fact you zip all four sample programs for convenience...
11:42:52 <DMM> does zip really make a 562 byte file out of those?
11:43:31 <pgimeno> that's what it did when I compressed them
11:49:22 <pgimeno> btw, I'm not sure if you're aware that there's been a recent incorporation of 99bob in Chef to de 99bob page
11:51:24 <DMM> I heard from the guy who was writing it, didn't know he'd finished
11:53:34 <pgimeno> there are two versions actually by two different people who submitted them independently and within a few hours
11:55:50 <DMM> wow, that's a nice program :-)
11:57:48 <DMM> the sous-chef one
12:04:28 * DMM heads off... getting late here
12:05:12 -!- DMM has left (?).
12:16:07 <sp3tt> Noooo... I missed David Morgan-Mar :(
12:23:46 <sp3tt> I wonder what the most complex program written in shakespeare is...
12:56:19 -!- kipple has joined.
13:07:32 <puzzlet> maybe i could provide a graphical Hangul input system for that interpreter...
14:13:58 <GregorR> While totally unrelated to esoteric programming, to me this is exciting, so I shall scream it out... I IMPLEMENTED ENCRYPTION INTO DIRECTNET!!!! YAAAAAAAAAAAAAAAAY!
14:14:50 <pgimeno> what is directnet? what encryption?
14:45:52 <pgimeno> I answered myself about directnet.
15:07:11 <kipple> so, what's the status of the logo?
15:08:43 <kipple> I played a bit with paint shop pro, and a some spoofs of the MediaWiki logo
15:08:49 <kipple> http://rune.krokodille.com/lang/esologo1.png
15:08:56 <kipple> http://rune.krokodille.com/lang/esologo2.png
15:08:59 -!- malaprop has joined.
15:09:23 <kipple> the MediaWiki logo: http://esoteric.voxelperfect.net/w/skins/common/images/wiki.png
15:11:57 <kipple> argh. "made some spoofs", i meant to say
15:16:46 <pgimeno> kipple: apparently DMM replied to lament by email
15:19:33 <kipple> put them all on one page: file://slartibartfast/rune/www/lang/logos.html
15:21:09 <kipple> I like the idea of using a Piet program, but the ones I've seen so far are a bit ugly, IMHO
15:21:18 <pgimeno> er, check that last URL :)
15:22:00 <kipple> http://rune.krokodille.com/lang/logos.html
15:26:51 <pgimeno> I still like the last one more than the rest
15:27:37 * kipple is reading the Piet spec...
15:29:50 <pgimeno> seen the npiet link I've given above?
15:30:36 <pgimeno> http://www.bertnase.de/npiet/
15:31:21 <pgimeno> it comes with a tcl/tk editor
15:34:03 <kipple> nice code gallery on that page too
17:07:41 -!- sp3tt has quit ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]").
17:08:28 -!- sp3tt has joined.
17:14:48 -!- comet_11 has joined.
17:15:31 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
19:19:23 <pgimeno> здравствулте! (or so says Babelfish)
19:19:36 <lament> so yeah, DMM replied to me as i'm sure you're aware
19:19:58 <lament> pgimeno: that's strange, it's fine but one letter is misspelled
19:20:13 <lament> can't be a grammar-based typo either
19:20:26 <pgimeno> probably wrong dict or something
19:20:54 <lament> the program i asked DMM about to use is a logo isn't helloworld btw
19:20:59 <lament> it's the fibonacci one
19:21:11 <lament> but the npiet page says the program is broken...
19:21:58 <lament> http://www.bertnase.de/npiet/picture.html
19:23:20 <pgimeno> I'm not sure what that means exactly
19:24:01 <lament> it seems npiet and piet reference implementation don't interpret the piet specification the same way
19:26:36 <pgimeno> indeed that's noted and there's an example with the differences
19:27:23 <pgimeno> (at the bottom of the page you've given)
19:31:55 <pgimeno> in malbolge, the discrepancies between the spec and the interpreter were resolved in favor of the interpreter
19:45:05 <lament> hm, has anybody looked at Aura?
19:46:43 <lament> it seems that all that exists is an undocumented interpreter
19:51:40 <cpressey> (now i need to catch up on this log)
19:54:58 <cpressey> graue: re: do SMITH and Muriel count as self-modifying? ... in a loose sense, I'd say say... yes... but the sense is very loose (Muriel program need to make modified copies of themselves to do interesting stuff, and SMITH only really needs to append to itself, not (strictly) modify...
19:56:19 <cpressey> re one bignum... my understanding is an FSA + two counters (bignums) is TC.
19:56:41 <cpressey> (so maybe a rational bignum...?)
20:03:19 <lament> http://z3.ca/~lament/smetana_sf.tar.gz
20:04:27 <lament> aura seems interesting
20:04:34 <lament> i wonder if it can possibly be useful
20:11:33 <pgimeno> lament: it's in my to-look list
20:13:59 -!- sp3tt has quit ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]").
20:14:42 <pgimeno> -lilo/Wallops- Hmmm, check the links on ftp://ftp.debian.org/debian/dists , perhaps congratulations are in order!
20:15:01 <pgimeno> apparently Sarge is finally out
20:16:30 <lament> if it is, it's insanely hard to program
20:17:00 <pgimeno> the interpreter is a pain to read
20:17:51 <pgimeno> instructions are taken by character mod 8, if I understand it correctly
20:19:55 * pgimeno hates programs made up of just one-letter vars
21:44:20 <pgimeno> From:Lode Vandevenne <lode at planetunreal.com>
21:44:22 <pgimeno> The university page will indeed be gone in a few years, too bad, it's such
21:44:22 <pgimeno> Feel free to host a copy of it for preservation. Normally I'll also have my
21:44:22 <pgimeno> own webspace one day, but not yet, so it's a good idea to make a copy.
21:44:46 * pgimeno commits his page into the svn repos
21:45:15 <pgimeno> (Lode Vandevenne is the author of gammaplex)
22:01:33 -!- comet_11 has changed nick to CXI.
22:47:04 -!- graue has joined.
22:48:14 <graue> new db backup at http://esoteric.voxelperfect.net/db/esolang-050606.sql.bz2
22:49:07 <malaprop> graue: Ah, been wanting to ask you. What's the schedule for those? Daily or weekly? And for the files repos?
22:50:31 <graue> the schedule is whenever i make them
22:50:37 <pgimeno> about the files, what was the update frequency?
22:51:13 <malaprop> I thought the point of this scheme was to eliminate the possibility of losing everything because someone loses interest? How about a cron job instead?
22:51:44 <GregorR> malaprop: I was just about to say that ;)
22:52:16 <GregorR> We create this thing so that it can sort of automatically back itself up, and now we're relying on humans? No offense graue, but you are human.
22:52:54 <graue> well, i'm insulted!
22:53:11 <malaprop> And for dates, YYYYMMDD has the benefit of being ISO and common.
22:53:35 <GregorR> graue: PATHETIC FLESH-BAG!!!
22:53:45 -!- lindi- has quit (Read error: 113 (No route to host)).
22:56:01 <malaprop> graue: Would you like a hand setting up cron jobs?
22:59:26 <graue> no thanks, i can do it
22:59:54 <graue> i'm trying to figure out how to allow anonymous svn read access so you can back up the files repo
23:01:24 <malaprop> Having svn read access does not allow you to recreate the repository, you'll need to take an 'svnadmin dump'.
23:02:38 <pgimeno> I don't think that history is needed
23:03:08 <malaprop> If it's in svn, I want the history. I know someone will definitely end up using it.
23:04:03 <pgimeno> well, I think it's svn just because it can't be ftp, so it's svn used as ftp
23:04:43 <malaprop> pgimeno: I know. But since it's in version control, it's just a matter of time until someone uses versioning.
23:06:03 <malaprop> pgimeno: It'll probably happen about a day after the first person who wasn't here for the planning discussion is given access.
23:07:54 <malaprop> Gotta run, can pick up the discussion in ~2.5h.
23:16:23 -!- lindi- has joined.
23:28:54 <pgimeno> graue: I commited some files a while ago; when are they expected to show up?
23:30:29 <graue> they are expected to show up within 6.5 hours then
23:31:44 <kipple> about the svn: how do I get access? anonymous read access would be nice, but I'd like write access...
23:33:15 <kipple> is there a generic user account for this project, or do we get personal?
23:39:28 <graue> kipple: read my private message
23:39:50 <kipple> sorry. not paying attention... ;)
23:49:55 <graue> anyone should now be able to "svn co http://esoteric.voxelperfect.net/svn/esofiles/" and get everything
23:53:12 <pgimeno> indeed it's accessible via browser: http://www.esolangs.org/svn/esofiles/
23:53:48 <graue> but if you open an HTML file it shows the source, and that doesn't have dates, filesizes...
23:54:32 <graue> cpressey, want an account for writing with?
23:57:05 <kipple> question: do I have to set file permissions for files I add, or does svn take care of that?
23:59:04 <pgimeno> svn doesn't handle permissions, just executable
23:59:04 <kipple> hmm. I ran svn commit but nothing seem to happen..
23:59:24 <kipple> ok, so I have to set read access to all on every file I add?
23:59:29 <pgimeno> first try svn status and see what you have
00:00:33 <pgimeno> read access? nope, it doesn't handle permissions; files are files and must be readable by your client, that's all
00:00:34 <kipple> ? esoarchive/kipple/src
00:00:34 <kipple> ? esoarchive/kipple/impl/kipple1.01.zip
00:00:54 <kipple> (that was from svn status)
00:00:56 <pgimeno> do you want to add the whole src/ tree with all of its contents?
00:01:35 <kipple> i just want to commit the files I added...
00:01:46 <pgimeno> you haven't added the files yet :)
00:02:20 * pgimeno sends pm to kipple for a primer on handling svn
00:04:05 <graue> you need to use "svn add whateverfilename" on new files, and "svn mkdir someplace" to make new directories
00:05:44 <kipple> though I made the directory through Samba, not svn...
00:07:11 <pgimeno> yeah, it works if it already exists and you svn add it
00:07:27 <pgimeno> basically that's what svn mkdir does: it creates the dir and adds it
00:08:32 <kipple> thanks for the help. added some kipple just to test it
00:09:06 <pgimeno> just be sure to update before you commit
00:09:30 <kipple> oops. I have to do that as well?
00:10:14 <pgimeno> it will avoid future problems (when overwriting files that are not up to date)
00:12:21 <pgimeno> and please use a meaningful commit message when possible (for example: added Kipple implementation)
00:12:54 <cpressey> btw, i've just created a new esolang (first one in a couple of years)
00:13:02 <cpressey> http://catseye.webhop.net/projects/beturing/
00:13:46 <kipple> 2d tape! haha. that's cool
00:14:10 <pgimeno> 2D tape? that reminds me of the turmites
00:15:21 <cpressey> ah yeah.. i dimly remember a "turmite" program from my Amiga days...
00:16:33 <cpressey> http://mathworld.wolfram.com/Turmite.html
00:24:08 <pgimeno> what's the wire crossing problem?
00:24:58 <pgimeno> does it have any resemblance to the problem of crossing wires in wireworld?
00:30:03 <cpressey> the wire-crossing problem is (very informally) that languages like Befunge seem to need an "#" operator, or some other operator that can jump over things.
00:30:24 <cpressey> otherwise your paths of execution can't cross, and you can't write some interesting programs
00:30:38 <cpressey> kind of like light cycles in Tron, maybe...? :)
00:31:01 <cpressey> i've been googling for related stuff in the past few minutes, and i found this
00:31:03 <cpressey> http://planetmath.org/?op=getobj&from=objects&name=PlanarGraph
00:31:04 <kipple> that's why you should use 3d ;)
00:31:35 <cpressey> there's no problem in 3d, so what's the fun in that? :)
00:32:06 <kipple> does there exist a language where you write code in 3d?
00:33:24 <graue> graph theory is fun
00:34:13 <kipple> so, what kind of file format does it use?
00:36:40 <cpressey> with directives that say "advance the Z dimension"
00:36:56 <cpressey> i don't think it's ever been implemented... maybe it has
00:37:14 <kipple> it uses a single 2d text file?
00:38:22 <lament> exarkun was working on a 3d befunge
00:38:29 <lament> somebody else has also made one
00:38:39 <lament> theres one in basic somewhere i think
00:38:48 <lament> with graphical representation
00:39:14 <lament> befungeGL? something like that
00:39:45 <kipple> then it's not what I was talking about. I meant where you WRITE code in 3 dimensions (as opposed to a 2d text file)
00:39:57 <GregorR> I think that somebody (not me 8-D) needs to make a 2D programming language that is NOT esoteric.
00:40:13 <GregorR> I don't know how, I think that for one you'd have to use a spreadsheet to edit it non-esoterically.
00:41:48 <graue> kipple, make a program that edits trefunge in 3D and saves source code in a text file
00:41:57 <graue> it's just a matter of representation
00:42:25 <cpressey> kipple: you're talking about editors, not languages, then?
00:42:31 <lament> cpressey: how do you like my smallfuck stuff :)
00:43:15 <kipple> where the source code is 3 dimensional
00:43:37 <cpressey> lament: it's quite impressive, especially the compiled output ;)
00:43:42 <lament> kipple: you have to store the source code SOMEHOW
00:43:52 <lament> kipple: in 1'dimensional memory
00:44:08 <kipple> one way could be to use multiple text files per program
00:44:22 <cpressey> well, text files are technically 1d, no?
00:44:35 <cpressey> newlines are a convention that says "increment the y dimension"
00:44:49 <cpressey> funge just has another convention, there are lines that say "incrememnt the z dimension"
00:45:15 <graue> http://www.di.fc.ul.pt/~jpn/gv/4dttt.htm - is this a 2D game just because the playfield is shown in 2D?
00:46:16 <graue> anyway, thunderstorms are here so i'm going to save my computer, brb later
00:46:17 -!- graue has quit ("Leaving").
00:48:16 <lament> i think im finished with my music language
00:48:28 <lament> im just trying to figure out if it's any fun or not
00:48:28 -!- wooby has joined.
00:53:40 <pgimeno> now I get what the wire crossing problem is
00:55:13 <pgimeno> my brain was stuck thinking turmite-wise, that the state was internal to the machine rater than given by the position of the code head
00:55:45 <cpressey> GregorR: http://atlas.usafa.af.mil/dfcs/bios/mcc_html/raptor.html ... ? :)
00:57:25 <cpressey> pgimeno: hmm.. well, it's not like a turmite (not even much like befunge.) the only state (besides the contents of the playfield) is the positions of the code head and the data head
00:57:49 <cpressey> but the wire-crossing problem shows up in other places too, i'm sure (and they may be better places to study it)
00:58:21 <cpressey> except i don;t think wireworld is TC
00:58:30 <cpressey> unless there have been advances since i played with it last
00:58:42 <pgimeno> I thought it was crystal clear
00:59:04 <pgimeno> wireworld can cope with wire crossing by using four xor gates
00:59:22 <pgimeno> I have designed a wire crossing with wireworld
00:59:52 <cpressey> http://karl.kiwi.gen.nz/CA-Wireworld.html#WW-4
01:00:32 <cpressey> i guess it is TC, if you can make a clock, logic gates, and registers
01:08:40 <cpressey> kipple: there is also this: http://ryujin.kuis.kyoto-u.ac.jp/ylab/yamakaku/Visulan/
01:08:56 <cpressey> i don't remember how it's edited, though.
01:09:10 <cpressey> nice example of a rewriting language, regardless
01:10:00 <pgimeno> cpressey: btw, I havent' managed to use ALPACA (perl problems)
01:11:35 <pgimeno> my knowledge of perl is null
01:12:39 <pgimeno> can you run it without problems?
01:12:40 <kipple> cpressey: looks interesting :)
01:13:55 <cpressey> pgimeno: um... i haven't tried in a while. i'll look at it in a bit.
01:14:19 <cpressey> i'm actually wondering if wireworld's unlimited space counts as "tape" or
01:14:45 <cpressey> you can make wireworld forms as big as you like... but you can make fsm's as big as you like too
01:14:49 <pgimeno> that's about the same question as if unlimited size in smetana counts as tape or not
01:15:06 <cpressey> nor can smetana programs or beta-juliet programs
01:15:56 <cpressey> so i wonder what all these wonderful "turing machine in wireworld" articles are about?
01:16:13 <cpressey> this, for example, looks interesting: http://pages.prodigy.net/nylesheise/train_set.html
01:16:57 <pgimeno> I think that they have an infinite wire
01:17:47 <pgimeno> so, "they can't grow" is no limitation
01:17:56 <cpressey> if your "space" looks like this: http://pages.prodigy.net/nylesheise/langton_5.gif you can make one of those Turmites
01:18:21 <cpressey> well, ... i'm still undecided but at least the problem seems clearer
02:48:36 -!- graue has joined.
03:06:47 -!- kipple has quit (Read error: 110 (Connection timed out)).
03:11:15 -!- GregorR has quit (Remote closed the connection).
03:11:32 -!- pgimeno has quit (Read error: 104 (Connection reset by peer)).
03:15:51 -!- graue has quit ("Leaving").
03:23:49 -!- pgimeno has joined.
03:47:07 -!- GregorR has joined.
04:20:14 <cpressey> pgimeno: i just tried alpaca.pl... it works for me... what part of it isn't working for you?
04:46:22 -!- malaprop has quit ("sleep").
06:29:19 -!- wooby has quit.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:44:02 <lament> if you can have wireworld with "infinite wire"
08:44:10 <lament> you can also have a smetana program with infinite instructions
08:45:50 <lament> the only problem then is that programs won't terminate
08:45:59 <lament> you'd have to have something like "Goto step -1" to terminate your program
08:47:41 <lament> wireworld is definitely very pretty, though :)
08:48:59 <lament> http://www.quinapalus.com/wires11.html
08:55:21 <lament> dunno what's more technically impressive, that thing or the life turing machine
08:55:37 <lament> but they both look so amazing.
09:01:15 <pgimeno> life turing machine? you mean Conway's Life, right?
09:03:21 <lament> the annoying thing is that after they do something like that, it's completely pointless to do anything with wireworld (or life) :(
09:04:36 <pgimeno> heh, yeah, almost impossible to beat
09:06:54 <pgimeno> where have you found about Life?
09:07:10 <lament> er.. everybody knows about it?
09:08:23 <pgimeno> I was wondering if you saw a graphic so amazing as the wireworld one
09:08:37 <lament> http://rendell.server.org.uk/gol/tm.htm
09:15:40 <pgimeno> cpressey: $ perl ../../../src/alpaca.pl redgreen.alp redgreen.pl
09:15:41 <pgimeno> Unknown 'strict' tag(s) 'vars refs subs' at ../../../src/alpaca.pl line 19
09:15:41 <pgimeno> BEGIN failed--compilation aborted at ../../../src/alpaca.pl line 19.
09:20:29 <pgimeno> (perl 5.8.4 if that matters)
09:26:25 <pgimeno> removing the 'use strict' line seems to work
11:07:40 -!- kipple has joined.
13:01:59 -!- wooby has joined.
13:08:26 -!- malaprop has joined.
13:11:36 -!- wooby has quit.
14:19:00 -!- CXI has quit ("If you're reading this, it's probably x-chat's fault.").
14:19:11 -!- CXI has joined.
14:28:57 -!- puzlet has joined.
14:29:21 -!- puzlet has left (?).
14:51:40 * GregorR just watched that Wireworld go.
15:15:09 -!- sp3tt has joined.
16:38:45 -!- Keymaker has joined.
17:13:24 <malaprop> Keymaker: Did you write a polygot quine?
17:13:42 <Keymaker> i was trying to keep it as surprise
17:14:12 <Keymaker> (and to note; i have been away from 4th till today 18:45 when i arrived on this channel today)
17:31:49 -!- CXI has quit (Connection timed out).
19:06:18 * Keymaker Programs now a program to convert some data..
19:17:05 -!- CXI has joined.
19:18:33 -!- graue has joined.
19:19:46 * Keymaker goes to eat some pizza, will be back soon..
19:22:11 <graue> cpressey, in the Beturing documentation, you say "...a Beturing machine is incapable of having a state transition diagram that is a planar graph."
19:22:18 <graue> shouldn't that be "that is NOT a planar graph"?
19:40:12 <graue> i think i may have just disproved the "universal Turing machines need state diagrams that are nonplanar graphs" conjecture: http://www.oceanbase.org/graue/archway/archway.txt
19:59:58 <cpressey> graue: yes, that's how it should read
20:01:15 <cpressey> and i think i agree with your conclusion... based on an outline of a smallfuck interpreter in beturing i got half-done last night before falling asleep
20:02:43 <cpressey> pgimeno: that's really weird... i'm using 5.005_03...
20:04:16 <cpressey> it's possible they changed the 'strict' module for 5.8
20:04:44 <cpressey> anyway, deleting it should do no harm
20:04:52 <pgimeno> I'm afraid that's the cause
20:05:48 <cpressey> that's one of the reasons i don't like perl anymore :) they couldn't even bother to bump the major revision number for incompatible changes
20:11:22 <pgimeno> seems that this would be correct syntax now: use strict vars,refs,subs (but then, a lot of warnings or errors appear)
20:14:18 <cpressey> that works for me in 5.005, weird... i guess i was just doing it wrong the whole time?!?
20:15:43 <pgimeno> all I know about Perl is that its syntax resembles C, vars start with $ and regexps are widely used, so I'm not the right one to ask :)
20:16:46 <cpressey> the description "write-only language" fits... :)
20:19:09 <graue> the "esoteric programming language" article on wikipedia once listed Perl as a prominent example
20:21:42 <sp3tt> I saw a guestbook, it was on the l33t page, and there was a field named "What esoteric languages have you used?"
20:22:13 <sp3tt> One answer was: "Brainfuck, befunge, malbolge, perl - oh wait that's not esoteric is it?"
20:22:28 <sp3tt> And another simply read: "English".
20:23:47 <sp3tt> And speaking of different languages, I was looking through the documents for subjects you can take in the Swedish equivalent of high school.
20:24:01 <graue> hey what happened to that math language of yours?
20:24:24 <sp3tt> The page for Programming B listed the following languages: Perl, PHP, C++, Python, Java, and other.
20:24:30 <sp3tt> I hope other includes BF.
20:24:52 <sp3tt> http://rename.noll8.nu/sp3tt/mathspec.txt
20:24:57 <graue> i hope it includes XUML, Qdeql, and "math"
20:25:17 <sp3tt> Code examples: http://rename.noll8.nu/sp3tt/hw.math, http://rename.noll8.nu/sp3tt/beer.math
20:25:19 <graue> are you still working on this?
20:26:01 <pgimeno> hi Keymaker, how was the bike ride?
20:26:16 <sp3tt> And you are from Finland.
20:26:24 <sp3tt> If your hostmask isn't faked.
20:26:38 <Keymaker> like when we were at ~30 km we were all wet because of rain
20:26:53 <Keymaker> and did so, and got home ~1.30 am
20:27:11 <Keymaker> and then we decided to use car instead and got to our target ~4.20 am
20:28:52 <pgimeno> sp3tt: nite, I'll comment about my impression later
20:29:13 <sp3tt> Ok, it isn't finished though.
20:29:29 <sp3tt> The interpreter can only print stuff so far >.<
20:30:00 <sp3tt> http://rename.noll8.nu/sp3tt/mathlang.py
20:36:26 -!- graue has quit ("Leaving").
20:47:58 -!- sp3tt has quit (Read error: 110 (Connection timed out)).
20:57:10 -!- wooby has joined.
21:01:45 <Keymaker> YEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
21:25:04 -!- cmeme has quit (Connection timed out).
21:26:23 -!- cmeme has joined.
21:31:30 <fizzie> Remember to check for underwater obstructions before diving.
21:50:43 <Keymaker> i'm almost done, hopefully, this time :)
21:54:42 <kipple> with that polyglot quine thingy?
21:56:11 <Keymaker> done done done done hahahahaha
22:04:31 <Keymaker> http://www.bf-hacks.org/hacks/pgq.b
22:04:46 <Keymaker> as it says on the page, i'll try to make it shorter sometime and add more languages
22:05:43 <Keymaker> as it says on the page as well, it's made with simple technique
22:05:44 <malaprop> WOw, that's crazy. DId you generate that somehow or is it by hand?
22:06:02 <Keymaker> the other part is made by hand
22:06:30 <Keymaker> i made a program that converts input to that form
22:07:12 <Keymaker> the bugs i had were something annoying stuff that i just didn't notice
22:07:33 <Keymaker> like that there was one cell increased by two in brainfuck version and i didn't notice that
22:08:40 <Keymaker> while i was away i got some idea for an esoteric programming language
22:09:02 <Keymaker> i'll try think more about it now
22:16:24 <lament> so i just made an esoteric language
22:18:36 <lament> first 9 fibonacci numbers:
22:19:08 -!- graue has joined.
22:19:26 <lament> check out my factorial program :)
22:19:55 <lament> each line controls a separate stack
22:20:21 <lament> instructions < and > access data from neighD[D[D[D[D[D[Dbouring stacks
22:21:02 <lament> i'm not sure how fun it actually is
22:21:17 <lament> the idea is to use this as a base for a language built on music notation
22:21:19 <graue> so the stacks run in parallel?
22:21:48 <lament> < gets data from the stack above (with wraparound)
22:21:56 <lament> > gets data from the stack below (with wraparound)
22:22:23 <lament> will add to both stacks the top value on the other swap
22:22:40 <lament> i.e. they're executed "simultaneously"
22:23:18 <lament> nothing gets popped though. And maybe i should change that.
22:25:12 <lament> as it is, i'm not even sure how to swap top values
22:25:42 <lament> (without the use of a third stack)
22:27:24 <lament> even with the third stack it's not trivial :(
22:28:03 <lament> with the use of the third stack, swapping values in the first two:
22:29:19 <lament> in music notation, < is a rising third
22:31:44 <lament> http://z3.ca/~lament/prelude.txt
22:31:46 <lament> http://z3.ca/~lament/prelude.py
22:33:48 <lament> note that it's practically trivial to compile Brainfuck to Prelude
22:34:09 <lament> [ becomes ( in the first voice
22:35:47 <lament> , becomes ? and . becomes !
22:37:04 <graue> if it's trivial to compile brainfuck to it, no one will write in it; they'll just write in brainfuck
22:37:16 <lament> but Prelude is a lot easier to write in
22:37:32 <lament> because you're not limited to two stacks
22:37:44 <lament> three seems like a good number
22:37:56 <lament> but you can have as many as you wish
22:38:06 <lament> brainfuck is trivial to compile to C as well
22:43:00 <kipple> lament: shouldn't "- pop two values, add them and subtract." be "- pop two values, subtract them and push." ?
22:43:57 <kipple> when you say "# drop last value", you mean the top of the stack, right?
22:44:00 <lament> sorry, i wrote the spec in like 15 minutes and didn't enjoy it at all
22:44:32 <kipple> yeah. writing specs is not too much fun..
22:44:40 <lament> also "voice above" and "voice below" is "with wraparound
22:44:50 <lament> so if you have only two voices, < and > do the same thing
22:45:04 <kipple> interesting language :)
22:45:17 <lament> and three is a convenient number of voices because each one can access both others
22:45:18 <kipple> Keymaker: nice polyglot quine!
22:46:28 <lament> actually i'll probably change < and > to ^ and v
22:46:46 <lament> ^ and v make much more sense
22:47:01 -!- ChanServ has quit (ACK! SIGSEGV!).
22:47:17 <lament> i was just vary of using v because i was contemplating string literals
22:47:55 -!- ChanServ has joined.
22:47:55 -!- irc.freenode.net has set channel mode: +o ChanServ.
22:48:08 <lament> how about: ^ or < and v or >
22:48:41 <kipple> nah. stick to one of them
22:49:35 * lament changes the spec and the interpreter
22:50:39 <kipple> does the ^ and v alter the stack above/below ,or just peek at it?
22:52:09 <lament> im not sure which way would be better
22:52:21 <lament> but i think just peeking encourages more cooperation between the voices
22:52:30 <lament> i.e. the other voice has to drop the value if it needs to
22:53:31 <pgimeno> Keymaker: wow, a pretty nice quine!
22:54:13 <pgimeno> tried it in both langs, it wrocks! :)
23:00:14 <kipple> umm, the spec says "! output a character", but it outputs it as a number
23:01:16 <lament> change NUMERIC_INPUT to False in the interpreter
23:01:24 <lament> it's uhhh... for debugging purposes :)
23:01:43 <kipple> maybe you should just add another operator....
23:01:48 <lament> maybe it'll have both numeric and non-numeric
23:02:02 <lament> but then one of them would have to correspond to a seventh
23:02:06 <lament> and that's a bigass interval
23:02:19 <kipple> huh? you lost me there....
23:02:41 <lament> the main point of Prelude is to be a text representation of Fugue
23:02:57 <lament> which is the same language, but using music as source code
23:03:09 <lament> with different intervals corresponding to different instructions
23:03:14 <lament> that's why voices are called voices
23:03:51 <lament> (i doubt it makes much sense to actually implement Fugue)
23:04:27 <fizzie> "That sounds nice." (Gahh, what a horrible 'pun'.)
23:12:33 <kipple> nice language :) just made a hello world
23:14:08 <Keymaker> time for 99 bottles of beeer! :)
23:14:43 <kipple> keymaker: I thought it was quines that was your thing... :)
23:15:23 <kipple> lament: well, actually it's only Hello (I cheated)
23:15:34 <kipple> 99999999+++++++H9992++++e7+l l3+o
23:15:52 <kipple> hmm. that didn't look good in my client
23:17:24 <lament> i'm sure it could be more compact though :)
23:17:47 <Keymaker> i should try to look at this programming language..
23:17:57 <lament> Keymaker: and make a quine
23:19:44 <lament> kipple: maybe i should add string mode after all?
23:20:23 <kipple> then maybe I'll wait until you've decided until I try to do 99bob ;)
23:21:04 <fizzie> Gah, my paste botched.
23:21:30 <fizzie> Using the "numeric output" thing.
23:22:10 <fizzie> It's iterative. I usually do recursive, but that'd be too non-trivial.
23:23:12 <fizzie> For a fibonacci, it's pretty small indeed.
23:23:24 <lament> the bottom stack keeps growing?
23:23:44 <lament> by thousands of different languages
23:24:31 <lament> so it seems like most programs would either have to be bloated with # instructions
23:24:40 <lament> or have huge memory leaks
23:25:11 <fizzie> And yes, it has a huge memory leak. What more do you expect from a 4x3 block of code. :p
23:25:11 <lament> oh well... huge memory leaks it is :)
23:26:56 <pgimeno> most modern languages do :)
23:26:58 <lament> hm, how would that work
23:27:14 <kipple> it wouldn't, as it is not a real memory leak
23:27:31 <kipple> the data is on the stack, and could still be used by the program
23:27:46 <lament> kipple: unless somebody writes an extremely smart compiler
23:27:49 <Keymaker> i can't get kipple's hello working :(/
23:28:00 <lament> Keymaker: change to non-numeric output
23:28:29 <fizzie> Merf, that prelude fib is denser than the simple befunge fib:
23:29:01 <fizzie> Two stacks really make a difference. :p
23:29:34 <kipple> but that befunge fib only prints the first 100, right? that's different
23:29:45 <fizzie> Uh, no, it loops indefinitely.
23:30:38 <kipple> I just saw the number 100, and forgot all about befunge :)
23:31:10 <fizzie> Although (with most interpreters) it has problems when the number goes >255, since the playfield cell is only one byte.
23:31:30 <lament> i never specified the data type size
23:31:39 <lament> the interpreter uses bignums
23:31:55 <fizzie> I noticed. It's nice for scientific purposes.
23:35:38 <fizzie> Usually I've written a befunge interpreter after fib, but I think I'll skip that for now.
23:36:09 <fizzie> If it had functions, maybe. :p
23:36:27 <fizzie> Besides, it's 0140am again and I need to be at work "tomorrow"-morning again.
23:36:31 <lament> brainfuck should be easy to interpret
23:36:43 <lament> two stacks for the program, two more for memory
23:37:27 <fizzie> A prelude->midi converter would be nice, too.
23:38:01 <lament> Fugue would also have note durations
23:38:13 <lament> and some choice as to which exact interval you use
23:38:37 <lament> prelude lacks that information
23:39:06 <lament> it could be converted into Fugue but the result certainly wouldn't sound good.
23:39:19 <wooby> heh, also cool would be some kind of midi parser... where a midi is the program
23:39:29 <wooby> so you could program in cakewalk :)
23:39:47 <fizzie> Or program with a musical instrument.
23:42:01 <wooby> or maybe a program that applies arbitrary "operators" to a piped-in mp3 or wav, and adjusts the rules until it spits out "Hello World"
23:56:26 <fizzie> Do the 'lines' (physical-lines-of-source, not logical-lines-of-code) for voices need to be equally long?
23:58:12 <lament> they're padded with whitespace at the end to make them of equal length
23:58:55 <fizzie> (Started to write the befunge interpreter after all.)
23:59:29 <fizzie> I probably won't finish this, much as I didn't finish the sed befunge interpreter. :p
00:02:01 <kipple> dang. I was so convinced there was a bug in the interpreter
00:02:15 <kipple> then I realized I had just confused ^ and v ....
00:02:55 <kipple> that seemed more intuitive to me :)
00:04:27 <lament> ^ and v are "get from", not "put in"
00:04:31 <lament> if that's what you mean.
00:04:58 <kipple> I was thinking it indicated the direction the value travels
00:06:24 <lament> but there's probably a bunch of bugs in the interpreter anyway
00:10:18 <fizzie> Heh, this will be very much non-dense, this befunge thing.
00:11:23 <fizzie> Let's just say "lots".
00:12:09 <fizzie> (I probably won't need more, though.)
00:12:58 <fizzie> Most of the time a lot of them will be silent.
00:17:11 <graue> cellular automata are cool
00:17:28 <lament> fizzie: you could always put a bunch of collectively-nop operations
00:18:19 <lament> fizzie: which in Fugue would be something like "push number/pop"
00:18:46 <lament> (push number - a second. then any interval, corresponding to the actual number. Then pop - a unison)
00:19:26 <lament> then again, voices that are silent most of the time could be assigned particularly ominous instruments
00:19:45 <lament> like bells or whatever :)
00:21:51 <lament> kinda neat when your program requires a symphonic orchestra to perform.
00:26:44 <Keymaker> is there any way to count the amount of cells/whaterver there is in list?
00:36:46 <malaprop> I get paid to code in Python all day and it makes me very happy.
00:43:40 <fizzie> Whee, my befunge program "12345@" prints out (a stack dump, at the end of the interpreter) 5, 4, 5, 1 and exits. :) :)
00:44:40 <lament> from a review of a topology textbook: "The beginner may be troubled as to the way connectedness is defined, since it is defined as the negation of disconnectedness"
00:44:43 <fizzie> With 13 voices. http://www.befunge.org/~fis/bef.prel if you want to see it, but it's very much work-in-progress (only supports > direction at-the-moment, no _| or anything).
00:45:58 <fizzie> Uh, "123+45@" was the program, I mean.
00:46:35 <fizzie> Oh, and the program input only reads 2000 bytes and assumes they form a 80x25 grid, and wrapping is not supported. :p
00:47:01 <fizzie> I used perl -e 'print "123+45@", " " x 7999;' > test.bef to create the input.
00:47:39 <fizzie> I'll improve it to read actual lines when I have some Free Time (tm).
00:52:32 <fizzie> The topmost three voices select which parts of code to run, based on the current-command on the stack of the third voice, voices 4 and 5 contain the playfield, voices 6 and 8 are quite temporary, voices 7 and 9 hold the current IP and delta, voice 10 contains a '1' to drive the main loop (or 0 after a '@'), voice 11 has the befunge stack and voices 12 and 13 are temporary.
00:53:55 <fizzie> It seems I've implemented only the befunge commands #, $, *, +, -, [0-9] and @. Will do the rest later.
00:54:24 <Keymaker> by the way; any way to print a character in python so that it would not make new line as well?
00:55:23 <fizzie> (Disclaimer: I don't do python.)
00:56:32 <fizzie> Seems that ending a 'print' statement with a , (comma) would also work.
00:56:48 <fizzie> "A "\n" character is written at the end, unless the print statement ends with a comma. This is the only action if the statement contains just the keyword print."
01:37:07 <graue> is INTERCAL a Turing tarpit?
01:37:29 <graue> is Befunge a Turing tarpit?
01:38:57 <kipple> befunge? I would say no. way too many unnessecary instructions
01:40:12 <kipple> I don't think INTERCAL qualifies either.
01:41:03 <kipple> malaprop: http://esoteric.voxelperfect.net/wiki/Turing_tarpit
01:41:34 <malaprop> I think Befunge is just for fun.
01:42:23 <kipple> *sigh* when will I ever learn to spell necessary.... :(
01:48:06 -!- Keymaker has left (?).
01:49:22 -!- wooby has quit.
02:37:34 <GregorR> somebody.write("Hello, World!\n");
02:37:38 <GregorR> (it may take a while to go)
02:37:51 <lament> GregorR: this channel is #esoteric
02:38:18 <malaprop> GregorR: I think you're going to have trouble with recursion.
02:38:40 <malaprop> And if you write a working 99 bottles program, we'll have to kickban you.
02:43:55 <GregorR> lament: The name is a conjunction of #esoteric and lang :P
02:45:25 <GregorR> for every i from 99 down to 2: somebody.write(i + " bottles of beer on the wall, " + i + " bottles of beer!\nTake one down, and pass it around, " + (i - 1) + " bottles of beer on the wall!\n";
02:45:41 <GregorR> Oh, forgot the ) at the end
02:45:45 -!- graue has quit (Read error: 60 (Operation timed out)).
02:45:45 -!- kipple has quit (Operation timed out).
02:46:17 <malaprop> GregorR: Hm, you expect us to be dynamically typed and just convert i from int to str for you? That's kinda presumptuous.
02:50:53 <GregorR> PLUS, it's nondeterministic!
04:11:29 -!- graue has joined.
04:36:19 -!- malaprop has quit ("sleep").
05:05:24 <lament> so will you change the logo?
05:22:39 <graue> did you make a new one?
05:24:53 <graue> then i have nothing to change it to
05:25:24 <lament> the Piet fibonacci numbers program
05:25:37 <lament> http://www.dangermouse.net/esoteric/fibbig.gif
05:26:05 <graue> did the author agree to PD-ize that?
05:26:13 <graue> i missed that detail
05:26:20 <lament> he replied to my email, and also came here
05:26:50 <graue> wait, isn't that the program that has a bug?
05:27:25 <graue> http://www.bertnase.de/npiet/picture.html
05:29:47 <lament> then perhaps you can get the original interpreter to run and check if it has a bug or not :)
05:30:34 <graue> i don't know that much perl :)
05:30:38 <lament> i.e. this is most likely not a bug but a discrepancy between npiet and original piet
05:32:43 <graue> well, "original piet" was implemented in perl by Marc Majcher, who is not the author of the fibonacci program
05:34:13 <lament> it would be weird for it to have a bug
05:34:26 <lament> there's a fairly detailed explanation of the program on http://www.dangermouse.net/esoteric/piet.html
05:35:10 <graue> npiet trace is here: http://www.bertnase.de/npiet/fib-trace-big.png
05:46:22 -!- wooby has joined.
05:48:27 <graue> i rather like kipple's spoofs, especially the last two
06:02:39 -!- wooby has quit.
06:06:29 -!- graue has quit ("Leaving").
07:56:30 -!- sp3tt has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:52:45 -!- Keymaker has joined.
08:54:58 <Keymaker> i'm 18 now. today is my birthday
09:05:32 <lament> http://www.efnet-math.org/Meta/sine1.htm
09:35:00 -!- Keymaker has left (?).
11:14:14 -!- pgimeno_ has joined.
11:14:15 -!- pgimeno has quit (Read error: 131 (Connection reset by peer)).
11:41:04 -!- kipple has joined.
12:25:22 -!- sp3tt_ has joined.
12:32:55 -!- sp3tt has quit (Read error: 145 (Connection timed out)).
13:53:48 -!- malaprop has joined.
14:00:08 -!- sp3tt_ has changed nick to sp3tt.
14:57:20 -!- sp3tt_ has joined.
15:05:33 -!- sp3tt has quit (Read error: 60 (Operation timed out)).
16:06:38 -!- Keymaker has joined.
16:34:44 -!- Keymaker has quit ("Freedom!").
17:02:43 -!- cmeme has quit (Connection reset by peer).
17:03:01 -!- cmeme has joined.
18:50:30 -!- cmeme has quit (Read error: 131 (Connection reset by peer)).
18:52:31 -!- cmeme has joined.
18:52:47 -!- cmeme has quit (Remote closed the connection).
18:53:32 -!- cmeme has joined.
18:55:39 -!- cmeme has quit (Remote closed the connection).
18:56:50 -!- cmeme has joined.
18:56:53 -!- cmeme has quit (Remote closed the connection).
18:57:36 -!- cmeme has joined.
19:18:27 -!- pgimeno_ has changed nick to pgimeno.
19:38:50 <pgimeno> I'm hopefully talking to him via the log
20:07:35 <pgimeno> lament: very interesting the sin(1deg) expansion, I already knew a different sin(3deg) one (plus I've just found one without any imaginary part)
20:09:50 <pgimeno> (actually muMATH found it but anyway) ;)
20:14:55 <pgimeno> SIN(#PI/180) == -3/4/(-27/8 (4 - (7 + 6^(1/2) (5 + 5^(1/2))^(1/2) + 5^(1/2))^(1/2))^(1/2)/2^(3/2) + (2187/32 - 729/128 (7 + 6^(1/2) (5 + 5^(1/2))^(1/2) + 5^(1/2))^(1/2))^(1/2)/2)^(1/3) + (-27/8 (4 - (7 + 6^(1/2) (5 + 5^(1/2))^(1/2) + 5^(1/2))^(1/2))^(1/2)/2^(3/2) + (2187/32 - 729/128 (7 + 6^(1/2) (5 + 5^(1/2))^(1/2) + 5^(1/2))^(1/2))^(1/2)/2)^(1/3)/3
20:41:35 <pgimeno> not much interest in #math apparently
21:21:35 -!- sp3tt_ has quit ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]").
21:27:30 <kipple> there are so many new esolangs these days, it's hard to keep up...
21:27:50 -!- Keymaker has joined.
21:29:20 <Keymaker> i was making a new language today
21:29:25 <pgimeno> in spain you reach independency from parents at 18, don't know in your country
21:30:42 <Keymaker> all stuff isn't clear, here is something :)
21:32:25 <Keymaker> i'll probably call the language "snack", that is, because the interpreter eats the source code. execution of program will be finished when the whole code is removed/eaten. :) the interpreter i've been working on is made with python because it seems to be really cool and fun language. anyways, i'm not sure will this method work:
21:34:07 <Keymaker> like when the program is started, the whole program code is stored into memory. when the code is executed, '#' sets toggle to 1 or 0, depending its value (in the beginning it's always 0). '?' instruction, executed if toggle is 1, will place the entire programs source to that place
21:34:44 <Keymaker> when the program is loaded, it will be put on stack, and when reading instructions they are popped from it (and that way removed)
21:35:32 <Keymaker> anyways; this piece of code #?# (when got to '?') would result the program be ##?# at that point
21:35:55 <Keymaker> i'm not sure what to make the other instructions be, or anything.. not sure if this will work.
21:36:55 <pgimeno> so program execution is from right to left?
21:38:10 <Keymaker> imagine it as stack, filled with program source from left to right
21:38:26 <Keymaker> (i'll be back in 5 mins, eat something!)
21:38:29 <pgimeno> hum, not much instructions to do anything I guess
21:47:13 <Keymaker> another idea was to make language that would let user switch between program memory and memory memory :)
21:47:23 <Keymaker> that was user could do self modifying code
21:48:14 <Keymaker> that would probably not-delete the instructions after executing them
21:49:50 <Keymaker> about python; anyone know how i can make 2d arrays?
21:50:49 <pgimeno> re instructions: I can't help you with that
21:51:31 <Keymaker> like for example access some x,y?
21:52:33 <malaprop> first element in a list is accessed with [0], not [1]
21:53:55 <malaprop> 0-based vs. 1-based is an arbitrary decision in a language without pointers
21:55:47 <pgimeno> I planned to implement a trick for my malbolge interpreter, then I went for straight list and now that the malbolge programs are growing I'm regretting it
21:55:49 <fizzie> "0-based is more natural: I mean, who's ever heard of anyone who'd start counting from 1?"
21:59:54 <Keymaker> rgh.. can't get this working..
22:00:47 <malaprop> In Python a list doesn't have an element [8] without also elements [0-7]
22:01:08 <malaprop> Perhaps what you want is a dictionary indexed by tuple.
22:01:30 <Keymaker> like for example i would like 2d array like:
22:02:24 <malaprop> Do: data = {}; data[(8, 4)] = 33;
22:05:19 <malaprop> Remember, in Python everything is an object. Tuples are immutable objects, and dictionaries can be indexed by any immutable object, whether that's an int or a tuple.
22:09:00 <pgimeno> btw, my trick was to use a tuple of 1-element lists so that the content of the tuple was changeable but random access was quick
22:10:13 <malaprop> pgimeno: dictionary access is constant time.
22:10:44 <pgimeno> yeah but it needs hashing which is not so fast as indexed access
22:11:36 <malaprop> Ya, but it's not a weird use of a dict. :) What were you writing that was so time-sensitive?
22:12:30 <fizzie> Everything is time-insensitive when the amount of operations goes past few millions or so.
22:13:00 <malaprop> Ya, I figured he was either doing something fast or big, was just curious.
22:13:28 <fizzie> I sure hope I won't need to fix _that_ regexp too.
22:14:25 <fizzie> (That second one is supposed to be applied on the first.)
22:15:27 <pgimeno> I finally used a list but even the cat program is slow... list access seems to be O(n), not O(1)
22:15:42 <malaprop> Ya, list access is linear time.
22:16:50 <fizzie> Does that language have arrays?
22:17:03 <pgimeno> there's an array package but I'm reluctant to using third party libraries if avoidable
22:17:24 <malaprop> Sets, tuples, lists, dictionaries.
22:17:48 <pgimeno> there are, but it's a third party language extension
22:19:44 <pgimeno> anyway this should work: stuff=ysize*(xsize*([0],),)
22:19:52 <pgimeno> then stuff[y][x][0] is every element
22:22:21 -!- calamari has joined.
22:24:48 <fizzie> It's alive! (Read: welcome.)
22:50:46 <kipple> this is strange. looks like the voxelperfect web server treats files differently based on whether or not they contain comments: http://esoteric.voxelperfect.net/files/kipple/src/
22:51:25 <kipple> some files (the ones including # comments) seem to be classified as text files, while the rest do not...
22:51:58 <fizzie> It could be some heuristic based on first line.
22:55:21 <fizzie> Depending on the server you could possibly work around it. If it (is apache and has mod_cern_meta enabled || othewise supports cern httpd metadata thing), you can add a directory .web and there files foo.k.meta and Content-type: text/plain into the files.
22:56:12 <Keymaker> well, i'm off to nature (read: night photographin')
22:56:13 <fizzie> And possibly adding a "DefaultType text/plain" to .htaccess of that directory could also work.
22:56:28 -!- Keymaker has left (?).
22:56:46 <fizzie> Bye, and I want a camera that doesn't have a stoopid 15-sec max limit of exposure time.
22:59:13 <calamari> here is my latest contribution to insanity: http://esoteric.voxelperfect.net/wiki/BF_instruction_minimalization
23:09:27 <calamari> latest EsoShell: http://lilly.csoft.net/~jeffryj/EsoShell
23:11:14 <calamari> I'm pretty sure that'll be good enough to be called the real 1.00
23:11:34 <calamari> so if I need to change anything I'll update the version number from here on out :)
23:19:47 <kipple> do you have other languages planned?
23:23:54 <kipple> btw, the brainfuck interpreter outputs numbers, not chars.....
23:25:52 <calamari> indeed.. wonder how that happened :)
23:26:26 <kipple> do you use System.out.print() with an int as argumen?
23:28:48 <calamari> must have been debugging something at the time
23:29:08 <calamari> I took the (char) cast off the print for some reason :)
23:30:52 <calamari> I don't have any current plans to add new languages.. but anyone else is welcome to
23:31:11 <calamari> The API is fairly straightforward
23:33:12 <calamari> Basically, all you do to add a language is have your class extend "Program" and put the class file in the Programs directory. Well, I guess you'd also want to edit the help program so people know about it :)
23:34:02 <calamari> Wish I knew a way to have Java automatically tell me the accessible files.. too many security restrctions
23:34:26 <kipple> yeah, applets are very restricted (for good reasons, though!)
23:35:21 <kipple> if the directory is browseable with HTTP you can get it that way
23:37:09 <calamari> are you speaking in general, or would you happen to know which class I can use?
23:39:29 <GregorR> Gaaah, stop talking!!! I can't keep up with the logs ;)
00:06:58 <calamari> lol.. autocomplete gave away my laziness :)
00:51:43 -!- calamari has quit (brown.freenode.net irc.freenode.net).
00:51:43 -!- cmeme has quit (brown.freenode.net irc.freenode.net).
00:51:46 -!- cpressey has quit (brown.freenode.net irc.freenode.net).
00:51:55 -!- cmeme has joined.
00:56:06 -!- cpressey has joined.
01:00:11 -!- calamari has joined.
01:47:27 -!- heatsink has joined.
02:38:10 -!- calamari has quit (Read error: 110 (Connection timed out)).
02:56:36 -!- kipple has quit (Read error: 110 (Connection timed out)).
04:58:03 -!- heatsink has quit ("Leaving").
05:29:10 -!- calamari has joined.
05:36:21 <GregorR> Mmmmmmmmmmmmmmmmmmmmmmmmmmmm, squid.
05:36:34 -!- malaprop has quit ("sleep").
05:49:20 -!- calamari has quit (Read error: 145 (Connection timed out)).
06:08:20 -!- calamari has joined.
06:09:27 <calamari> hi pgimeno, how's it going? :)
06:09:53 <pgimeno> fine, except that a mosquito woke me up earlier than I wish
06:10:08 <pgimeno> have you been away or something?
06:10:18 <calamari> where do you live? no mosquitos in Tucson, AZ right now :)
06:10:51 <calamari> pgimeno: yeah, I walked into the kitchen and the room was full of gas.. had to get off to call maintenance
06:11:47 <calamari> yeah.. I'm not very familiar with gas stoves yet.. I've had electric all my life
06:12:34 <pgimeno> I've tried esoshell but even 'help' fails to work... I don't know what happens
06:21:46 <calamari> I wonder if I can write a Java 1.1 version of the applet... I should try it
06:40:29 <calamari> cool, got a test button working in AWT.. now on the rest of the application :)
06:40:53 <GregorR> Ah, good ooooooooooooooool' AWT
06:42:10 <calamari> especially the ooooooooool' part ;)
06:42:19 <GregorR> Hence the preponderance of 'o's ;)
06:43:50 <pgimeno> this is java 1.4, for the record
06:44:26 <GregorR> I'm running Java pre-alpha 0.1, will it work for me?
06:47:41 <GregorR> SO, who wants to form the #esoteric chat room on DirectNet? 8-D
06:54:28 <GregorR> No, I'm just trying to get users :'(
06:55:37 <GregorR> It's my instant messaging and chat system (shameless plug points +1)
07:23:41 * calamari attempts to remove a duplicate set of unwanted scrollbars
07:33:55 <lindi-> calamari: btw, a tricky keyevent bug has been fixed in gnu classpath and now esoshell can be used with it
07:34:16 <lindi-> there's still some repaint problem though, but it does not render it unusable
07:37:15 <calamari> 'll be able to restrict the cursor w/ AWT.. but I'm trying
07:43:39 <calamari> lindi-: the applet does not seem to work at all with IE.. I'm hoping now it will
07:44:28 <calamari> also, I want to try to get it working for pgimeno
07:53:40 <calamari> hmm, I don't get it.. still doesn't work in IE
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:13:14 <calamari> well, it's running in IE, kinda
08:21:06 -!- sp3tt has joined.
08:22:29 <lindi-> i have no idea what pgimeno is
08:24:42 <calamari> lindi-: pgimeno is a guy that hangs out in here :)
08:25:14 <pgimeno> thanks for the effort, calamari
08:25:38 <calamari> pgimeno: try this (I'm very curious) http://lilly.csoft.net/~jeffryj/EsoShell-AWT/
08:26:00 <calamari> It looks terrible and doesn't work right.. but maybe it'll load?
08:27:10 <pgimeno> it does load indeed and it looks terrible indeed ;)
08:28:11 <calamari> you have to click where the cursor should be :)
08:31:30 <calamari> StringBuffer didn't have a delete method until Java 1.2.. lol
08:32:08 <calamari> I bet there are plenty of these little 1.2+ bugs hiding everywhere
08:34:24 <calamari> pgimeno: IE doesn't seem to like it unless it's 1.1 or below
08:35:09 <calamari> maybe iut's the way I'm compiling it
08:35:55 <pgimeno> hm, I see, IE does not load anything
08:37:30 <pgimeno> okay, now they work in reverse: EsoShell/ works in IE while EsoShell-AWT does not (IE 6.0.2600.0000.whatever, Java 1.4.2_06)
08:41:54 <pgimeno> snapshot: http://www.formauri.es/personal/pgimeno/temp/esoshell.png
08:42:31 <pgimeno> the truncation is there in the original
08:46:56 <calamari> yeah thats the awt version.. I didn't bother fixing the size yet
08:48:24 <calamari> what I'm trying to find out is whether I can actually run 1.2+ functions in IE.. I have Java1.4 installed so the answer should be yes
08:49:11 <calamari> if so, then I can probably use the original Swing stuff
08:53:08 <calamari> there are lots of awt bugs right now
08:53:52 <pgimeno> "write once, run everywhere"... ha
09:00:49 <lindi-> pgimeno: sure, just use gnu classpath :)
09:05:07 <calamari> I think I found my problem, at least.. it may be using Microsoft Java and not Sun
09:05:15 -!- sp3tt_ has joined.
09:10:07 <calamari> lindi-: gcj must have come a long way since the last time I used it if it can run Swing apps now
09:13:27 -!- sp3tt has quit (Read error: 145 (Connection timed out)).
09:47:30 <calamari> cool.. my Java install was broken.. even http://kidsquid.com/EsoShell works in IE6 now.. boy is Sun Java slow compared to the Microsoft JIT.. took about 10 minutes to load the applet in qemu
09:50:24 <pgimeno> I guess MS preloads stuff to create the illusion that it loads faster
09:51:19 <fizzie> This box has Sun's jdk-1.5/5.0/whatever, and it loads in a ~second.
09:51:41 <lament> man, google maps is so awesome
09:51:47 <calamari> pgimeno: or it's so old that it only can use java 1.1 ;)
09:52:12 <calamari> fizzie: yeah, same with my linux machine.. it's only slow in the emulator
09:53:42 <calamari> pgimeno: any idea how to add the applet to the wiki?
09:53:54 <fizzie> lament; it seems to lack this thing called Europe.
09:54:30 <pgimeno> hmm, I'm not sure that's possible directly
09:54:38 <lament> yeah, but i'm in america
09:54:55 <lament> but it's just so completely amazing
09:55:19 <lament> you can switch to satellite view and get from anywhere to anywhere by scrolling the thing
09:55:50 <lament> the quality gets very shitty outside populated areas though :(
09:56:35 <pgimeno> calamari: try asking graue
09:57:59 <lament> http://maps.google.com/maps?ll=46.197510,-122.187195&spn=0.212173,0.276031&t=k&hl=en
09:58:11 <pgimeno> for spain we have http://sigpac.mapa.es/fega/visor/
09:59:48 <lament> oh man los angeles is fucking HUGE
10:00:25 <calamari> pgimeno: oh that's right.. hafta beg to upload files, don't I? hehe
10:01:08 <pgimeno> well, you can get svn write permissions but that's not a wiki page by itself
10:01:38 <lament> http://maps.google.com/maps?ll=46.197510,-122.187195&spn=0.212173,0.276031&t=k&hl=en
10:02:23 <lament> http://maps.google.com/maps?ll=51.208649,-73.164825&spn=0.848694,1.104126&t=k&hl=en
10:05:15 -!- DMM has joined.
10:12:12 <DMM> I read about Homespring for the first time today. Wow... that just blew me away :-)
10:14:16 <pgimeno> we've been wondering which of npiet or the perl interpreter is more correct according to the piet specs
10:15:07 <DMM> oh... I haven't looked at them myself. What's the difference?
10:16:52 <pgimeno> please see http://www.bertnase.de/npiet/picture.html
10:18:00 <lament> DMM: graue is afraid to use your fibonacci program as the logo
10:18:09 <lament> DMM: because the npiet page says it has a bug and doesn't work
10:18:27 <lament> (the page pgimeno just gave a link to)
10:18:34 <DMM> I intended the npiet behaviour of sliding in a straight line
10:19:11 <DMM> hmmm, there may be a bug :-(
10:19:23 <DMM> It's hard to code in when you don't have an interpreter :-)
10:20:26 <lament> so you never actually checked the program?
10:21:21 <DMM> not with an interpreter. There was none when I wrote them. I traced them by hand.
10:23:07 <DMM> it might just need a black codel instead of the white one above the yellow block
10:29:27 <pgimeno> I've just tried that and it prints 112 and exits
10:29:40 <lament> does Prelude qualify as a turing tarpit?
10:30:02 -!- calamari has quit (Read error: 110 (Connection timed out)).
10:30:04 <lament> it has 19 instructions
10:30:09 <lament> ten of which push numbers 0..9
10:30:16 <DMM> pgimeno: please feel free to debug it properly :-)
10:31:49 <DMM> 112 implies it's traversing the loop once and then falling out
10:32:31 <DMM> might need changing of the yellow codel below the blue loop entry point to another colour
10:37:15 <DMM> I just like making the languages... actually coding in them isn't nearly as much fun. :-)
10:39:07 <DMM> I have some cool ideas for more non-textual languages
10:39:45 <DMM> I'm kind of surprised that Piet seems to be the first one
10:40:37 <pgimeno> I'd like to see a graphical language with graphical output
10:40:42 <DMM> I want to do a Tetris-based one, where you drop different blocks into a well, and when the rows disappear, the configuration of colours in the row causes operations to occur
10:41:09 <lament> there're non-textual languages
10:41:22 <lament> aardappel made a bunch i believe
10:42:42 <pgimeno> a Tetris-based lang could be NP-complete to code in :)
10:45:11 <DMM> indeed he has. A lot of tree-based ones though...
10:46:47 <pgimeno> reference for Tetris NP-completeness: http://theory.lcs.mit.edu/~edemaine/papers/Tetris_TR2002/
10:49:56 * lament creates http://esoteric.voxelperfect.net/wiki/Popular_problem
10:50:06 <lament> not sure if the article name is any good
10:53:26 <DMM> good article. Yeah, there's no obvious name for it
10:55:17 * DMM ponders a quine in Piet...
10:55:57 <lament> you never specify the format of input
10:56:30 <lament> it's "any lossless graphics format", pretty much?
10:56:31 <DMM> numbers or characters :-)
10:56:41 <DMM> oh, that... yeah, basically
10:57:10 <lament> i'm actually working (sort of) on a language where source code is polyphonic music
10:57:24 <DMM> although ideally it's really just the colours. The encoding into a graphics format is just a way of representing the program, not the program itself. :_)
10:57:42 <lament> i'm so confused as to what format i would use that i doubt i'll ever implement it
10:57:54 <DMM> oooh... I thought of a music-based language just yesterday. But I guess I'll let you do it first :-)
10:57:55 <lament> i'll just write programs and play them on the piano :)
10:58:06 <lament> well, i already have one as it happens :)
10:58:20 <DMM> documented?
10:58:21 <lament> just not sure if it's good enough
10:58:27 <lament> have a look at Prelude
10:58:40 <lament> http://esoteric.voxelperfect.net/wiki/Prelude
10:58:53 <lament> Fugue will be the same, except with different intervals corresponding to different instructions
10:59:06 <lament> each "voice" is indeed a separate voice
10:59:10 <lament> note duration doesn't matter
10:59:47 <DMM> interesting
11:03:50 <DMM> I was thinking of a language based on actual music. Where the note, duration, key, time signature, etc are important
11:04:06 <DMM> you'd write it on a stave
11:04:24 <lament> well, there's no reason to have EVERYTHING be important
11:04:34 <DMM> well no...
11:05:05 <lament> Fugue you write on a stave. But the only thing that matters are the intervals (and the number of voices)
11:06:18 <lament> music notation is just way too packed with different kinds of info
11:06:22 <puzzlet> wow, now you got the complete spec?
11:06:59 <lament> i can just tell you the provisional list of intervals
11:07:23 <lament> i'm just afraid my provisional list sucks
11:13:52 * puzzlet is trying to learn Prelude
11:14:47 <DMM> I got some TV to watch... later guys
11:15:10 <puzzlet> lament: about ^ and v, does it pop the top value from current voice?
11:15:21 <lament> it doesn't pop anything at all
11:15:26 -!- DMM has left (?).
11:15:42 <puzzlet> only ! and # would pop the top value?
11:17:26 <pgimeno> my thinking about a music-based language is that only note increases/decreases count as instructions; that allows for maximum expressiveness IMO
11:17:42 <lament> That's how Fugue will work.
11:18:01 <lament> I should just release the damn spec actually.
11:18:05 <puzzlet> i like the () idea, looks like a pair of repeat bars
11:18:14 <lament> In fact, how about I do that.
11:19:19 <puzzlet> what is your plan to notate down the music into a file?
11:19:38 <lament> I'm not planning to implement Fugue :)
11:20:33 <puzzlet> i wish to write a meta-code, which itself is a true fugue..
11:21:48 <puzzlet> if Fugue code is written on midi, midi format doesn't have repeat bars.
11:22:18 <pgimeno> why not write an implementation? just write a Fourier analyzer to interpret the sound coming to the soundcard; you could even whistle the programs
11:22:38 <lament> puzzlet: actually repeating a sound when the program is in a loop is kinda silly.
11:22:56 <lament> pgimeno: you can't very well whistle three-part polyphony
11:23:25 <pgimeno> with the help of two other guys, you can :)
11:23:26 <puzzlet> that's why we should do a pair programming
11:24:37 <pgimeno> programming in pairs is part of the "xtreme programming" philosophy
11:25:37 <pgimeno> so, instead of handing the keyboard one to the other, they could both whistle at the same time
11:26:05 <pgimeno> that can increase the production of code
11:31:56 <fizzie> I guess I should implement the rest of my Prelude Befunge interpreter.
11:33:02 <lament> http://esoteric.voxelperfect.net/wiki/Fugue
11:43:12 <pgimeno> though it needs too much information in my opinion
11:43:44 <pgimeno> imagine the BF quine that starts with a lot of +++++++>++++>++++++++...
11:45:18 <lament> note that ++++++++ is just three notes in Fugue
11:46:01 <lament> any third and an ascending minor sixth
11:46:01 <pgimeno> I was thinking in the line of "note increment wrt the last" = 1; "note decrement wrt the last" = 0; "same note" = "repeat last symbol", and a minimalistic two-symbol language like whirl, iota or jot
11:46:44 <pgimeno> might work but notes would soon go out of range
11:47:07 <lament> no, because you can always correct
11:47:14 <lament> by pushing a number and popping it
11:47:32 <lament> i.e. any third + any interval whatever + repeat last note
11:48:01 <pgimeno> you've forgotten to include it in the main list, btw
11:48:47 <lament> do we really need both the main list and category:language
11:49:25 <lament> Fugue is definitely harder to write nice-sounding music in than a language like you proposed
11:49:44 <pgimeno> my idea was that the main list hold short one-line descriptions of each language
11:49:52 <lament> but who ever sad writing music should be easy :)
11:50:35 <pgimeno> I remember someone saying that most songs can be distinguished by coding the increments/decrements of notes in them
11:51:12 <pgimeno> that's what suggested me the idea
11:54:42 <puzzlet> lament, how do you define ' ' in Fugue?
11:55:34 <puzzlet> then do note lengths matter?
11:56:06 <lament> only in that they establish what comes before what.
11:56:15 <lament> (or simultaneously with)
12:07:04 -!- kipple has joined.
12:45:23 -!- Keymaker has joined.
12:52:12 <puzzlet> it's confusing when there are + and - signs all over what others say.
12:52:21 <puzzlet> [20:52:15] <Keymaker> -[-]
12:52:42 <Keymaker> w+h-a-t ++do +y-ou+ ++me-a+n++?
12:54:01 <puzzlet> it seems it's server's problem
12:54:53 <puzzlet> i see + and - signs everwhere in freenode, and even ACTION's don't look as what they should look.
12:56:24 <pgimeno> I think it must be because of your IRC client
12:56:56 <puzzlet> i use irssi. i checked rawlog, but there are the signs there too
12:57:49 <puzzlet> and it just came out to happen yesterday when i restarted the client. no changes to configuration
13:05:51 <fizzie> Uh, strange. I don't see any +s.
13:28:14 <Keymaker> anyone know where i could find this file pygame-1.6.win32-py2.4.exe (windows pygame)?
13:28:19 <Keymaker> can't download from official site
13:30:03 <fizzie> Well, http://www.willmcgugan.com/pygame-1.6.win32-py2.4.exe for example.
13:31:05 <Keymaker> google? is that some new search engine?
13:31:53 <puzzlet> Keymaker, you must be kidding
13:34:02 <Keymaker> never heard of any google before
13:47:36 <GregorR> Since Keymaker just found the internet yesterday ;)
14:14:10 -!- lament has quit (Read error: 110 (Connection timed out)).
14:23:32 -!- malaprop has joined.
14:24:19 -!- lament has joined.
15:52:23 <Keymaker> kipple: seen movie "hawaii, oslo"
15:54:39 <kipple> why? are you gonna watch it?
15:55:04 <Keymaker> i just thought because it starts screening here and there reads it was huge success in norway
15:55:42 <kipple> it was a bit overrated IMHO. It got extremely good reviews here
15:56:56 <Keymaker> or should i perhaps go to see "white noise"?
15:57:13 <kipple> don't know anything about that one
16:01:37 <Keymaker> movies just tend to be clich today because everything's done before
16:21:16 <Keymaker> ok.. i'll go to see movie "hostage"
16:31:51 * sp3tt_ wrote a 4 page PDF on brainfuck >.<
16:36:40 <Keymaker> upload it somewhere, i'd like to read it later when it get back home
16:37:24 <Keymaker> (i need to leave now because i booked the movie ticket from web so i need to get it before 19:30)
16:37:33 <pgimeno> doh, Piet is troublesome in that inserting or removing an instruction means changing the whole program
16:37:41 -!- Keymaker has quit ("I've seen this dj vu before..").
16:38:23 <pgimeno> that's the issue of incremental instructions
16:39:49 <pgimeno> it's easier to write a new program than to modify an existing one
16:40:33 <pgimeno> I wanted to fix the fibonacci Piet program but I think that writing another one will be easier
16:41:41 <pgimeno> I think that one which prints "ESOTERIC" will be OK to be used as a logo
17:24:08 -!- sp3tt_ has changed nick to sp3tt.
17:33:19 <pgimeno> this Piet program prints "ESO": http://www.formauri.es/personal/pgimeno/temp/eso-big.png
17:35:54 <pgimeno> I'm sorry, I'm not much of an artist
18:35:08 -!- wooby has joined.
21:11:50 -!- graue has joined.
22:09:57 -!- calamari has joined.
22:11:34 <calamari> hey lament, wooby.. what's new & exciting?
22:12:07 <wooby> not much, working through a bison tutorial with the ultimate hope of fashioning a BF compiler
22:13:12 <calamari> something you invent, or c-like?
22:13:53 <wooby> what do you mean by hll?
22:14:05 <wooby> i'm at the very start of this tutorial, you see :)
22:14:16 <lament> calamari: i'm guessing he wants to compile brainfuck
22:14:20 <calamari> maybe I misunderstand what you're trying to do
22:15:14 <calamari> my usual fun is compiling to bf, so I get easily confused :)
22:15:35 <wooby> lol i know what you mean, i'm interested in that too :)
22:15:47 <wooby> how about you, what's new and great
22:16:32 -!- sp3tt has quit (Read error: 54 (Connection reset by peer)).
22:19:01 <calamari> wooby: http://esoteric.voxelperfect.net/wiki/BF_instruction_minimalization
22:19:38 <calamari> wooby: I think that last step still needs a bit of work, though :) I'd like a way to modify every bit, not just every other
22:22:21 -!- Keymaker has joined.
22:22:24 <wooby> hm, that's fascinating
22:22:50 <Keymaker> i don't remember if i have mentioned that before, i saw that link yesterday
22:23:24 <calamari> Keymaker: thanks.. but I haven't really progressed much past BitChanger of a few years ago
22:25:33 <Keymaker> but that's really good achievement too
22:26:43 <calamari> I'm not sure that it's turing complete yet
22:28:11 <calamari> for example (}()) should be like [-]<.. but it only gets it by luck
22:36:23 <calamari> actually it'd be (()}) wouldn't it
22:44:48 -!- graue_ has joined.
23:18:35 <Keymaker> and btw, "hostage" was very good movie
23:26:11 <calamari> graue: I'd really like to integrate EsoShell into the wiki. Would you like to work on it with me?
23:26:49 <graue> i'd rather not have executable code running out of the wiki
23:26:56 <graue> it's for information, not running programs
23:27:51 <calamari> graue: your vision of the wiki is a bit narrower than I'd hoped for
23:28:28 <calamari> I'm halfway wondering if you'll be pulling up those in-progress pages at any moment
23:30:29 <calamari> now I realize it's your wiki, you're running it, and all that.. which I appreciate.. but perhaps if you're going to stifle the expressive purposes of the wiki we need to abandon your stranglehold and start a new wiki elsewhere
23:31:20 <kipple> calamari: how exactly were you thinking of integrating the esoshell into the wiki?
23:32:05 <calamari> kipple: when all this wiki talk started up again, it was suggested that it'd be cool to be able to experimentally test esolangs from the wiki
23:32:24 <kipple> yeah, I know. I think it was me who suggested it...
23:32:39 <graue> add a prominent external link then
23:32:56 <kipple> you could put it in the files archive and link to it from the wiki.
23:34:00 <malaprop> Speaking of wiki and files, what's the word on scheduled dumps?
23:35:10 <graue> help me out, how do i dump a mysql database from the command line?
23:35:40 <wooby> there's a program called mysqldump
23:35:56 <malaprop> mysqldump -a -c -C-e --add-drop-table --delayed-insert -Q -u (username) -p(password) -h (host) (db-name)
23:36:10 <malaprop> er, there should be a space between -C and -e
23:36:26 <malaprop> and probably tag onto the end > filename
23:37:12 <malaprop> kipple: or bzip2 as it deals better with text
23:37:27 <lament> doesn't bzip2 deal better with everything, not just text?
23:37:47 <graue> bzip2 deals especially better with text
23:38:04 <malaprop> lament: I don't know, I haven't done or seen good research.
23:38:19 <kipple> would be nice if the images directory is included in the zip as well
23:38:52 <graue> or you could just download the one and only image from commons.wikimedia.org if anything happens
23:39:47 <kipple> yes, but hopefully there will be more eventually...
23:40:25 <graue> then hopefully i can archive the images directory too, eventually
23:40:42 -!- calamari has quit (Read error: 145 (Connection timed out)).
23:45:24 <graue> i'm getting an error 1044, access denied... when using LOCK TABLES
23:45:30 -!- calamari has joined.
23:47:49 <calamari> graue: so you're saying that you're not going to host the files or the html to run them?
23:48:38 <graue_> no, i'm not saying that; they could go in the files archive, or in a new area
23:48:53 <graue_> i am saying they should not be part of the wiki
23:49:41 <graue_> because java applets are a huge can of worms
23:50:08 <graue_> i for one will not be able to use them; they'll freeze my windows 98 box, and on gnu/linux they'll give me ugly messages about installing nonfree plugins
23:50:20 <graue_> it's silly to junk up a page like that, when the point is information
23:50:34 <calamari> the applet wouldn't be on every page
23:50:53 <malaprop> graue_: sounds like your db user doesn't have access rights to lock the db tables
23:51:13 <kipple> but why not have that page in the files archive?
23:51:29 <calamari> kipple: how does that work? you need html to run the applet
23:51:46 <kipple> the files archive is accessible with HTTP
23:51:51 <calamari> so if it's just a file it can't be run
23:52:03 <calamari> it defeats the purpose of being an applet
23:52:09 <kipple> you just put both the HTML file and the JAR in the archive
23:52:57 <calamari> whouldn't it look nicer to have the wiki framework around it?
23:53:17 <graue_> no, it would not look nicer to make the wiki display missing plugin messages and/or freeze my browser
23:53:47 <calamari> graue: umm.. java doesn't freeze my browser.. fix your browser then
23:54:20 <graue_> well, that's constructive
23:54:24 <malaprop> calamari: He's using IE, can't fix.
23:54:43 <kipple> the applet would have to be on a page of it's own anyway, so people who don't want to run applets can just avoid that page
23:54:44 <graue_> the machine is a pentium 2, it's old and slow
23:55:19 <graue_> the point is my old, slow, broken computer can still access the wiki, because the wiki is just text, just information
23:55:28 <kipple> but then again, that would not be much different from an external page
23:55:29 <calamari> and you'd be able to edit it just like any other wiki page, to add content about ysing the program
23:55:48 <graue_> so add that content to the EsoShell article
23:56:00 <graue_> the instructions and program shouldn't be on the same page
23:56:34 * calamari had so many plans for this.. so frustrating to be blocked by ignorance
23:56:47 <kipple> it's very nice to have instructions on the same page, so you can simply scroll down when you need to look at them
23:56:58 <graue_> using an external page is not a blockade
23:57:30 <calamari> here's an idea.. don't go to the EsoShell wiki page ;)
23:57:39 <graue_> what if i want to read about it?
23:57:57 <graue_> what page do i go to to just read about it?
23:58:30 <graue_> which you just told me not to go to
23:58:37 <calamari> it'd be nicer to have separate pages for different languages
23:58:51 <graue_> it's not that hard: files archive (and hypothetical other sections of site) = stuff, wiki = descriptions of stuff
23:59:01 <calamari> for exmaple, a page full of bf programs to copy and paste in while running the applet
23:59:11 <graue_> then i encourage you to add a link at the bottom of each language, pointing to the convenient interpreter for that language
23:59:49 <calamari> graue: you still haven't said what is so wrong about allowing a Java applet directly on the wiki
00:00:01 <kipple> umm. I think he has...
00:00:19 <calamari> he has told me how he has a slow computer.. that's about it
00:02:20 <calamari> when I have time, I'll start a new wiki that is more user friendly
00:17:27 <graue> ok, let's try this again
00:17:36 <graue> there is "stuff", and there is "info about stuff"
00:17:58 <graue> a program is "stuff"
00:18:15 <graue> the wiki is for "info about stuff"
00:18:18 <malaprop> Is an example program stuff or info about stuff?
00:18:57 <malaprop> And I'll note that I don't see any reason the wiki can't also store "stuff".
00:19:29 <graue> the reason is that "stuff" can crash your computer, or require a certain operating system, or eat up your RAM
00:19:35 <graue> "info about stuff" is just information
00:19:50 <graue> my slow computer is one of many possible examples of why mixing "stuff" and "info about stuff" is a bad idea
00:20:18 <graue> i am quite happy to store relevant "stuff" on esoteric.voxelperfect.net, if people are interested in having it there
00:20:22 <malaprop> If you don't want "stuff", don't download it. If your web browser lets websites crash your computer, it is broken, period, and should not be used as the baseline for everthing.
00:20:54 <graue> i don't think websites should have programs in them at all
00:21:23 <graue> does that mean every website with a java applet is broken, period? or is my opinion NOT the final say on what is or isn't broken?
00:21:38 <malaprop> Looking at the existence of Flash, I've got to say that almost every else in the world disagrees with you on that one.
00:22:27 <graue> that's exactly my point
00:22:54 <graue> your opinion that my "broken" web browser should not be accommodated is not law, either
00:23:15 <malaprop> Your opinion on what is broken is invalid because you're not seeing that it's your browser that's broken. It's like the ethnic joke where the guy goes to the doctor and says "My leg hurts when I poke it, my chest hurts when I poke it, my head hurts when I poke it" and the doctor responds "Your finger is broken."
00:23:51 -!- graue_ has quit (Read error: 145 (Connection timed out)).
00:24:05 <malaprop> I'm not trying to be mean or insulting, just point out that web apps are not uncommon or inherently bad.
00:27:15 <graue> that doesn't change the fact that they don't belong on a wiki
00:27:30 <graue> there is nothing hard about the concept of separating content from information about that content
00:27:41 <kipple> that's not a "fact", that's your opinion...
00:27:52 <malaprop> They do belong on a wiki, the wiki has file support for just that reason.
00:28:08 <graue> the wiki has file support to store images
00:28:59 <calamari> graue: why does the esoteric wiki have to fit into the "normal" wiki.. we're supposed to be out there, right? :)
00:29:00 -!- graue_ has joined.
00:29:09 <malaprop> Dividing data and metadata is arbitrary. If you're providing both, provide them together.
00:29:47 <malaprop> And MediaWiki does not have file support just for images; otherwise it would not be possible to upload anything but images.
00:29:59 <calamari> that said, I can understand graue's reluctance to change his wiki.. he started that wiki before we all got together and started decided things.. so it isn't quite fair to ask him to change what was already there
00:30:43 <malaprop> I disagree. I'm asking because I see straightforward ways to make things better. Is very much in the wiki spirit.
00:32:18 -!- wooby has quit.
00:32:45 <calamari> malaprop: I think graue has his own ideas about how a wiki should be run, and doesn't want to change those to fit what the rest of us would like.. that's totally his choice tho. That's why I think it might be best to choose to start fresh
00:33:20 <malaprop> I'd rather build up than start again from scratch. It's why I'm such a pain in the ass.
00:33:52 <kipple> please, let us not end up with two competing wikis!
00:34:40 <malaprop> And on that note, I unfortunately have to go. I may be online again in a few hours or it'll be tomorrow morning (~13h).
00:42:46 <graue> having to put something one mouseclick away is a very stupid thing to fork a wiki over
00:44:13 <calamari> graue: I don't see it that way, exactly.. this one item certainly isn't a dealbreaker. What gets me is how you do not seem to care about the opinion of the rest of the community.. we had a lot of plans that were made together, and you singlehandledly vetoed those plans when we decided to go with your server.
00:46:01 <calamari> graue: we were going to have file uploading, but you didn't want that, until we complained so loudly you couldn't ignore it.. this java applet thing was in the works pretty much from the very beginning=, we we're going to have multiple wikis, etc..
00:46:50 <calamari> which is totally fine for your own server.. hey you're the boss.. but I don't think you're being very cooperative
00:47:30 <calamari> and so, in the future, when something needs to be done.. I'm sure it will be the same way
00:47:57 <graue_> i have vetoed all of one plan, put forward by two people; there is no problem moving the java applet one mouseclick away; the multiple wikis idea was rejected with everyone's agreement because it wasn't practical; file uploading is a feature that was implemented separately from the wiki with everyone's agreement who happened to speak up
00:48:30 <graue_> you're blowing a lot of hot air and it's silly, just for one extra mouseclick people will have to make to get to your java program
00:49:24 <calamari> graue: I recall things differently
00:49:49 <calamari> everyone wanted to be able to uplaod files, only requiring a user account
00:50:15 <calamari> you were the only one that wanted all the sql beg you to upload file hoops
00:50:56 <lament> people of the world rise against graue's tyrannical rule
00:52:21 <calamari> lament: I see no problem letting him run his wiki the way he wants to
00:53:18 <calamari> I think we should have left it that way from the beginning.. it was a mistake, is all. His wiki predates the whole eso preservation thing
00:58:15 <graue_> i actually started my wiki to preserve esoteric languages
00:58:27 <graue_> it just took a while for people to become interested
01:25:24 <kipple> personally it took a backup solution to become interested. otherwise Wikipedia would have been better
01:26:41 <lament> i still think ftp would be the best
01:32:57 <graue_> you mean for the files, right?
02:04:11 <lament> i mean, we don't actually need a wiki.
02:11:58 <calamari> well, I've discovered the reason I can't get a file list for my applet's help program.. http doesn't support getting a file list.. hehe
02:12:57 -!- kipple has quit (Read error: 145 (Connection timed out)).
02:14:58 <graue_> but that probably isn't exactly practical
02:15:53 <calamari> yeah.. it'll have to be something like that
02:23:45 -!- graue_ has quit ("brb").
02:23:54 <calamari> the built in commands don't change much, unless a new language is added
02:24:51 <calamari> it'd be cool to have some kind of programs page that it automatically loaded up, so you had a bunch of example programs to run. Would need to be a wiki though, otherwise content would be nonexistent
02:28:06 -!- wooby has joined.
02:28:21 <calamari> was just thinking about your idea
02:28:39 <calamari> it'll just need to be in one file
02:28:45 <wooby> what mechanism do you propose for referencing code?
02:29:09 <calamari> yeah.. have a certain wiki page, for say BF programs. Then, a program on the page would look something like
02:30:09 <calamari> then the program could parse the page to grab the programs
02:31:05 <calamari> I think you were hoping for something more interractive?
02:31:12 <wooby> i was thinking more along the lines of storing code fragments in a db table, with author, description, and usage information
02:31:31 <calamari> oic, so like a library of bf snippets?
02:32:00 <wooby> the problem is it would be so difficult to come up with a standard for handling return data
02:32:44 <calamari> it also wouldn't work well for languages such as Befunge that are two-dimensional
02:33:10 <wooby> i'm beginning to think it wouldn't work well in general
02:33:22 <calamari> but it's still a cool idea for a wiki page
02:33:38 <wooby> suppose you had a code fragment recognized by the interpreter as 1, which say... converts a cell value to ascii value
02:33:43 <calamari> could save your neatest bf tricks for posterity
02:33:53 <wooby> so you could do like +++1 => 3
02:34:17 <wooby> that would work cleanly because the return value is only a byte
02:36:44 <calamari> I wonder if I could rig file writing to automatically edit the wiki.. that'd be cool, permanent storage
02:37:23 <calamari> actually, just the close operation would want to write anything
02:38:01 <calamari> yeah.. it'd be cool.. because you could edit it yourself, or you could use the applet, and it's just plain text on the wiki page to view
02:39:45 <wooby> i'd imagine javascript to be conducive to interactive lang interpreting, at least for BF
02:39:51 <wooby> do you consider that an option?
02:47:32 <calamari> sorry.. was afk. java or javascript seem file.. both are client side though.. I chose Java because it was more powerful
02:53:15 <wooby> ha, just perusing the bfbasic readme
02:53:29 <wooby> 'randomize' would be an interesting function to implement
03:37:35 -!- graue_ has joined.
03:38:49 <GregorR> Please mentally combine the n and ~ ;)
03:40:41 <GregorR> I suppose the fact that you're now logged in as graue_ instead of graue suggests that you didn't get my response in #directnet ?
03:40:54 <graue_> ah, nope, but i'll go see what it was
03:41:55 -!- graue has quit ("this client is obsolete").
03:42:22 -!- graue_ has changed nick to graue.
03:42:33 <GregorR> #directnet just lost its peak user count ;)
03:54:10 -!- calamari has quit (Read error: 104 (Connection reset by peer)).
03:55:46 <graue> you know, i gotta say calamari's idea for loading programs from a wiki page is pretty cool
03:56:43 <graue> i wonder if it could be accommodated by creating a new namespace
03:57:12 <GregorR> Mind making a brief of the idea?
03:57:15 <graue> you'd go to "Brainfuck" and say "hey, this seems cool" and follow the esoshell link to the "EsoShell:Brainfuck" page with the programs and stuff
03:57:38 <graue> calamari has made a small fake shell program as a java applet, and it has esoteric language interpreters
03:57:46 <graue> the idea was so people could try new languages out conveniently
03:58:00 <graue> recently he mentioned loading languages automatically from a wiki page
03:58:16 <graue> like you could put a "99 bottles of beer" example in the "EsoShell:Brainfuck" wiki article (or whatever)
03:58:25 <graue> and the shell would be able to load it directly
03:58:31 <graue> that is my understanding
03:59:01 <graue> so, any idiot could add a cool program to test out
03:59:08 <GregorR> Why not have the wiki itse---because some would need input.
03:59:12 <GregorR> Yay answering my own question!
04:00:17 <graue> i wonder if calamari would go for the "EsoShell:" namespace idea
04:00:35 -!- calamari has joined.
04:00:44 <graue> we have been talking about you
04:01:00 <graue> please to read http://tunes.org/~nef/logs/esoteric/05.06.09 and catch up on the discussion
04:01:28 <calamari> sorry.. was getting ready to go out.. gotta watch star wars again :)
04:01:40 <graue> well, check it out later then
04:01:55 <graue> short story: i think it would be cool if you did your java applet thing in a new namespace on the existing wiki
04:02:00 <graue> like, "EsoShell:Brainfuck" etc
04:04:02 <calamari> that sounds great.. I was actually wondering how to pull that off while in the shower hehe
04:04:39 <calamari> my previous idea of being able to edit old files from esoshell might cause problems.. but saving new ones should be okay
04:05:11 <calamari> dunno.. it all depends on what I can get the wiki to tell me
04:05:40 <calamari> I know in moin it would tell me when the page was locked and that I had a certain amount of time to make my edit
04:06:11 <calamari> the only thing I'm afraid of is that popluar things to run would be locked all the time
04:07:10 <graue> mediawiki doesn't lock anything; if you try to save an edit based on an out of date revision, it just tells you there's been a conflict
04:07:26 <calamari> does it allow you to resolve the conflict?
04:07:49 <graue> i'm not sure, exactly... i'd have to try it again, but i think it possibly does
04:08:37 <calamari> lets find out.. http://esoteric.voxelperfect.net/w/index.php?title=User_talk:Calamari&action=edit
04:09:13 <calamari> someone do a quick edit and then I'll save mine
04:10:19 <calamari> it gives the new text in an upper text area
04:10:48 <graue> well, it works at least
04:11:11 <calamari> at least EsoShell can know that there was a conflict and work with it
04:11:28 <calamari> and it's good because people won't be ablke to lock others out
04:21:41 -!- wooby has quit.
04:26:18 <calamari> graue: as long as the page I'm reading is from the same base url as the applet, I can read it
04:26:55 <calamari> so, I could read http://lilly.csoft.net/~jeffryj, even though the applet started from http://lilly.csoft.net/~jeffryj/EsoShell
04:27:06 <calamari> I could not, however, read http://www.google.com
04:27:54 <calamari> is that going to be an issue at all with what you had in mind for setup?
04:29:15 <calamari> actually.. even if it is, it's cool and I want to write it anyways.. hehe
04:31:56 <calamari> huh.. weird.. when I view source on the wiki, I don't get everything
04:33:03 <calamari> <div id='article'> how convienient!
04:34:36 <calamari> any thoughts on how to wrap the filename and source? need to think about 2d languages, whitespace.. etc :) gotta run
04:34:42 -!- calamari has quit ("Leaving").
04:41:41 -!- wooby has joined.
04:51:37 -!- GregorR has quit (Nick collision from services.).
04:52:05 -!- wooby has quit.
04:52:07 -!- GregorR has joined.
05:26:21 -!- malaprop has quit ("sleep").
05:28:09 -!- graue has left (?).
07:42:14 <lament> esoshell page crashed firefox
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
10:18:52 <Keymaker> i just went to bed for a while and slept ~11 hours
10:29:58 <pgimeno> hi, seems that I missed an important conversation about 8 hours ago
10:31:10 <pgimeno> lament: are you using multiple profiles simultaneously? my mozilla crashes if I don't open the java applet in the main profile
10:31:36 -!- sp3tt has joined.
10:40:22 -!- Dc[Fkn3] has joined.
10:40:36 -!- Dc[Fkn3] has left (?).
10:42:13 <Keymaker> what was the conversation about?
10:43:14 <pgimeno> Keymaker: about esolangs and the wiki
10:44:42 -!- sp3tt has quit (brown.freenode.net irc.freenode.net).
10:45:18 -!- sp3tt has joined.
10:46:02 <pgimeno> I think that graue's idea of a separate namespace is a nice solution for everyone
10:48:42 <pgimeno> I personally like most of the current directions of the wiki, and given that a solution that is universally accepted is impossible, I think that that's about the best that we can have
10:49:00 <CXI> yeah, I think it's a neat idea
10:49:02 <pgimeno> except for the backups, but that's currently being worked on
10:52:46 <pgimeno> that said, there's an issue with the files section that needs a solution: some esolang authors may disagree with their distributions being hosted there, so permission should be gathered before posting files there (those which are explicitly FOSS don't need a permission, I think)
10:53:38 <pgimeno> that's about the only showstopper for the preservation effort
10:53:39 <CXI> though you'll want to tag them with whatever the correct license is
10:54:17 <pgimeno> isn't that usually included within the distribution?
10:54:31 <CXI> good point... maybe a generic tag that says "this file is not necessarily within the public domain"
10:55:55 <pgimeno> the script that gathers the svn head and makes it public could perhaps add such a tag
10:56:16 <pgimeno> with "makes it public" I mean in the files/ dir
11:03:19 -!- Keymaker has quit ("I've seen this dj vu before..").
11:04:06 <pgimeno> one more issue about the "java on the wiki" (hope it can be sorted out): I don't like everyone being able to upload and use java applets in every page; that should be restricted to privileged users or something
12:08:10 -!- kipple has joined.
12:15:43 <kipple> pgimeno: I agree that java applets upload should be restricted
12:16:42 <kipple> otherwise, it seems like a lot happened here while I was asleep :) I like the ideas for the EsoShell that came up!
12:17:11 <sp3tt> You mean like... command.com?
12:18:30 <kipple> no, I mean this: http://lilly.csoft.net/~jeffryj/EsoShell/
12:42:12 <pgimeno> kipple: nice, seems that there's consensus after all
12:46:54 <pgimeno> yay, I've managed to fix the fibonacci generator in piet without modifying the whole program (white cells are cool)
12:48:19 <pgimeno> now it turns out that 100 Fibonacci numbers are too much for the range of an int
13:01:51 <pgimeno> http://www.formauri.es/personal/pgimeno/temp/piet/fib.php
13:02:04 <pgimeno> http://www.formauri.es/personal/pgimeno/temp/piet/fib2.php
13:07:23 <pgimeno> damn, the colors are not equal
13:08:05 <pgimeno> seen the page? when I compare the original and mine, I see different colors
13:08:12 -!- malaprop has joined.
13:08:57 <kipple> yes, there are some minor differences. does it matter, as long as it works?
13:09:20 <pgimeno> not at all, but I'd like equal colors to match for proper comparison
13:09:35 <pgimeno> gAMA chunks don't alter the RGB of each color
13:19:06 <pgimeno> indeed, that was because of a gAMA chunk present in the original; now I've uploaded the fixed version
13:19:28 <pgimeno> corrected and resubnitted ;)
13:22:17 <kipple> so, what was the conclusion? is npiet implemented correctly?
13:25:33 <pgimeno> that's not actually related to the program itself; DMM said he didn't have an opportunity of testing it
13:25:43 <pgimeno> he wrote it without the help of an interpreter
13:27:00 <pgimeno> that program won't work in the perl interpreter because of the handling of white blocks though
13:27:06 <kipple> yes. that's a useful tool for checking if the language design is ok, before implementing it
13:27:26 <kipple> ok. so is the perl interpreter wrong then?
13:28:16 <pgimeno> I think so; the spec is pretty clear and even if there's a bit of room for reinterpretation I think it's too forced to interpret that in the way that the perl interpreter does
13:29:04 <pgimeno> anyway, fixing it is just a matter of adding a pixel :)
13:31:05 <pgimeno> hm, I'm wrong, it's two pixels
13:50:50 <pgimeno> that one should work with the perl interpreter too
13:54:05 <pgimeno> I'm not totally sure though
14:06:09 <pgimeno> the issue with npiet is that cells are 32-bit integers instead of bignums, so fibonacci numbers greater than the 45th one don't come out well
14:07:39 <pgimeno> without the aid of a library, that is
14:25:50 <fizzie> As far as I know, it doesn't. The bitwise operators use integers (32-bit here), and afaik most arithmetic is done using floats.
14:26:23 <fizzie> Judging from what 'man perlop' says about Integer Arithmetic.
14:27:44 <fizzie> Although Math::BigInt apparently is part of the standard.
14:46:16 <pgimeno> thanks; I don't know if the perl interpreter uses that
15:58:41 -!- Keymaker has joined.
16:27:27 <Keymaker> i'm too lazy to search information by myself
16:28:37 <puzzlet> i'm lazy too but i guess so
16:59:54 <pgimeno> at least if the stack is able to hold bignums
17:00:40 <puzzlet> And you have infinitely extendable canvases to paint
17:00:56 <pgimeno> that's not needed, I think
17:01:42 <pgimeno> as soon as you have a canvas with an UTM program in it, you have a Turing-complete language
17:04:22 <pgimeno> I would have said that it's a pushdown automaton, but I recently saw that BF just needs a few (5 at most, 2 at least) cells with arbitrary integers in them to be TC
17:04:36 <pgimeno> http://www.esolangs.org/wiki/Brainfuck#Computational_class
17:05:26 <pgimeno> and the stack rotate operation makes Piet able to handle the stack as a finite amount of variables
17:05:41 <pgimeno> hm, that should be stated in the wiki
17:12:45 <Keymaker> the stuff in esowiki is interesting
17:13:09 <Keymaker> it'll be quite cool afterall! :)
17:27:02 -!- graue has joined.
17:35:35 <Keymaker> lament: is that 'smallfuck to smetana' stuff anywhere?
17:35:42 <Keymaker> or have you written anything about it?
17:50:01 -!- calamari_ has joined.
17:54:16 <Keymaker> can one just edit the esolangs wiki?
17:54:49 <Keymaker> ok. i'll do so. after the dinner ;)
17:54:50 <kipple> it is nice if you create an account before editing, but not mandatory
17:58:53 <kipple> please avoid food stains on wiki articles
18:13:22 <Keymaker> by the way, is it allowed edit User:Keymaker page? :)
18:15:10 <kipple> you can edit practically any page (including other users' pages)
18:17:45 <Keymaker> but i meant that is it ok if edit it..
18:17:45 <Keymaker> that you people don't count it as self-advertising or anything
18:17:45 <Keymaker> (only linkin' two of my websites ;))
18:18:19 <kipple> that's what the user pages are for! don't expect that anyone else will edit it
18:20:08 <kipple> http://esoteric.voxelperfect.net/wiki/Special:Listusers
18:20:08 <Keymaker> http://www.esolangs.org/wiki/User:Keymaker
18:48:16 <calamari_> Keymaker: here is what you probably shouldn't do: http://esoteric.voxelperfect.net/wiki/User:Calamari how's that for overdoing it? :)
18:51:05 <kipple> I think that is a nice user page.
18:51:13 <Keymaker> http://www.esolangs.org/wiki/Hello
18:51:54 <lament> Keymaker: http://z3.ca/~lament/smetana_sf.tar.z
18:51:59 <lament> Keymaker: http://z3.ca/~lament/smetana_sf.tar.gz
18:53:11 <kipple> Hah. Who needs Hello when we have HQ9+ ? ;)
18:54:40 <kipple> I just checked out Hello's home page and thought: "what? an esolang made by a woman? can it be?"
18:55:00 <kipple> yeah. just a guy named Anne
18:55:32 <Keymaker> too bad, i was almost contacting the person until i read that :)
18:55:43 <CXI> if I was nammed anne I'd make esolangs too
18:57:04 <lament> esolangs are an exclusively male activity
18:57:31 <kipple> well, most of you guys (okay, me too) have nicks which makes it impossible to know your gender, so maybe there are some women here as well... I've just assumed you're all male (probably very sexist of me)
18:58:28 <malaprop> kipple: Or you've been on IRC for more than ten minutes.
18:59:17 <kipple> "IRC. The place where men are men, women are men, and 16 year old girls are FBI agents"
18:59:35 <CXI> case in point
18:59:38 <CXI> efnet doesn't have women :P
18:59:53 <kipple> don't remember where that quote is from though
18:59:59 <Keymaker> either the way, we need females here.
19:02:15 <kipple> well, if there are any, I expect they pretend to be male.
19:02:35 <malaprop> Why pretend? Folks will assume just fine on their own.
19:13:52 <calamari_> so, I'm curious.. how can we display a whitespace program on the wiki without using images?
19:14:39 <calamari_> I could invent some kind of escape code, but that wouldn't work well for a 2-d whitespace, if there is ever such a thing
19:15:21 <lament> there even are women on Freenode
19:15:35 <lament> but to expect women in #esoteric is clearly a bit too much
19:16:56 <GregorR> It would be possible, but I don't think you ought to.
19:18:09 <kipple> Gregor: you are the only one here who explicitly identifies yourself as a male. Got something to hide??? ;)
19:18:29 * GregorR detaches his/her artifificial penis
19:18:45 <kipple> ah, you were talking about whitespace :)
19:19:08 <GregorR> cpressey is a known male :P
19:19:24 <calamari_> gregorR: I'd like to automatically feed programs from the wiki into esoshell.. but does the wiki allow arbitrary chars like that?
19:20:08 <calamari_> how about a mini preprocessor table at the top.. so that you could set a=" ", b="\n", etc
19:20:09 <GregorR> I don't know, I guess ... If there's some equiv. to <pre>, it should be happy.
19:20:11 <kipple> maybe there is some <PRE> equivalent?
19:20:23 <calamari_> maybe, that would definitely be best
19:21:31 <calamari_> anyone remember how to set expert mode in ircii?
19:22:03 <calamari_> I guess since I don't remember means I am non-expert.. so.. brb :)
19:22:12 -!- calamari_ has left (?).
19:24:04 <Keymaker> this esolang wiki editing is fun
19:25:32 <graue> does it maintain TAB characters?
19:26:41 <kipple> see test here: http://esoteric.voxelperfect.net/wiki/User:Rune
19:27:36 <kipple> you can't enter tabs directly in the editor (at least not in my browser), but pasting works fine
19:28:32 <lament> Keymaker: how exactly does the digital root thing work?
19:28:39 <lament> cause it doesn't do anything
19:30:42 <lament> you had DOS linebreaks
19:37:14 <lament> they were breaking the interpreter
19:37:21 <Keymaker> i used the ready-compiled dos interpreter
19:37:21 <lament> presumably it works in windows
19:37:29 <lament> i was using the python one
19:37:56 <Keymaker> iirc it was in original thue package
19:40:23 <kipple> anybody know if whitespace it TC?
19:40:28 <lament> it works after i changed the linebreaks
19:41:45 <lament> well, you can't expect any reasonable piece of software to recognize dos linebreaks :)
19:44:07 <kipple> but dos linebreaks include char #10, so it should work on most systems, no?
19:45:27 <malaprop> kipple: no, dos linebreaks will work on dos and on especially forgiving editors on real operating systems
19:46:01 <GregorR> But a whitespace nterpreter should read: \r - this must be a comment, ignore ... \n - line break
19:46:05 <GregorR> And hence work regardless.
19:46:25 <GregorR> (Well, unless you use MacOS <=9 linebreaks)
19:46:42 <kipple> did they change it in OS X ?
19:46:50 <GregorR> Yeah, it's UNIX linebreaks now.
19:47:07 <kipple> nice. If only MS would do the same
19:47:21 <GregorR> No, they're just going to make them longer :P
19:47:37 <malaprop> GregorR: neither 0xA or 0xD are named "line break". 0xD is Unix is carriage return. 0xA is line feed.
19:47:39 <GregorR> It'll be CR-LF-PageB-tab-tab-space-lf
19:48:19 <GregorR> malaprop: From a UNIX-centric whitespace nterpreters standpoint, \n = linebreak.
20:17:08 <Keymaker> i made a logo for esowiki, featuring esododo:
20:17:09 <Keymaker> http://koti.mbnet.fi/yiap/stuff/esolang.png
20:17:29 <Keymaker> (although the creature doesn't probably look like dodo)
20:17:32 <kipple> hey! the dodo is back :)
20:18:46 <Keymaker> i just thought it could be fun/look nice. i don't like that yellow flower so much
20:19:30 <malaprop> Keymaker: The yellow flower is the logo for MediaWiki.
20:19:35 <kipple> yeah. several people have been making logo suggestions. maybe we should have a contest
20:23:59 <kipple> pgimeno has been using piet programs
20:24:28 <kipple> I think he meant to use the fibonacci program, but the eso-program would be much better IMHO
20:24:55 <graue> kipple, i like your last spoof
20:25:15 <kipple> I made some spoofs of the wikimedia logo: http://rune.krokodille.com/lang/logos.html
20:25:26 <graue> yeah, and i like the fourth one
20:25:38 <kipple> yes, I've heard, graue :)
20:26:17 <kipple> there are a lot of variations that could be done with that theme...
20:26:29 <graue> why does the dodo face away from the page?
20:26:42 <graue> it'd be looking off the side of the screen
20:26:58 <kipple> well, dodos are stupid birds... :)
20:28:18 <Keymaker> and the other reason is i simply just can't draw anything :D
20:30:20 <pgimeno> sorry for the late answer, got an unexpected visit of my parents right after pressing enter in the last line I wrote
20:31:22 <pgimeno> I have both corrected DMM's Fibonacci program in Piet and created one which reads (and prints) "ESO" but then don't need to be used as logos
20:31:58 <pgimeno> http://www.formauri.es/personal/pgimeno/temp/piet/fib2.php
20:32:09 <pgimeno> http://www.formauri.es/personal/pgimeno/temp/eso.png
20:32:26 <graue> someone needs to make a three instruction language: [, ], and yellow flower
20:32:34 <graue> then we can say the mediawiki logo is a program
20:32:53 <kipple> the lang could be called Flower Power
20:32:56 <pgimeno> http://www.formauri.es/personal/pgimeno/temp/eso-big.png
20:40:51 <pgimeno> it can be reduced at will; it's not fixed-size (though an integral number of pixels per codel is recommended)
20:42:17 <pgimeno> graue: can file upload permissions be established?
20:47:34 <graue> it's not permitting you to upload?
20:47:50 <pgimeno> I've been reading yesterday's log about the possibility of a separate namespace for EsoShell
20:48:11 <pgimeno> I like the idea very much but I don't like everyone being able to upload and post java files
20:50:29 <pgimeno> so if file permissions can be established for some users I think that will be safe
20:58:57 <kipple> yes. it should be restricted to admins
20:59:53 -!- calamari_ has joined.
21:31:59 -!- sp3tt has quit (Read error: 54 (Connection reset by peer)).
21:46:30 <calamari_> keymaker: what type of music are you composing?
21:47:48 <Keymaker> dunno could one call it composing..
21:50:33 <Keymaker> and made with different program; modplug
21:50:49 <Keymaker> it's called "radiation machine"
21:51:27 <Keymaker> i guess i could upload it if you want to hear it.
21:52:55 <Keymaker> oh. and the track must be heard loud. if you listen that one low it doesn't sound good. preferably with good speakers
21:53:31 <Keymaker> it isn't very danceable, i warn
21:55:02 <Keymaker> i'm now uploading, takes a while
21:55:39 <Keymaker> as i haven't made up any artist name the artist is "factory esthetic".. :\
21:55:49 <Keymaker> (so don't care about crappy naming!)
21:56:09 <Keymaker> as well, the file is "radiation beta" although it's done :)
21:56:30 <pgimeno> I have just an unfinished one
21:57:40 <Keymaker> http://koti.mbnet.fi/yiap/stuff/radiation beta.mp3
21:58:12 <Keymaker> as warning, again, it's not very good!
21:58:24 <graue> why don't you upload the module?
21:58:41 <Keymaker> because i have added some effects with audacity
21:58:56 <graue> add the effects properly
21:59:35 <pgimeno> graue: so, about the permissions...?
21:59:54 <graue> i don't think that's possible
22:01:42 <pgimeno> can a wiki page hold a java program that is not an uploaded file?
22:02:02 <pgimeno> i.e. in a different URL (the files section)
22:02:25 <pgimeno> (np: factory esthetic - radiation machine)
22:04:26 <pgimeno> maybe a bit too exaggerated the bass IMO, unless you want to break my window :)
22:07:30 <pgimeno> that'd be safe enough (for me at least)
22:08:18 <pgimeno> Keymaker: you can hardly explain music, if at all
22:08:40 <pgimeno> but yeah, the ending sounds good
22:14:35 <Keymaker> i should start making some content to bf-hacks.org
22:14:58 <Keymaker> but i'm not that good writing about math/computer subjects..
22:15:10 <Keymaker> so perhaps i'll just program something
22:15:24 <Keymaker> or then start writing the first issue of the brainfuck magazine
22:15:41 <Keymaker> either the way, i'll switch to linux now, takes some mins..
22:15:43 -!- Keymaker has quit ("I've seen this dj vu before..").
22:20:20 -!- Keymaker has joined.
22:50:12 -!- calamari_ has left (?).
22:50:24 -!- calamari_ has joined.
22:53:21 <calamari_> I don'tthink I'm following very well... but one thing for sure is that the class file and wiki pages need to be at the same url, or Java freaks out with security exceptions
22:53:47 <calamari_> anything at the same url is fine, but if the url changes any, Java won't allow it
22:55:10 <pgimeno> I think they can be made relative
22:55:58 <pgimeno> the only issue with that is that there are two possible servers for the URLs: www.esolangs.org and esoteric.voxelperfect.net
22:56:06 <calamari_> then I think we're okay.. the current class file prints a bunch of html garbage.. that is http://lilly.csoft.net/~jeffryj but the class file was run from EsoShell/
22:56:27 <calamari_> pgimeno: as long as the redirect happens before the java file runs, it's okay
22:56:38 <calamari_> for example, try http://kidsquid.com/EsoShell
22:56:45 <pgimeno> only if they can be really relative
22:56:57 <graue> they're not redirects
22:57:19 <graue> can you examine the host that was given in the http request?
22:57:53 <calamari_> graue: Java doesn't care what I look at.. once it makes up its own mind, we're stuck with that decision, afaik
22:58:31 <pgimeno> graue: my concern is just if the <object> or <embed> or whatever tag is used allows relative paths; if that's possible then there's no issue, and I'm pretty sure it is
22:58:48 <calamari_> in the html, it is possible to specify the codebase
22:59:01 <calamari_> so I can tell it the codebase is on a different host than the html
22:59:18 <calamari_> that can work.. as long as the code is actually where I'm telling it
22:59:31 -!- calamari_ has quit ("Leaving").
23:09:38 <Keymaker> http://www.de.ioccc.org/2004/gavare.c
23:18:39 <Keymaker> dunno, it gave me couple of warnings
23:19:33 <Keymaker> we need similar program in brainfuck ;)
23:19:42 <kipple> the variables aren't even typed...
23:19:58 <kipple> do they default to int then?
23:20:27 <Keymaker> and i don't know, probably they default to int
23:20:40 <fizzie> Untyped variables are ints.
23:20:41 <Keymaker> something about int was said at ioccc iirc
23:21:14 <graue> variables only default to int in C89 and C95
23:21:18 <graue> in C99, that program would be invalid
23:21:48 <fizzie> One of my homework exercise solutions used untyped variables.
23:22:14 <fizzie> a,b=0;main(){read(0,&a,1)?b=b*2|a&1,main():printf("%u",b);}
23:22:44 <kipple> Keymaker: did it take long to run on you rcomputer?
23:23:43 <kipple> well, my linux box is 187 MHz, so I guess I'll wait...
23:23:54 <graue> do you think we should have articles for language inventors on the wiki?
23:24:05 <kipple> do you know what the A parameter is for?
23:24:07 <Keymaker> or then you can terminate the program and change the values in the beginning of the code
23:24:28 <kipple> isn't that the X and Y params?
23:24:46 <fizzie> The 'A' value is an anti-alias factor. Setting it to 1 disables the anti-aliasing feature (this makes the output look bad), but setting it too high makes the trace take a lot more time to complete.
23:24:51 <fizzie> http://www.ioccc.org/2004/gavare.hint
23:26:50 <kipple> graue: perhaps some of them
23:27:12 <kipple> but is there really much to say?
23:27:40 <Keymaker> probably it was "wanted pages"
23:27:42 <kipple> a short paragraph about Urban could be on the BF page
23:28:12 <Keymaker> yeah. well, seems to be we don't know much about this genius
23:28:20 <Keymaker> but i'm gonna find out someday
23:54:48 <graue> http://www.esolangs.org/wiki/Esolang:Authors
00:51:58 <pgimeno> graue: any progress on the automated DB backup?
01:36:28 <graue> i'm waiting for lock tables permission
01:36:39 <graue> supposedly it can be provided to me
02:16:34 <graue> http://esoteric.voxelperfect.net/db/latest.sql.bz2
02:18:37 <graue> it should now update on sundays at about 00:01 UTC, maybe a little later
02:23:25 <graue> um, just check it out
02:23:42 <malaprop> So you want me to start hassling you again as soon as someone commits a revision, eh? :)
03:17:46 -!- calamari has joined.
03:36:10 -!- kipple has quit (Read error: 110 (Connection timed out)).
03:59:56 <malaprop> graue: latest.sql.bz2 seems to be 0 bytes in length
04:06:13 <graue> funny, it's 449514 bytes on the server
04:06:31 <malaprop> I do 'wget http://esoteric.voxelperfect.net/db/latest.sql.bz2' and get http 200 but 0 bytes.
04:06:48 -!- CXI has quit (Connection timed out).
04:15:37 <graue> try http://esoteric.voxelperfect.net/db/latest.sql.gz
04:16:47 <graue> really? works for me
04:17:19 <malaprop> Really, from two different systems.
04:18:57 <graue> well, seeing as how it works fine for me, i can't do anything about that
04:19:45 <malaprop> Are you trying from that machine itself?
04:24:28 <malaprop> doesn't work even from a new, third host
04:26:36 <malaprop> ah, hm, .gz works but .bz2 is 0b?
04:26:45 * malaprop didn't notice the changed extension at first.
04:27:31 <graue> ah, that's why i gave you a url :)
04:27:59 <malaprop> It looked the same at first glance, heh. Why gz instead of bz2?
04:29:27 <graue> because gz files don't get served as 0 bytes
04:35:42 <malaprop> I've got a cron job and simple page set up, I'll post to the mailing list after dns propagates a bit.
05:16:26 -!- malaprop has quit ("quit").
05:27:44 <calamari> esoshell wiki writing testbed: http://lilly.csoft.net/~jeffryj/cgi-bin/miniwiki.cgi
05:34:22 -!- Keymaker has left (?).
05:50:12 <graue> what does that do, just change itself?
06:04:50 <calamari> graue: yeah.. it's handy because I can access it from lilly.csoft.net while testing out the wiki file i/o
06:05:28 <calamari> since Java has those security restrictions
06:08:16 <calamari> graue: I still haven't decided on the format.. what do you think of what I just added?
06:09:33 <graue> you will have to escape < into <
06:10:05 <graue> how else do you think "</pre>" works?
06:11:44 <calamari> that might get annoying for authors typing in programs by hand, or pasting them in
06:12:29 <graue> most text editors have find and replace
06:13:20 <calamari> aha.. mediawiki takes care of that for us
06:13:31 <graue> hmm, a brainfuck and html polyglot would be fun
06:13:49 <graue> except that it's not possible because html has to have < before any >s
06:14:12 <GregorR> You can put < and > in those, just not -->
06:14:25 <graue> that < will be illegal in brainfuck since it goes to cell -1
06:14:29 <calamari> graue: I might not understand.. I did <pre> <<< </pre> and mediawiki translated the < to <
06:15:01 <graue> what if you do <pre> <b> </pre>?
06:16:07 <calamari> I guess the only restriction is that the file couldn't contain </pre>
06:16:37 <calamari> I'm not sure that's such a big deal :)
06:17:04 <GregorR> Damn, that first < think is a real toughy XD
06:17:22 <GregorR> If you started with >++ you'd be fine, but that may make it unhappy ... it would probably be illegal HTML, technically.
06:18:56 <calamari> GregorR: I'll be stripping off the <pre> and </pre> before bf sees it
06:20:16 <GregorR> calamari: I was referring to the HTML-BF polyglot
06:42:05 <calamari> graue: http://esoteric.voxelperfect.net/wiki/Help:Editing has no help documents.. is this a work in progress?
06:42:49 <graue> calamari, how did you get there?
06:43:46 <calamari> graue: any edit page, click down at the bottom where it says (Editing Help) opens in new window
06:44:00 <calamari> err, have the parens wrong.. but that's the idea :)
06:45:53 <calamari> http://esoteric.voxelperfect.net/wiki/Help:Contents also
06:46:04 <calamari> that's any page click "Help" on the left
06:56:56 -!- CXI has joined.
07:05:57 <graue> god what is with all the redundant pages
07:06:27 <graue> i made an Esolang:Help, but Help:Editing and Help:Contents should just be the same thing
07:09:28 <graue> i redirected the other two now
07:16:07 -!- calamari_ has joined.
07:21:13 <calamari_> graue: http://esoteric.voxelperfect.net/wiki/User_talk:Calamari
07:21:29 <graue> you can make user subpages
07:21:39 <graue> e.g. "User:Calamari/esoshell_tests"
07:21:41 <calamari_> argh, I messed up that link on the help page
07:22:16 <graue> oh god, man, you didn't read the page you were editing!
07:22:32 <graue> it clearly states that that section is called "External resource", not "External Links" :)
07:28:07 <calamari_> btw, can only admins revert pages? or is revert just a cute name for copying & pasting the old page back in?
07:32:13 <graue> revert is a cute name for changing a page back by whatever means, yes
07:32:33 <graue> however, admins get a convenient link to do this automatically, when looking at a diff
07:32:39 <graue> all it does is make it faster for them
07:33:00 -!- calamari has quit (Connection timed out).
07:38:09 <calamari_> hehe, having those file extensions is probably unnecessary :)
07:38:50 <calamari_> maybe a description area would be helpful too
07:39:35 <calamari_> I need to go to bed.. feel free to improve upon the current design
07:40:10 -!- calamari_ has quit ("Leaving").
07:54:41 -!- graue has left (?).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
09:15:41 -!- sp3tt has joined.
09:21:37 <sp3tt> Is it possible to do division in bf?
09:22:54 <sp3tt> It should be possible using the same code as multiplication...
09:23:00 <lament> sp3tt: brainfuck is turing-complete
09:23:36 <lament> just need to know the algorithm...
09:24:45 <sp3tt> >+++++[<+++++++++>-] 5 * 9
09:25:25 <puzzlet> iteratively subtracting until the number goes down to 0, and counting how many subtraction has been done?
09:25:38 <sp3tt> <[--------->>+<-<]
09:26:09 <sp3tt> That would divide by nine, but how do you handle situations where there is a remainder? I.e where x % y != 0.
09:26:38 <lament> but it's better to write a general algorithm
09:26:47 <lament> where X and Y are two numbers on the tape
09:28:11 <lament> implementing the algorithm is left as an exercise for the reader.
09:29:05 <sp3tt> Google search for brainfuck division turns up German wikipedia.
09:29:45 <sp3tt> Heh. I wrote a 5 page PDF about brainfuck (in Swedish) leaving Hello world as an exercise for the reader :)
09:30:32 <puzzlet> I have discovered a truly remarkable implementation, which this margin is too small to contain.
09:30:56 <lament> it certainly doesn't sound hard. just keep subtracting.
09:31:25 <lament> or store your numbers as rationals :)
09:31:35 <lament> then division is the same as multiplication
09:32:24 <sp3tt> One could write a nested loop, subtracting one until the cell contains 0.
09:32:56 <sp3tt> When the loop has subtracted one Y times, add one to a third cell.
09:33:20 <sp3tt> And when the loop is finished, calculate the remainder in some way.
09:34:18 <lament> the remainder will just sit there
09:34:24 <lament> in whatever cell you were using for subtraction
09:46:03 <sp3tt> That would require a check to see if y > x
10:11:55 -!- starling has joined.
10:12:39 -!- starling has quit ("pop").
10:39:17 -!- kipple has joined.
11:32:36 -!- sp3tt has quit (Read error: 104 (Connection reset by peer)).
11:58:11 -!- Keymaker has joined.
12:02:59 <kipple> is that finnish for "hello"?
12:03:58 <fizzie> No, that would be "hei" or something.
12:04:14 <fizzie> "tervehdys", perhaps, although that's closer to 'greetings'.
12:04:39 <kipple> you say "hei" in Finland as well?
12:06:33 <fizzie> It is an useful greeting when mingling with swedish-speaking folks, since their "hej" is pronounced quite similarly.
12:15:16 <Keymaker> i found interesting site; http://freesound.iua.upf.edu/
12:15:20 <Keymaker> it has allkinds of sound samples
12:15:29 <kipple> well, that was a nice small Finnish/Norgwegian polyglot conversation :)
12:30:21 <pgimeno> very nice, Keymaker! reminds me of the free images site... http://www.openclipart.org/
12:31:18 <kipple> thanks pgimeno! I like
12:38:22 <pgimeno> np, enjoy the world of free resources :)
12:39:21 <Keymaker> :) there's good machine sounds etc on that page.. that's what i was looking for and finally found a nice source :)
12:39:33 <Keymaker> i'll try to get something done with some samples
13:03:45 <kipple> Keymaker: what kind of software do you use for making music
13:09:06 <Keymaker> the only bad thing is that there is so much stuff that i don't know what to do
13:09:26 <Keymaker> it's filled with allkinds of things and options
14:07:43 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
14:10:14 -!- puzzlet has joined.
14:16:24 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
14:39:23 -!- puzzlet has joined.
14:51:51 <Keymaker> ok that's enough musicing for today.
14:53:34 <Keymaker> i'll go to eat. then i'll switch to linux. then me comes back.
14:53:40 -!- Keymaker has quit ("I've seen this dj vu before..").
14:57:50 -!- Keymaker has joined.
14:58:26 <Keymaker> rgh. so it is true: if you eat too much candy before the actual food you don't feel like eating the actual food
14:59:32 <puzzlet> you finished eating in 5 minutes?
14:59:46 <Keymaker> no. i brought the dinner here again :)
15:01:51 <Keymaker> i'll listen some prodigy. i hope i could make their kind of music a bit.. it's so crazy :)
15:11:38 <Keymaker> i added bf-hacks to esowiki brainfuck links
15:27:56 <Keymaker> i added two small sample programs to thue oage
15:28:08 <Keymaker> they should be correct, although i didn't test
15:43:38 <kipple> you forgot to log in before editing... :)
15:45:02 <Keymaker> maybe the wiki should be editable for users only?
15:45:35 <Keymaker> oops, iirc 'editable' means something that can be eaten :)
15:46:08 <Keymaker> i wonder what i'm thinking today
15:46:26 <Keymaker> well, too bad the wiki isn't edible
15:47:02 <kipple> only the chef programs
15:48:56 <Keymaker> i'll try to think more about the snack language i was planning
16:03:14 -!- malaprop has joined.
16:15:05 <Keymaker> is 'snack' good name? any other idea for a language that deletes it's own code?
16:15:55 <Keymaker> or well, it doesn't delete the actual source from hard drive
16:46:58 -!- cpressey has quit (brown.freenode.net irc.freenode.net).
16:48:03 -!- cpressey has joined.
16:51:04 -!- cpressey has quit (brown.freenode.net irc.freenode.net).
16:52:35 -!- cpressey has joined.
17:01:31 <Keymaker> if stack is empty, should popping return error or zero/empty/do nothing?
17:02:12 <malaprop> Pretty arbitrary. I've seen both commonly.
17:02:55 <kipple> do something completely different!
17:03:16 <Keymaker> empty stack returns random value?
17:03:39 <kipple> or start popping the source code :)
17:03:42 <Keymaker> would add some random flavour to the language
17:03:51 <Keymaker> well source is popped all the time ;)
17:04:16 <Keymaker> then that could be written with one instruction..
17:04:37 <kipple> if there is another way of checking if the stack is empty
17:05:17 <Keymaker> i'm still planning while writing the interpreter
17:05:45 <kipple> maybe you could have an boolean operator that checks if a number is 'random' :D
17:06:22 <Keymaker> btw; would reversible stack be okay for two stacks?
17:06:36 <Keymaker> but instruction '/' could reverse it
17:06:50 <Keymaker> and that way the other side of the stack could be popped and pushed etc..
17:07:05 <kipple> that would be a nice instruction
17:10:12 <kipple> interesting contest: http://www.brainhz.com/underhanded/
17:10:26 <kipple> (might be slashdotted any moment now)
17:55:27 <malaprop> kipple: Yes, is now on Slashdot.
17:55:48 <kipple> I know, that's where I found it
17:59:18 <malaprop> ah, I read your comment to say it was yours or a friends and you were waiting for /. to post a story on it
18:00:23 <kipple> ah. No. I was waiting for the server to go down from the slashdot effect. Which it hasn't :)
18:04:06 <Keymaker> how to reverse string in python?
18:07:08 <malaprop> So you slice the whole thing with a negative step, basically.
18:15:21 <kipple> mmm. Python looks cool. Maybe I'll use that for my next esolang
18:16:43 <Keymaker> python is my favourite "real" language thesedays
18:17:18 <Keymaker> in python strings and stacks and stuff like that is so easy that it's idea for esolang interpreter writing
18:17:44 <malaprop> Keymaker: Heh, have you used list comprehensions at all? They're my favorite new idiom.
18:18:22 <malaprop> Say you have a list full of objects that you want to do a common operation on. Instead of writing
18:19:06 <malaprop> which gets really handy when you do stuff like "\n".join([x.toXML() for x in list])
18:20:17 <Keymaker> i selected to this language that popping empty stack returns nothing
18:20:32 <Keymaker> and probably make the random feature for memory stack
18:20:50 <malaprop> oh, conditionals are also handy: [x.foo() for x in list if x.bar > 2]
18:48:57 -!- comet_11 has joined.
18:50:01 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
18:56:44 -!- graue has joined.
19:00:03 <pgimeno> phew! finished the first part of the Malbolge article
19:01:05 <pgimeno> http://www.esolangs.org/wiki/Malbolge
19:01:35 <pgimeno> it's just a language description at the moment
19:07:41 <pgimeno> is it easy enough to understand?
19:09:26 <pgimeno> even 'reading' the normalized version requires external help (a trace is helpful)
19:10:26 <kipple> so, Keymaker, when is the Malbolge quine done?
19:10:53 <Keymaker> thanks heaven i haven't even thought that
19:11:39 <Keymaker> (nor digital root calculator!)
19:11:41 * pgimeno considers about offering a prize
19:11:51 <pgimeno> <graue> http://esoteric.voxelperfect.net/db/latest.sql.bz2
19:11:52 <pgimeno> <graue> it should now update on sundays at about 00:01 UTC, maybe a little later
19:12:01 <pgimeno> so can it be announced to the mailing list?
19:12:23 <malaprop> I'd guees so. Mention that I'm doing backups.
19:12:56 <pgimeno> Keymaker: you may want to add the digital root program to http://www.esolangs.org/wiki/Popular_problem
19:12:59 <kipple> I'll set up a cron job as well
19:13:17 <Keymaker> although dunno how popular that is
19:13:23 <Keymaker> but it's worth being popular ;)
19:13:25 <pgimeno> malaprop: well, I managed to download the .bz2 without problems
19:13:35 <pgimeno> maybe an apache caching issue or something
19:14:21 <kipple> graue: which of the archives is the one that gets updated?
19:16:56 <pgimeno> the null program is not a quine in malbolge: it crashes the reference interpreter due to a(nother) bug
19:17:17 -!- slobo has joined.
19:19:10 <pgimeno> that nick sounds reminiscent of a not very fast language
19:21:45 <pgimeno> http://en.wikipedia.org/wiki/SLOBOL_programming_language
19:22:57 <slobo> lol, didn't know this :)
19:25:28 <pgimeno> brb, taking down one bottle of beer from the wall
19:26:08 -!- slobo has left (?).
19:28:10 <Keymaker> "go to store and buy some more"
19:38:21 -!- calamari has joined.
19:38:55 <Keymaker> ok here it is: http://www.esolangs.org/wiki/Digital_root
19:41:18 <kipple> anyway, if anyone wants to try and implement the Song with real hardware (or should I say liquid-ware?), here is the place to do it: http://www.mommsen-eck.de/
19:41:45 <kipple> you wont have to drink the same kind twice :)
19:42:35 <kipple> though you might get some run-time errors, I think...
19:42:43 <Keymaker> i have a feeling any hardware couldn't get past 50 bottles before serious malfunction
19:43:12 <kipple> well, I think the way to do it would be with parallell processing
19:44:05 <calamari> ahh, didigtal root is the division by 3 test
19:44:40 <calamari> that's the way you can tell if a number is divisible by 3
19:44:50 <calamari> (besides actually doing the division)
19:45:03 <calamari> so if it comes out to 3, 6, or 9, it's divisible
19:48:27 <calamari> I should add a page to the bf giving algorithms, like division for sp3tt
19:49:14 <pgimeno> N.B. the digital root is also a test for divisibility by 9 (if it comes out to 9)
19:50:31 <calamari> pgimeno: cool, didn't know that one :)
19:51:00 <pgimeno> for 6, check that it's even and it's divisible by 3
19:51:37 <calamari> so now we know the /18 rule :)
19:52:58 <pgimeno> also, if a number's last two digits can be divided by 4, then it's divisible by 4; if it's also divisible by 3, then it's divisible by 4*3=12
19:53:42 <malaprop> pgimeno: I don't think that works for 144.
19:53:51 <malaprop> oh, whole number div 3? ya, ok
19:54:21 <pgimeno> 144=4*4*9, quite more complex
19:54:40 <pgimeno> (requires that the last four digits can be divided by 16)
19:58:08 <pgimeno> this regexp tests divisibility by 4 (if I've made no mistake): ^[0-9]*([13579][26]|[02468]?[048])$
20:03:36 <pgimeno> ^([0-9]*[13579][26]|[0-9]*[02468][048]|[048])$ should work (there was a problem with the ? above)
20:08:46 <Keymaker> would these instructions be good:
20:09:10 <Keymaker> 'i' to increase memory stack's top value by 1
20:09:28 <Keymaker> 'I' (big 'i') to increase memory stack's top value by 10
20:09:47 <Keymaker> and 'd' and 'D' to decrease by 1 and 10
20:10:19 <Keymaker> but i wouldn't like to use letters
20:11:05 <Keymaker> or should i use the befunge way? polish notation (was it called that)?
20:11:54 <Keymaker> like 99* would push 9 to stack and then 9 to other stack and then pop them and multiply them and then push the result
20:16:54 <Keymaker> grhhh. i just use the gooood ol' + and - stright from brainfuck :)
20:21:36 <malaprop> Keymaker: How about have integer literals repeat? So + adds 1 to top of stack, and +9 adds ten.
20:22:03 <Keymaker> but i decided that using the "loop" system i have is easy enough :)
20:22:42 <Keymaker> i was about to ask that i probably should use good ol' byte as memory 'cell' size?
20:24:21 <lament> use base 9 or sometihng
20:24:42 <lament> puzzlet will kill you if you don't use unicode
20:24:55 <lament> do you really want to be mauled by a mob of angry koreans?
20:24:58 <pgimeno> is there still no language using balanced trinary?
20:25:18 <lament> pgimeno: that would be surprising
20:25:28 <lament> pgimeno: wasn't there an actual computer using balanced trinary
20:26:52 <lament> well, there was a ternary computer
20:27:00 <lament> i have no idea if it was balanced ternary or some other kind
20:27:35 <lament> no, probably something else
20:28:06 <Keymaker> http://www.computer-museum.ru/english/setun.htm
20:28:55 <lament> very little actual detail in that article
20:29:27 <lament> i wonder why there aren't more ternary machines
20:29:44 <lament> the article seems to list a bunch of unilateral advantages
20:34:00 <pgimeno> does setun use balanced ternary? I haven't seen that
20:36:15 <Keymaker> i'll take a small break from developing esolang -- and go to program in thue :)
20:36:37 -!- Keymaker has left (?).
21:13:14 <calamari> http://www.esolangs.org/wiki/Brainfuck_algorithms
21:15:41 <calamari> it seems to random forget I'm logged in.. I blame my browser
21:24:52 <pgimeno> if you refresh any page you reload the timer
21:26:43 -!- calamari has quit ("Leaving").
21:39:00 -!- calamari has joined.
21:40:13 <pgimeno> calamari: I don't know if that can be disabled; I learned the trick after noticing the disconnections
21:40:45 <pgimeno> I've just read your page; very nice
21:41:09 <pgimeno> it's good to have 'stock' algorithms instead of reinventing the wheel each time
21:43:24 <pgimeno> I've noticed that the PRNG works modulo 65536, but LCGs modulo a power of 2 suffer from a "nonrandomness disease"
21:44:36 <pgimeno> in the best case, the lowest bit just toggles from 0 to 1 on each iteration, and the next one just cycles like this: 0, 0, 1, 1
21:45:29 <pgimeno> (sorry for the ping, I wanted to make sure you weren't disconnected)
21:46:20 <pgimeno> the alternative is to use a prime modulus, and 65537 is just nice because it allows for period 65536
21:46:45 <pgimeno> it will complicate the algorithm, though
21:48:29 <pgimeno> A = 75, B = 74 make V always < 65536 (that's the PRNG used in the Speccy, incidentally)
21:49:41 <pgimeno> (sorry if I'm being a bit picky here, PRNGs are an area of my interest)
21:51:26 <calamari> pgimeno: I used the numbers from the book listed.. they investigated many different combinations of numbers to come up with those
21:51:53 <fizzie> modulo-2^n LCGs are quite common, though, aren't they? Knuth uses a modulo-2^35 one.
21:52:23 <pgimeno> yeah, but e.g. the low bit of the high byte has period 256
21:52:25 <calamari> pgimeno: I'd love to see a better solution (especially if it's simpler!) :)
21:52:48 <pgimeno> (in the period-65536 generator I mean)
21:53:03 <pgimeno> calamari: no, it won't be simpler :)
21:54:05 <pgimeno> fizzie: Knuth also warns against using the low bits in LCGs modulo powers of 2; he recommends using multiplication to get a number in a given range
21:54:10 <calamari> I'm still working on putting up my array code, but it will take longer because I need to make sure it's right :)
21:54:39 <calamari> array code is always so complicated
21:55:36 <fizzie> That's the usual rand(3) manpage warning.
21:55:59 <pgimeno> that problem disappears with a prime modulus LCG
21:57:24 <pgimeno> (though maximum period for prime M is M-1, not M)
21:58:54 <fizzie> (Hmf, glibc's rand() apprently isn't a LCG.)
22:00:06 <pgimeno> I've learnt to never trust standard library's PRNGs anymore :)
22:01:41 <pgimeno> that way you can make reentrant generators, predictable results, better period guarantees...
22:02:23 <pgimeno> and of course better randomness guarantees
22:02:39 <pgimeno> do you know Kyodai Mahjongg?
22:03:27 <pgimeno> in that game there are lots of board numbers that generate exactly the same board
22:04:34 <pgimeno> just because the period is insufficient and the generation method is a RN hog
22:06:50 <pgimeno> calamari: maybe the book authors just didn't consider a modulus other than 65536
22:07:15 <calamari> it's been a long time since I coded that up
22:07:42 <calamari> it seemed to work fine.. I checked it out in basic first to see what kinds of numbers were produced
22:08:15 <pgimeno> and you didn't notice that they were alternatively odd/even? :)
22:08:48 <pgimeno> well, did you print the values of V?
22:09:09 <calamari> if you're assuming that the produced random # is16-bits wide, thats an error.. I'm only using 8 bits of it
22:09:35 <pgimeno> oh ok. that's the high byte then, right?
22:10:16 <pgimeno> it must be, otherwise it would be odd/even
22:10:56 <calamari> feel free to post an improved algorithm.. then everyone can benefit
22:11:10 -!- starling has joined.
22:12:03 <pgimeno> might do, if I clean my to-do list a bit first :)
22:13:15 <calamari> there, I clarified the rng a bit
22:13:29 <calamari> now it says 0-255 and hight byte
22:16:35 <starling> I know this is probably the wrong place to ask...
22:17:01 <starling> Esoteric certainly, but... maybe not in the brainfsck style.
22:17:50 <malaprop> Are the perl and c malbolge interpreters equivalent?
22:18:53 <starling> Is there a language out there that doesn't treat text special unless explicitly marked as such?
22:19:13 <starling> Yeah, like "as a variable" or "as a keyword" or something.
22:19:43 <starling> The only language I can think of really (or not really) is perl's print <<EOT;
22:19:52 <malaprop> PHP requires a $ in front of all variables; Perl requires $ in front of scalars and @ for hashes.
22:20:57 <starling> But you can't have unquoted text that isn't meaningful, at least in Perl. The compiler won't know what to do with 'em. Thus the <<EOT; thing. :p Was wondering if something more rigorous existed.
22:21:42 <starling> Nah, all of brainfuck's 5 letters are treated special. :)
22:22:18 <starling> Can't explicitly mark text as special with cat...
22:22:42 <malaprop> Ah, think I got it: Python's docstrings.
22:23:12 <starling> docstrings, are those parsed at all?
22:23:45 <malaprop> Alternately, Knuth's literate programming.
22:26:33 <pgimeno> <malaprop> Are the perl and c malbolge interpreters equivalent? <- I don't really know; the C interpreter has some caveats
22:27:13 <pgimeno> but in general you can expect that programs with characters in the printable ASCII range will work the same
22:27:24 <pgimeno> I've written a Python one (and a debugger)
22:31:50 <pgimeno> starling: even Perl (or sh) makes the EOT string special
22:32:10 <pgimeno> or do you mean "user decidable"?
22:32:56 <starling> Well, user decidable I suppose. I suppose it's possible to make the end of file to act as EOT in some cases.
22:34:06 <starling> It's just I'm trying to write a screenplay, and I have to invent my own language for it. Wanted some functionality, without worrying about every word possibly being variable expanded.
22:34:38 <starling> The only extant formats I can find are all 'output' formats, with margin lengths and font and such.
22:36:10 <pgimeno> Python docstrings don't fit there very well, if I understand the problem correctly
22:36:41 <starling> Yeah, perl's <<EOT\netcEOT\n thing might work...
22:37:18 <starling> No, because sometimes I do need to have stuff evaluated, like to mark-up or do logic.
22:38:35 <pgimeno> and doesn't */ evaluate /* help?
22:39:05 <starling> Oh... Yeah that... might actually work.
22:39:46 <starling> I suppose it's also necessary to be able to juggle blocks of text around as atoms. Hmm...
22:39:52 <pgimeno> it's kind of like when in PHP you write: <?php do something; ?>
22:40:24 <pgimeno> I'm using it as a preprocessor
22:40:46 <starling> *nods* I don't know PHP, but it might work good.
22:41:43 <pgimeno> php outputs text until it encounters <?php in which case it starts processing commands until ?>, then it begins outputting text again
22:41:53 -!- Keymaker has joined.
22:42:37 <Keymaker> not sure what kind of array code you're writing there
22:42:49 <Keymaker> > ++++++++++++++++++++++ where?
22:43:23 <Keymaker> that code moves the "what value?" value to "where?" memory place
22:43:41 <Keymaker> each location uses two bytes; one for movement and one for storing
22:44:05 <Keymaker> this is, for byte-implementation
22:44:26 <Keymaker> but the same code would work even if the cell size is more than byte
22:44:39 <Keymaker> (on those implementations that i don't prefer)
22:46:09 <calamari> keymaker: I'm doing x(y)=z and x = y(z)
22:46:32 <calamari> But, you could add that as a simiplified case :)
22:46:58 <Keymaker> what kind of array is this your new array?
22:47:49 <Keymaker> as well, your random code is clever
22:47:52 <calamari> size limit depends on cell size
22:48:15 <Keymaker> oh i mean like how long the array is
22:48:23 <Keymaker> like can you set x(4999999) = 3
22:48:39 <calamari> yes, if your cells can hold the value 4999999
22:49:07 <Keymaker> ok.. so the max is with 1 byte-implementation x(255)?
22:50:18 <calamari> could you add your sections and save changes so I can work in my little corner without a conflict
22:50:54 <Keymaker> do you want me to add my stuff to esowiki?
22:50:55 <calamari> what will it be, x = y(_constant), x(_constant_)=y ?
22:51:14 <calamari> also, be sure to specify where the pointer ends up
22:51:44 <calamari> see the one array code I put for an example of what I mean
22:51:46 <Keymaker> i'll do this: i'll write the stuff on txt
22:51:58 <Keymaker> and later, for example tomorrow, add it when you're edited the wiki
22:52:16 -!- malaprop has quit ("leaving").
22:52:29 -!- malaprop has joined.
22:52:41 <Keymaker> if i do detailed work i may add it to my site as well
22:53:22 <Keymaker> but what i could do is to convert some of those algorithms of your to non-wrapping implementation ;)
22:53:24 <malaprop> I think I'll write a Malbolge quine
22:54:30 <pgimeno> what can I offer if you manage to do that? hmm...
22:55:12 <calamari> pgimeno: more bf algorithms :)
22:55:26 <pgimeno> yeah, that makes sense, Keymaker
22:56:00 <pgimeno> malaprop: if you write a Malbolge quine I'll reward you with 99 bottles of beer
22:57:26 <pgimeno> malaprop: are you really interested in Malbolge? I want to write sections about practical Malbolge coding
22:58:04 <malaprop> My interest in Malbolge is not deep.
22:58:31 <Keymaker> calamari: reversing data would be nice there as well. we could probably use that 50-byte entry of bfcc #1 if we asked the author's (bertram) permission.
22:58:51 <malaprop> I'm going to go think about this on the train to visit some friends; I'll be AFK the next 24hish.
22:59:26 <pgimeno> have you read Lou Scheffer's article? it's a good introduction
23:00:17 <pgimeno> when his ideas are put into practice other issues surface though
23:02:33 -!- starling has left (?).
23:04:55 <calamari> keymaker: ok.. array code should be up if you want to add things :)
23:07:41 <Keymaker> here should be code that 'returns' NOT(x)
23:07:42 <Keymaker> +++++++++++++++++++++++++++ THIS IS X
23:08:06 <Keymaker> and the second cell will get the value not(x)
23:08:19 <Keymaker> the original x will remain in the first cell
23:09:16 <calamari> why not put it in the wiki rather than paste it here? :) btw, I already have a not function listed
23:09:46 <Keymaker> but isn't that for wrapping version?
23:09:54 <calamari> yeah.. this is non-wrapping? cool
23:10:31 <calamari> if it's possible to normalize it (use variable names instead of > and <, please do so
23:10:50 <calamari> that way it becomes much more reuseable
23:11:06 <Keymaker> hmm.. sorry, i don't know how to convert to those :\
23:11:18 <calamari> that's okay.. I'll try to do it
23:11:45 <Keymaker> here's the memory layout (if i remember it correctly):
23:11:58 <Keymaker> it's no use, since it change during execution
23:12:38 <calamari> that's the probelm with bf algorithms, isn't it.. no documentation, and can't remember how it works :)
23:13:31 <calamari> makes me glad that I was able to preserve mine somewhat with the variable naming format
23:13:34 <Keymaker> hehe. but here is what it does: take copy of x, make one cell 255, decrease 255 by that copy x's value, then move not(x) to second cell
23:18:02 <calamari> so whats the shortest way to make 255? 16*16-1?
23:22:19 <Keymaker> but notice on 1-byte, non-wrapping implementation you can NOT do 16*16 :)
23:22:23 <calamari> how's this: http://www.esolangs.org/wiki/Brainfuck_algorithms
23:23:17 <Keymaker> the 5*5*5*2+5 way is quite good imho
23:24:11 <calamari> except that neither of us seem to understand it :)
23:24:43 <calamari> can you show me just the code where you set a cell to 255?
23:26:03 <Keymaker> probably best would be if you'd just convert my original code to that tutorial form :)
23:26:53 <calamari> >[-]+++++++++++++++[<+++++++++++++++++>-]
23:26:53 <calamari> [-]+++++>[-]>[-]>[-]+++++[<+++++[<+++++>-]>-]<<
23:27:07 <calamari> your code (when properly zeroed) is actually a bit longer
23:27:22 <calamari> maybe some of the [-] can be skipped?
23:27:51 <calamari> actually wait, I missed on on mine
23:28:02 <calamari> [-]>[-]+++++++++++++++[<+++++++++++++++++>-]
23:30:23 <Keymaker> your code leaves cells with values on the memory
23:30:39 <Keymaker> adn on which cell the x should be?
23:31:12 <calamari> I don't understand your question
23:31:31 <Keymaker> i just ran the two lines you posted
23:31:39 <Keymaker> and thought that that isn't working at all :D
23:32:14 <Keymaker> yes, your way is shorter if cells must be cleared first
23:32:43 <Keymaker> algorithms page is probably assuming the codes can be run at any time?
23:33:04 <calamari> is neg = not + 1 going to wrap ?
23:33:30 <calamari> ie neg(10)=-10, not(10)=-11, so -11+1 = -10
23:34:36 <calamari> ahh lets see, not(0)=255, 255+1=0.. oops
23:35:08 <Keymaker> i can't understand this at all
23:35:47 <Keymaker> in values that can't be negative?
23:36:08 <calamari> good question.. mnaybe it makes no sense to even bother
23:36:39 <calamari> that's because it works well when cell wrapping is allowed
23:37:06 <Keymaker> i don't think it's really useful, sorry :)
23:37:12 <Keymaker> mainly because there is no sense :)
23:37:12 <calamari> so if x = 1, the code x=-x gives -1
23:37:29 <calamari> you've never used -x in a program you wrote?
23:37:46 <calamari> well, sometimes in math you need it :)
23:38:07 <Keymaker> but assuming i have brainfuck implementation, 1-byte and non-wrapping
23:38:25 <calamari> but non-wrapping isn't a given
23:38:48 <calamari> a lot of bf programmers (including myself) are okay with wrapping
23:39:14 <calamari> so let's just leave the non-wrapping version off, because you're right, it makes no sense
23:40:05 <Keymaker> btw, is the line between wrapping and non-wrapping version of not(x) necessary?
23:40:13 <calamari> I should rewrite == and != to use 1 = true instead of 255
23:40:28 <calamari> keymaker: nope, that must be an accident on my part
23:40:47 <Keymaker> which one do you want == or != ?
23:41:04 <calamari> do you understand the code? :)
23:41:30 <calamari> I can do both, it won't take long
23:44:23 <Keymaker> what 'x = x and y (boolean)' does?
23:44:54 <pgimeno> for the record, according to http://www.iwriteiam.nl/Ha_bf_numb.html you need at least 30 instructions for 255
23:46:05 <Keymaker> i mean it does something with bits?
23:47:29 <calamari> keymaker: if you're familiar with c, it is the && operator
23:48:06 <calamari> keymaker: examples: 1 == 2 returns 0, 5 == 5 returns 1
23:48:30 <calamari> this is useful for things like if()
23:49:14 <calamari> I've writeen those, too.. I 'd forgotten ! :)
23:49:36 <pgimeno> smallfuck comes handy at those :)
23:50:07 <calamari> interesting how it can be more powerful and less at the same time
23:50:49 <Keymaker> i should write some smallfuck program (using some i/o extension)
23:51:52 <pgimeno> Boolfuck may be what you're looking for
23:51:54 <Keymaker> naturally without using any bf-->sf stuff
23:53:16 <calamari> bitchanger is smaller, but not symmetric
23:53:39 <calamari> so you don't really win anything.. just less symbols
23:53:59 <calamari> keymaker: driving down the freeway I came up with the answer :)
23:54:33 <calamari> I didn't know about any other bit bf's
23:55:00 <calamari> my goal was to simplify bf so that it could be wired with transistors
23:58:23 <Keymaker> well, seems i didn't go night photographin'
23:58:35 <Keymaker> better continue being here, then
23:59:25 <Keymaker> gotta go tomorrow, or going crazy
23:59:45 <Keymaker> anyways, i'll switch to linux once again, will be back soon.
23:59:47 -!- Keymaker has quit ("I've seen this dj vu before..").
00:02:30 -!- Keymaker has joined.
00:03:36 <GregorR> I wanted to release DN 0.5 today ...
00:03:39 <GregorR> But I don't think I can ...
00:03:42 <GregorR> I can't find this damn bug :'(
00:04:22 <GregorR> How much detail do I want to describe this in ...
00:04:37 <GregorR> When one side sends a direct connect request, it then stops receiving input.
00:04:40 <GregorR> For some inexplicable reason.
00:05:10 <Keymaker> hey, i know: "there is something wrong!"
00:05:33 <GregorR> I'm considering disabling DCR for this version, and fixing it later.
00:17:51 <Keymaker> here's a snack code to print 'A'
00:19:43 <Keymaker> here are the instructions so far: " ! + - = : < > ? #
00:24:26 <Keymaker> it will be there, probably character @
00:26:48 <Keymaker> actually the 'A' printing program would be two instructions longer in brainfuck :)
00:27:06 <Keymaker> and probably snack code can be squeezed. i'll try
00:29:17 <kipple> ! is for output? and it's the first instruction in the example?
00:29:45 <Keymaker> the program will be put into stack
00:29:52 <Keymaker> and it will be eaten from there
00:30:01 <Keymaker> program will be stopped when no instructions left
00:32:22 <calamari> keymaker: any gems for x = (y >= z)? I have code, but it's very long
00:32:59 <Keymaker> i guess i couldn't make very short non-wrapping code either
00:33:43 <calamari> I can't think of a non-wrapping way to find the cell size
00:33:56 <calamari> i.e... what is the maximum cell value
00:35:10 <Keymaker> but the good thing is one doesn't really need to know the maximum value. as long as the interpreter has bytes
00:35:15 <calamari> that means wrapping is more powerful.. for example the wrapping version of not works for all cell sizes
00:35:41 <Keymaker> but one shouldn't use other sizes!!!!!!!!!!!!!!
00:36:07 <Keymaker> well, that program doesn't know anything
00:36:48 <Keymaker> maybe it needs some rewriting ;)
00:37:14 <Keymaker> seriously, i don't mind if people use wrapping version
00:37:21 <Keymaker> but i'm just defending non-wrapping
00:37:48 <Keymaker> i mean i'm going to code my programs with non-wrapping 1-byte implementation
00:38:34 <kipple> the original distribution implies wrapping :)
00:38:44 <calamari> 1 byte = 8bits .. but could you do non-wrapping with 1 bit?
00:41:15 <Keymaker> and besides, non-wrapping is less implementation dependent
00:44:06 <calamari> how do you do non-wrapping subtraction? .. lets say 3 - 5 ?
00:44:32 <Keymaker> probably first check which one is bigger
00:44:59 <calamari> would you have a cell that specifies the sign ?
00:45:47 <calamari> if you come up with something, that could be used for x = -x :)
00:46:20 <calamari> that'd be pretty simple an operation now... sign = 1 - sign.. something like that :)
00:56:58 <Keymaker> it probably has nothing to do with 14 hours of sitting :)
00:58:10 <calamari> I end up sitting different ways throughout the day without even noticing the changes.. other people comment :)
01:02:45 <graue> I don't have any friends that I don't hate
01:03:21 <GregorR> You are all my sworn enemies ... and I love ya', every one.
01:03:57 <graue> calamari, what would that be? I'm confused
01:04:41 <graue> no, "if I hate someone, then he is my friend" is not true
01:05:33 <pgimeno> <graue> http://esoteric.voxelperfect.net/db/latest.sql.bz2
01:05:33 <pgimeno> <graue> it should now update on sundays at about 00:01 UTC, maybe a little later
01:05:33 <pgimeno> so can it be announced to the mailing list?
01:06:11 <pgimeno> what about the uploaded files?
01:06:35 <pgimeno> I'd like to upload a Piet program
01:06:43 <Keymaker> what announced on the mailing list?
01:06:55 <pgimeno> Keymaker: the database backup
01:08:31 <graue> hey, what if you have bit-sized cells, but incrementing 1 or decrementing 0 is an error that crashes your program?
01:08:37 <graue> that would be strange to deal with
01:09:40 <pgimeno> graue, please, could you set up a backup of the wiki uploads?
01:11:21 <calamari> graue: that's wrapping.. it's an error, lol
01:11:49 <calamari> graue: also can you alow me to upload files?
01:14:33 <graue> pgimeno, when there are too many to back them up manually, then yes
01:14:39 <graue> calamari, you should be allowed already
01:15:21 <pgimeno> hum, what happens in MediaWiki when a file is missing?
01:16:27 <pgimeno> I mean, if the file is not present in the uploads dir but the database indicates that it's there
01:17:52 <pgimeno> if not, people interested in mirroring will need to know what directories to put the mediawiki files in
01:18:30 <pgimeno> IIRC the dir name is made by looking at the first characters of a hash of the file's name
01:37:31 -!- Keymaker has left (?).
01:40:33 -!- calamari_ has joined.
01:45:53 -!- graue has left (?).
01:57:28 -!- calamari has quit (Read error: 110 (Connection timed out)).
02:00:16 -!- calamari_ has quit ("Leaving").
03:45:45 <pgimeno> isn't this a correct nonwrapping "not x"?: temp0[-]x[temp0+x[-]]+temp0[-x-temp0]
04:04:08 -!- kipple has quit (Read error: 110 (Connection timed out)).
05:23:56 -!- calamari_ has joined.
06:16:54 -!- GregorR-L has joined.
06:55:48 <calamari_> is any language that restricts memory to a finite amount a finite-state automaton?
06:56:59 <calamari_> trying to categorize one of my languages, and it would be turing complete, except ultimately there is a maximum amount of memory.. although that maximum amount is exceptionally large
06:59:52 <calamari_> 256^26 bytes.. 3.74x10^50 terabytes
07:01:26 <calamari_> wow, that's a lot of memory.. hehe :)
07:17:48 -!- calamari_ has quit ("Leaving").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
09:48:34 -!- GregorR-L has quit (Read error: 110 (Connection timed out)).
10:05:21 -!- J|x has joined.
10:07:31 -!- J|x has changed nick to jix.
10:12:46 <jix> anyone here ?
10:19:05 -!- sp3tt has joined.
10:26:47 <jix> before i went to france i just done my XUML interpreter(4 mins before i had to shutdown my computer).. i'm going to upload it and create a wiki page
11:06:01 <sp3tt> Would latin qualify as an esoteric language? lol
12:34:26 -!- J|x has joined.
12:38:05 -!- jix has quit (Nick collision from services.).
12:38:10 -!- J|x has changed nick to jix.
13:09:41 -!- sp3tt_ has joined.
13:16:10 -!- sp3tt has quit (Read error: 60 (Operation timed out)).
13:17:48 -!- comet_11 has quit (Read error: 104 (Connection reset by peer)).
13:18:59 -!- CXI has joined.
13:21:40 -!- kipple has joined.
13:38:12 -!- graue has joined.
14:10:22 -!- Keymaker has joined.
14:11:16 <Keymaker> finally got around taking a look at appearance stuff in this mandrake
14:11:28 <Keymaker> now i'm finally feeling comfortable with the appearance
14:14:28 <graue> what window manager are you using?
14:15:07 <fizzie> Use evilvm, it's nice. No nonsense about menus or title bars or other unnecessities.
14:15:44 <Keymaker> i guess it's kde in case that is window manager. i'm a bit lost about the terminology
14:22:20 <graue> kde is a desktop environment, i'm not sure what window manager it normally uses
14:30:03 <fizzie> I think they call it Kwin.
14:41:51 <Keymaker> i. hate. overflow. stupid non-wrapping cells :p
15:11:37 <graue> i wish C had a balanced trinary type
15:11:44 <graue> or type checking for enums so i could make my own
15:11:51 <Keymaker> question: in which direction langton's ant is going when started?
15:12:19 <Keymaker> i can't find the start direction anywhere grrrrr
16:05:18 <graue> chocolated covered langton's ant
16:18:10 -!- Keymaker has left (?).
16:26:21 -!- cpressey_ has joined.
16:26:35 -!- cpressey has quit (brown.freenode.net irc.freenode.net).
16:46:43 -!- Keymaker has joined.
16:46:59 <Keymaker> from esowiki: "fixed erroneous fix"
16:47:40 <Keymaker> probably means someone fixed stuff, and the noticed there was nothing wrong
16:49:12 <jix> Keymaker: my thue digital root program is shorter than yours :p
16:55:47 <graue> write a digital root program in qdeql
16:55:57 <graue> this is just a suggestion, not a command
17:01:16 <graue> an esoteric language of my invention
17:01:21 <graue> www.oceanbase.org/graue/qdeql
17:03:54 <Keymaker> hmmmmmmmmmmmmmmmmmmmm indeed.. will take 10x times until i understand anything
17:04:28 -!- tokigun has joined.
17:13:11 -!- harkeyahh has joined.
17:16:10 -!- tokigun has quit ("leaving").
17:18:40 <harkeyahh> I thought this forum was aboutbusiness law
17:19:12 <kipple> how did you get that impression?? :D
17:19:22 <kipple> graue: about qdecl. I'm not familiar with the dequeue and enqueue opearations.
17:19:51 <kipple> is dequeue to take an element from the end of the queue, and enqueue to insert it at the beginning?
17:26:03 -!- tokigun has joined.
17:27:07 <graue> kipple: although i normally consider the "beginning" of the queue to be the part you dequeue from
17:28:28 -!- harkeyahh has quit (brown.freenode.net irc.freenode.net).
17:28:59 -!- harkeyahh has joined.
18:11:20 -!- {^Raven^} has joined.
18:13:54 <harkeyahh> I like this channel i am coming in now as a regular
18:14:24 <{^Raven^}> I was here 24/7 a while back, it's a nice place
18:15:13 <harkeyahh> I especially like the marble floors
18:23:30 <{^Raven^}> hi there Keymaker, long time no see
18:25:06 <Keymaker> but but.. how did that stop you accessing this channel?
18:25:35 <Keymaker> anyways, plenty of interesting has happened.
18:25:58 <{^Raven^}> Umm...very good point there, dunno.
18:26:22 <Keymaker> well, the esowiki that people have been actively updating and makin' is up at
18:26:39 <Keymaker> my brainfuck site http://www.bf-hacks.org/ is up
18:27:14 <Keymaker> and i made a simple polyglot quine:
18:27:15 <Keymaker> http://www.bf-hacks.org/hacks/pgq.b
18:27:52 <Keymaker> well, much more.. the logs are filled with interesting discussion now when we've got guys like pgimeno and GregorR here
18:28:03 <Keymaker> also, plenty of new esolangs have been made
18:28:27 <{^Raven^}> I'll take a peek at the chat logs later, I've got a lot of catching up to do
18:28:32 <Keymaker> but now i must go eat dinner (that i can't this time bring here)
18:30:04 <harkeyahh> i'm 11:30 am here and he is eating dinner
18:33:14 -!- harkeyahh_ has joined.
18:35:42 <tokigun> Keymaker: it seems to be written in c99 ;)
18:40:11 -!- smott has joined.
18:40:42 <harkeyahh_> did you tell ChanServ to stop bugging you?
18:46:36 <smott> oh right. one gets used it i suppose
18:47:14 <harkeyahh_> he can't treat me like trailer trash jsut because he lives in a near freezing basment in seattle
18:48:08 <smott> well, he's the boss, or so i hear
18:48:58 <harkeyahh_> see thats it repression of the organic race by hunks of metal
18:49:17 <harkeyahh_> we should make a machine that can rival ChanServ and beat him to a pulp
18:50:35 -!- harkeyahh has quit (Read error: 110 (Connection timed out)).
18:50:48 <fizzie> At 20:30, that was a rather late dinner, even.
18:53:05 <smott> does anyone happen to have any code for this language called smallfuck?
18:53:57 <harkeyahh_> you really need to upgrade your machine
18:56:14 <smott> typical of me, always years behind the current technology
18:56:46 <{^Raven^}> I'd say check lament's website for it but I cannot find a current one
19:05:49 <graue> check the chat logs, lament posted a link to his smallfuck->smetana compiler in the last few days
19:20:23 <Keymaker> graue: have you made hello world in qdeql?
19:21:06 <graue> yeah, it's in the distribution
19:22:02 <Keymaker> ok i must look more carefully :)
19:24:30 <graue> hey, maybe i should make & do nothing on EOF rather than enqueueing 0
19:24:53 <graue> that would make writing some programs more challenging, but then cat could handle binary files
19:31:00 -!- Keymaker has left (?).
19:49:09 <{^Raven^}> It is my pleasure to announce the release of Lost Kingdom (Enhanced Brainfuck Edition)
19:50:33 <{^Raven^}> http://jonripley.com/brainfuck/games/
19:50:59 <{^Raven^}> Lost Kingdom is a text adventure written in Brainfuck
19:51:32 <{^Raven^}> Probably the first ever piece of interactive fiction ever written in an esoteric programming language
19:52:08 <{^Raven^}> Also one of the largest non-trivial Brainfuck programs ever written
19:52:49 -!- harkeyahh_ has quit ("leafing").
20:06:49 * GregorR bows down to {^Raven^}, his new god.
20:08:40 -!- lindi- has quit (Read error: 110 (Connection timed out)).
20:09:12 * {^Raven^} is sporting a grin larger than the recommended specifications
20:19:31 <graue> you wrote this in BFBASIC, right?
20:29:26 <{^Raven^}> yes...but trust me it was a non-trivial exercide
20:37:34 <graue> it seems like it's impossible to read binary files in brainfuck
20:37:46 <graue> if the implementation returns -1 on EOF, you can't read a 255 byte
20:37:53 <graue> if the implementation returns 0, you can't read a 0 byte
20:38:11 <graue> and if it implements EOF as no change, you get to choose what byte you can't read, but you still can't read a certain byte value!
20:38:54 <{^Raven^}> It will be possible in the future to handle binary files and do a lot more than that with any esolang capable of IO
20:39:36 -!- harkeyahh has joined.
20:39:40 <{^Raven^}> but at the moment it is problematic as you say
20:40:09 <graue> it's not a problem in Kipple!
20:40:35 <kipple> at the moment, you say? is there an official revision on the way? ;)
20:40:48 <harkeyahh> omfg i forgot how to do a crying emotiocon
20:41:03 <graue> there's that EsoAPI thing
20:41:23 <harkeyahh> omfg i forgot how many star wars films there are 5 or 6 :'(
20:41:47 <graue> yeah, but only 0 of them were any good
20:41:56 <kipple> do not underestimate the power of the Holiday Special ;)
20:42:05 <harkeyahh> :'( no there can't be 7 then i am missing 2 films
20:42:27 <kipple> well, really, there are 6
20:42:34 <{^Raven^}> PESOIX is in development which is a POSIX style layer for any esolang
20:42:45 <harkeyahh> star wars is the worst trilogy ever :'(
20:43:04 <kipple> raven: interesting. how will that solve the EOF problem in BF?
20:44:12 <kipple> the original star wars trilogy are among my favorite movies, but the new trilogy is crap
20:44:24 <{^Raven^}> The official URL for PESOIX is http://catseye.mine.nu:8080/projects/pesoix/doc/pesoix.html but also take a peek at http://jonripley.com/easel/
20:45:30 <{^Raven^}> PESOIX includes an implementation independant call to test for EOF
20:53:41 -!- sp3tt_ has quit (Read error: 54 (Connection reset by peer)).
21:22:12 <{^Raven^}> is the owner of the soojung blog here? I'd really love to know the English translation of your entry! Thanks for wirting it!
21:28:00 -!- J|x has joined.
21:29:25 -!- jix has quit (Nick collision from services.).
21:29:28 -!- J|x has changed nick to jix.
21:34:16 * {^Raven^} wishes that Keymaker was around earlier
21:45:09 <tokigun> {^Raven^}: you mean http://sapzil.info/soojung/entry.php?id=620 ?
21:47:01 -!- lindi- has joined.
21:47:04 <jix> catseye.mine.nu:8080 doesn't work
21:47:24 <{^Raven^}> Thanks, I have tried to read it via Babelfish but not much luck :(
21:47:39 <tokigun> {^Raven^}: Babelfish... omg :S
21:48:03 <tokigun> it's 5:48 am now... i have to sleep ;)
21:51:06 -!- tokigun has changed nick to t0k1gun.
21:51:54 -!- t0k1gun has changed nick to tokigun^away.
21:54:42 -!- Keymaker has joined.
21:55:03 <Keymaker> cpressey seems to have done nice job @ esowiki
21:55:36 <{^Raven^}> nice website good to know that you found a new host
21:57:51 <Keymaker> yes, bf-hacks is now my place along with koti.mbnet.fi/yiap/
21:59:07 <Keymaker> too lazy to search for a dictionary..
21:59:49 <{^Raven^}> in programming terms it means really, really difficult aka usually almost impossible
22:00:52 <kipple> writing Hello world in brainfuck is trivial. Writing it in Malbolge is not....
22:01:52 <{^Raven^}> keymaker: you missed my announcement earler :(
22:02:18 <Keymaker> (i was eating birthday cake and reading)
22:03:42 <{^Raven^}> keymaker: http://jonripley.com/brainfuck/games/ (look for Lost Kingdom)
22:07:18 <Keymaker> have you used any text-to-brainfuck generators?
22:07:26 <Keymaker> or everything just pure typed brainfuck?
22:11:33 <Keymaker> now i have to try it :) although i suck at text games
22:12:15 <{^Raven^}> technichally it's two different(ish) games rolled into one, a conversion of the original and a specially enhanced version
22:19:27 -!- jix has quit ("Banned from network").
23:34:03 <Keymaker> anyone got more information about aura??
23:55:49 <graue> figure it out yourself!
23:57:59 <harkeyahh> i developed a new companion to html not a programming language, but close enough
00:03:19 <harkeyahh> do brainfuck files have a .bf extension?
00:03:31 <GregorR> Sometimes .b, sometimes .bf
00:03:52 <kipple> .bf is also used for befunge
00:03:56 <{^Raven^}> I always use .b as .bf is used by befunge
00:05:17 <Keymaker> bf is for befunge, use b instead :)
00:07:07 <graue> i hate to think what Befuck and Befreak must use
00:07:59 <kipple> well, there is no reason to limit extension to 1-3 chars really...
00:08:48 <GregorR> Anybody have a SCSI terminator they can pass me through IRC?
00:19:24 <fizzie> I can't seem to fit mine into the floppy drive for DIGITIZING.
00:20:03 <fizzie> It's for scsi-2, with that HD50 connector, if that's ok.
00:21:15 -!- harkeyahh_ has joined.
00:22:37 <fizzie> It's originally from an SGI Indy, and has a value-adding "feature" of not being able to fit to the (inset) scsi connectors of an external Sun HD box.
00:23:43 <fizzie> The SCSI terminator requested few lines ago.
00:25:30 <GregorR> I'm very SCSI-inept .... this is old, and I'm not sure how old SCSI-2 is, or whether this is SCSI-2 or SCSI-1
00:26:32 <fizzie> Well... if it has a small-ish (well, small for 50 pins) 50-pin connector, it's probably scsi-2.
00:27:00 <GregorR> This is an olde Apple CD-ROM drive.
00:27:23 <fizzie> Ah, then it's probably the Centronics connector, which is larger. HD50 would look like http://www.cselex.com/images-large/HD50.jpg
00:28:01 <fizzie> Although I guess I'd have some sort of trouble DCC'ing a physical object anyway.
00:28:53 <GregorR> http://www.elara.ie/elara/graphics/Belkin/OR1230000015229.jpg < is this a SCSI terminator? I thought SCSI terminators only had one end ...
00:30:00 <fizzie> Pretty hard to say from the image. Usually they do have only a single connector.
00:30:56 <pgimeno> Keymaker: seen my tentative x=not(x)?
00:32:01 <Keymaker> could you give it to me as pure brainfuck?
00:32:24 <Keymaker> i get confused by those wiki versions that have instructions replaced with text
00:33:07 <fizzie> I'm not saying it _isn't_ a terminator, though. Some seem to have two connectors, assumedly to work as terminators when nothing's connected, but allow adding new devices to the end of the chain temporarily.
00:33:30 <pgimeno> assume x is at 0, temp0 is at 1, and D = 0; then: >[-]<[>+<[-]]+>[-<->]
00:34:23 <pgimeno> Keymaker: a label means: insert as many > or < as to go to the given label
00:35:15 <fizzie> Or possibly a: "Feed-through SCSI terminator: Use this if you have no more connectors left on your cable to connect a SCSI terminator. You plug the last connector in one side of the SCSI terminator and then plug the other side of the terminator into your last device. Helps keep cable lengths short."
00:35:22 -!- harkeyahh has quit (Read error: 110 (Connection timed out)).
00:37:29 <Keymaker> so x is in cell 0? and this is non-wrapping?
00:37:37 -!- harkeyahh_ has quit (Read error: 145 (Connection timed out)).
00:38:10 <pgimeno> I may be mistaken, I haven't tried the code
00:38:41 <pgimeno> this means: if x = 0 then x = 1 else x = 0
00:39:12 <Keymaker> yeah, it does that, what you said, yes
00:39:13 <pgimeno> isn't that what not(x) does?
00:40:45 <{^Raven^}> for bitwise signed it would be NOT(x)=MAXCELLVALUE-x
00:41:09 <pgimeno> yeah, assuming MAXCELLVALUE is a power of 2 - 1 :)
00:41:28 <Keymaker> wait.. i'm confused with these namings
00:42:01 <{^Raven^}> doesn;t matter if cell values wrap
00:42:41 <Keymaker> what's difference between bitwise and logical?
00:42:49 <Keymaker> does logical return only 0 or 1?
00:43:13 <Keymaker> and bitwise does stuff by first slicing values to bits and then doing bit operations and so on?
00:43:18 <{^Raven^}> yeah, logical NOT returns only TRUE or FALSE
00:43:28 <Keymaker> ah. then pgimenos code is logical not
00:43:45 <Keymaker> (sorry, i got confused with these names)
00:44:11 <Keymaker> logical not that works with values bigger than 1, as well
00:44:12 <pgimeno> "bitwise" means one bit at a time
00:44:43 <{^Raven^}> you can cheat a bitwise NOT easily in BF
00:45:56 <pgimeno> {^Raven^}: btw, this is related to http://www.esolangs.org/wiki/Brainfuck_algorithms
00:47:44 <pgimeno> heh, my algorithm matches calamari's one except for the last [-x-temp0] instead of [temp0-x-]
00:48:27 -!- harkeyahh has joined.
00:49:25 <harkeyahh> had to program the neutralizer in bf
00:51:26 <harkeyahh> I had to hack the compiler to get it to work
00:51:28 <{^Raven^}> If I can remember how to program BF: (value)>[-]-<[>-<] sets cell+1 to bitwise NOT cell
00:52:06 <harkeyahh> {^Raven^} I should upload it so you can take a look at it
00:53:33 <harkeyahh> {^Raven^} http://pastebin.bafserv.com/412
00:54:25 <harkeyahh> *note it has been hacked to adjsut for some ASCII differences in TSS
00:55:11 <{^Raven^}> or >[-]-<[>-<]>[<+>]< to set cell=NOT(cell); (cell+1) = 0
00:55:46 <harkeyahh> yeah I would have done it that way but then the page outputs backwards
01:08:19 <Keymaker> hey, here's interesting phrase: "Pile up Z's"
01:08:40 <Keymaker> according to some slang of the fifties page i'm reading
01:09:27 <GregorR> Umm, wouldn't logical not just be bitwise not proceeded by [[-]+] ?
01:10:09 <GregorR> 00000000 becomes 11111111 becomes 00000001
01:10:19 <GregorR> 00000001 becomes 11111110 --- never mind, I'm dumb.
01:12:45 <{^Raven^}> got as far as >[-]<[>+<[-]]>[<+>]< and >[-]+<[>-] but not luck
01:13:02 <{^Raven^}> keep forgetting the other condition
01:13:42 <harkeyahh> I was reading up i think it will be fine
01:14:12 * {^Raven^} is off to bed before morning happens again
01:15:34 <harkeyahh> Keymaker did you see the TSS source code?
01:22:41 -!- Keymaker has quit ("I've seen this dj vu before..").
01:28:37 -!- calamari has joined.
01:30:09 <calamari> hi Raven.. you're mentioned on the wiki under BFBASIC :)
01:30:43 <GregorR> OK, rather than finding a SCSI terminator, I'll ask: Is there any way to install Debian on an olde PowerPC laptop with a disk drive and no networking or CD? :P
01:31:38 <kipple> null-modem cable perhaps?
01:31:56 <{^Raven^}> i released Lost Kingdom to the world today :) but i guess you know that already ;)
01:33:12 <kipple> gregor: doesn't it have some equivalent of a serial port?
01:33:43 <GregorR> kipple: It has a modem ... and a strange port with a little telephone on it XD
01:33:51 <GregorR> (Gregor is not a macintosh expert :P)
01:34:31 <fizzie> A disk drive as in a floppy one?
01:35:20 <calamari> raven: cool! (goes off to download)
01:35:48 <GregorR> BTW {^Raven^}, though Lost Kingdom is whooping my arse, it's quite awesome.
01:36:26 <graue> show us how impressive the source in BFBASIC looks
01:36:51 <graue> the way it uses brainfuck is no better than giving us a big .exe file
01:37:09 <fizzie> (I'm not a mac expert either.) I've once installed linux on one x86 laptop much like that one. I used the internal modem in the laptop, connected to another modem on a desktop box (with atx3 they won't insist on a dial tone) running pppd, then did a network install.
01:37:14 <graue> and saying "look what i did in machine code!"
01:37:24 <fizzie> For booting you'd probably need a bootable mac floppy.
01:37:40 <GregorR> graue: I think a .class file might be a better comparison.
01:37:55 <GregorR> fizzie: I can boot into the basic installer, I just can't get the packages from anywhere XD
01:38:10 <graue> GregorR, same difference
01:38:25 <graue> brainfuck is only interesting when it's handwritten
01:39:55 <fizzie> If there's a version that supports the modem and ppp, you could do it the way I did. If you're _really_ patient, you could also write the packages on gazillion floppies, and copy on the HD, and install from there, using the shell included in the installer.
01:40:15 <fizzie> Uh, 'copy on the HDD using the shell', I mean.
01:41:04 <kipple> you'd only need two floppies, not a gazillion
01:41:33 <kipple> but you would have to reuse them a gazillion times
01:41:47 <fizzie> Well, yes, gazillion floppyfuls (hee, nice word) of data.
01:42:17 <GregorR> That sounds like more fun than I can possibly describe 8-D
01:42:25 <calamari> GregorR: yeah, it might not be too hard to convert from bfbasic bf back to bfbasic, since the source for bfbasic is available
01:42:42 <fizzie> It's like watching paint dry, only less interesting.
01:44:26 <calamari> graue: re: handwritten, I disagree.. it might be a little unsettling to see a larger project in bf, but I think most people would agree that asm doesn't work out the best for huge projects.. bf is like asm in many ways
01:45:44 <calamari> it just makes sense to use a compiler in large cases
01:50:49 <graue> calamari, yeah, but then why use brainfuck?
01:51:31 <graue> the reason to use brainfuck is it's challenging and interesting to write in
01:51:50 <graue> if you're compiling, why not just compile for your machine?
01:53:06 <graue> i wrote a DOS program once using only a hex editor, and that was interesting to have written something in machine code, but i don't compile mammoth C programs to 2 MB binaries and say, hey, look what i wrote in machine code!
01:53:12 <graue> the reason for it being interesting is a lie
01:56:15 <calamari> graue: bf is cross platform.. and it is interesting to me: 1) example of the power of bf, 2) a fun game, 3) using bfbasic, 4) big, etc
01:57:16 <calamari> graue: and if you have something cool to show off that your wrote in c, I don't think anyone here would mind :)
01:57:17 <graue> fair enough, but you gotta admit it ain't nothin' like a program actually written in brainfuck
01:58:01 <calamari> graue: you wouldn't use bfbasic in a bfgolf tournament.. is that what you're looking for? :)
01:59:01 <graue> i wrote this in C, which is cross platform because it runs in wine: http://www.thunderpalace.com/software/blockman/
01:59:12 <graue> i guess everyone here will be astounded at how impressive that is
02:02:18 <calamari> impressive, most impressive.. obi-wan has taught you well, you have controlled your fear. now release your anger.. only your hatred can destroy me :)
02:02:49 <calamari> since I know how big a star wars fan you are, I know you'll appreciate that ;)
02:04:03 -!- harkeyahh has quit (Read error: 110 (Connection timed out)).
02:05:05 <calamari> graue: "BLOCKMAN.LVL is nonexistent or corrupt"
02:06:12 <calamari> not trying to run it from the zip or anything
02:06:47 <calamari> hmm.. works from the command line
02:07:05 <calamari> wonder where the bug is.. gnome, wine, or ubuntu?
02:11:17 <calamari> graue: somehow I get the feeling the game is abandoned, but if not, the game would benefit from a menu, for restart, quit, and easy access to help
02:12:00 <graue> well, it was only a version 0.07
02:16:59 <calamari> *nod*, doesn't change my suggestion any :)
02:23:35 -!- harkeyahh has joined.
03:13:32 -!- graue has left (?).
03:17:05 -!- harkeyahh has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.4/20050511]").
03:20:01 -!- wooby has joined.
03:32:54 -!- kipple has quit (Read error: 110 (Connection timed out)).
03:33:37 -!- smott_ has joined.
03:36:36 -!- smott has quit (Read error: 110 (Connection timed out)).
03:59:25 -!- wooby has quit.
04:18:04 -!- calamari has quit (Read error: 110 (Connection timed out)).
04:24:45 -!- calamari has joined.
04:29:15 -!- GregorR has quit (Success).
04:55:15 -!- malaprop has quit ("sleep").
05:27:51 -!- graue has joined.
05:27:59 -!- graue has quit (Client Quit).
05:34:37 <calamari> argh.. my esoshell hacks for printed backspaces don't seem to be working right
05:34:51 <calamari> gotta give up for now, homework time
07:01:33 -!- tokigun^away has changed nick to tokigun.
07:55:41 -!- calamari has quit ("Leaving").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
10:25:37 -!- kipple has joined.
11:13:09 -!- Keymaker has joined.
11:13:32 <Keymaker> hmmm. grrhhh. i had some question in mind just second ago
11:16:40 <Keymaker> yes.. what's difference between random and undefined?
11:18:32 <kipple> undefined can be anything, while random implies a certain distribution of values
11:20:10 <kipple> at least that's how I see it. there are probably people here who can put it more formally
11:20:52 <Keymaker> as well, if anyone has any information about aura, tell me
11:21:30 <kipple> I've looked at the interpreter source. is there any web site?
11:33:57 <fizzie> I'd say the precise meanings of 'random' and 'undefined' depend on the context in which they are used. In the C specs for example, the term undefined is well-defined.
11:34:01 <fizzie> ("behavior, upon use of a nonportable or erroneous program construct, of erroneous data, or of indeterminately valued objects, for which this International Standard imposes no requirements")
11:48:21 -!- Keymaker has quit ("I've seen this dj vu before..").
13:00:39 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
13:12:08 -!- jix has joined.
13:13:31 -!- sp3tt has joined.
13:42:59 -!- malaprop has joined.
15:31:47 -!- Falling has joined.
15:33:34 -!- Falling has left (?).
15:46:17 -!- tokigun has joined.
16:14:41 -!- jix has quit ("Banned from network").
16:46:15 -!- jix has joined.
17:29:48 -!- harkeyahh has joined.
17:53:26 -!- calamari_ has joined.
17:55:33 <calamari_> hi raven, just sent you a mail :) can't work on it right now tho
17:56:47 <{^Raven^}> me either, i have a cross compiler to port to C and a load of other programs to write
17:57:51 <{^Raven^}> I have some ideas for writing better brainfuck virtual machines that I need to write up
17:58:35 * {^Raven^} prefers the term virtual-machine to interpreter any day
18:01:15 <malaprop> Doesn't "virtual machine" include the idea of sandboxing?
18:03:15 <{^Raven^}> It can do, it depends ultimately on the functionality you are trying to achieve
18:03:56 <malaprop> The machine isn't virtual if it's stepping all over your real machine, tho.
18:04:55 <{^Raven^}> IMHO any current interpreter that allows a program to wander into arbitary workspace is horrificly broken
18:05:09 <calamari_> malaprop: would you consider Java a virtual machine, even though it ties in to all sorts of low level stuff?
18:12:38 <malaprop> Java the language? No, it's a language. JVM, yes, as a browser applet is sandoboxed.
18:14:17 <{^Raven^}> *depending on the security settings active at the time. A JVM with appropriate permissions can access the underlying OS
18:25:52 <kipple> well, I don't think there is a definition of virtual machine that everbody would agree on
18:28:00 <malaprop> I don't see any definitions on Wikipedia that don't include some kind of sandboxing. Where do y'all see it defined without?
18:30:10 -!- graue has joined.
18:30:56 <kipple> but what is sandboxing? brainfuck interpreters isolates the programs from the computer, and does not allow arbitrary memory and file access
18:32:36 <malaprop> bf is isolated because there's no implementation of file IO. It'd be a VM if bf had IO and it was to a fake filesystem only.
18:32:44 <{^Raven^}> malaprop: google for - define:virtual machine
18:34:20 <malaprop> {^Raven^}: Every definition it returns includes sandboxing. Heck, one simply says "A machine which is implemented in software."
18:38:14 <CXI> <malaprop> Doesn't "virtual machine" include the idea of sandboxing? <--- my answer would be yes
18:38:25 <{^Raven^}> malaprop: At the lowest level a VM is a bytecode interpreter. A brainfuck interpreter interprets brainfuck bytecode. But I think we'll have to agree to disagree on this one.
18:39:22 <graue> i don't see how a brainfuck interpreter fails to be a machine implemented in software
18:39:38 <malaprop> I won't agree to disagree. You're using a term (VM) in place of the proper one (interpreter).
18:39:51 <CXI> well on some level everything's just a virtual turing machine
18:39:53 <malaprop> graue: It doesn't include virtual disks, screens, anything.
18:40:33 <graue> machines don't need to have those things to be machines
18:40:42 <malaprop> I'm starting to think that "it's turing complete" is the computer science equivalent of solipsism.
18:41:33 <malaprop> And if we're going to go into boring useless theoretical concerns, nothing is a turing machine because they're finite.
18:46:56 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
18:47:16 -!- tokigun has joined.
18:47:16 -!- graue has left (?).
18:47:32 -!- tokigun has quit (Client Quit).
18:47:49 -!- tokigun has joined.
19:17:46 -!- harkeyahh has quit (Client Quit).
19:34:14 -!- Keymaker has joined.
19:42:14 -!- smott_ has changed nick to smott.
20:05:10 -!- harkeyahh has joined.
20:08:37 -!- harkeyahh has quit (Client Quit).
20:14:30 <cpressey_> < malaprop> graue: It doesn't include virtual disks, screens, anything.
20:14:59 <lament> malaprop is a sad sad man
20:15:12 <lament> if he thinks a language should provide access to a file system
20:20:41 -!- calamari_ has quit ("Leaving").
20:33:01 -!- harkeyahh has joined.
20:37:13 <malaprop> I didn't say a language should, was pointing out that this one didn't.
20:37:53 <malaprop> It starts simple: first programmers want access to files. Then before you know it they'll want OpenGL.
20:40:06 <malaprop> I'm familiar with Python's BDFL...
20:40:46 <Keymaker> nothing :) it was a joke, SDL libraries for brainfuck :)
20:47:05 <tokigun> Keymaker: SDL for Brainfuck? sounds good :)
20:48:26 <malaprop> You could see if you can port SWIG.
20:48:55 <{^Raven^}> There is EsoAPI and Easel in development as part of he PESOIX specification for esolangs.
20:49:47 <{^Raven^}> EsoAPI allows low level disk access (when running as the main OS) and Easel allows file IO and more
20:54:24 -!- jix has left (?).
20:54:28 -!- jix has joined.
20:59:43 -!- sp3tt has quit (Read error: 104 (Connection reset by peer)).
21:03:50 <Keymaker> yeah. and to note: i am not going to do anything :)
21:07:03 <Keymaker> hmm. someone search "simpsons" with google.. what add it gives you?
21:09:13 <malaprop> A whole lot of pages about the TV show.
21:11:03 <Keymaker> ok. then the ads aren't same for us
21:12:54 <fizzie> "SEX XXX PORN LIVE SHOWS" was the ad I got.
21:40:34 <Keymaker> these simpsons quotes are so funny :D
21:43:29 <Keymaker> "My Homer is not a communist! He may be a pig, a liar, a communist but he is not a porn star!" -- grandpa
21:48:23 <Keymaker> "I have been shot eight times this year, and as a result, I almost missed work." -- apu
21:51:08 <Keymaker> "The Statue of Liberty? Where are we?!" -- milhouse
21:56:30 <Keymaker> "McBain to base! Under attack by Commie-Nazis!"
22:01:27 <Keymaker> anyways, i'm off to watch some simpsons. then probably go night photographing. so, see you tomorrow :)
22:01:37 -!- Keymaker has left (?).
22:15:48 -!- tokigun has changed nick to tokigun^away.
22:28:42 -!- jix has quit ("Banned from network").
23:07:56 -!- GregorR has joined.
00:40:47 <harkeyahh> simpsons is on in 20 minutes god i need to watch it
00:44:19 -!- heatsink has joined.
00:45:59 <harkeyahh> heatsink is 4am like in the nighttime?
00:46:29 <heatsink> harkeyahh: yes, in most parts of the world
00:46:53 <harkeyahh> wow, he is really a nighttime munchkin
00:47:29 <harkeyahh> the guy i am trying to get a job from
00:47:59 <harkeyahh> funny you mention that, because lots of people think I am a bot.
00:49:56 <harkeyahh> Error:#4128 _does not compute_ immediate implosion threshold broken
00:49:58 -!- harkeyahh has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.4/20050511]").
00:51:09 <{^Raven^}> did harkeyhh pass the turing test?
00:51:35 -!- harkeyahh has joined.
00:51:37 <malaprop> He must not have been written in GregorR's #Esolang.
00:51:51 <harkeyahh> Hello, ChanServ how are you today?
00:56:04 <harkeyahh> apparently Jackson got 10 years to life in Juvenile Hall
00:56:50 * heatsink imagines that harkeyahh looks like a paperclip :3
00:57:33 <kipple> as long as they are not animated
00:58:15 <{^Raven^}> can they do anything other than eject CDs/DVDs?
00:58:40 <harkeyahh> since they are small, they can go almost anywhere
01:00:04 * kipple tries to drive the mental images out of his brain
01:01:32 <harkeyahh> please refrain from slanderous statements
01:02:19 <harkeyahh> I am afraid a deity is toching my inappropriately
01:02:44 <heatsink> I'm sure it has seen you naked as well.
01:03:10 <harkeyahh> that webcam was not supposed to be public!
01:06:03 -!- harkeyahh has changed nick to iamnothere.
01:09:56 -!- iamnothere has set topic: Another brainfuck site (http://www.bf-hacks.org/) is open! ~ http://chriscoyne.com/cfdg/ ~ Esolang wiki: http://esolangs.org/wiki/ Please pray for my package to arrive safely in La Puente CA. thnx much!.
01:14:52 -!- kipple has quit (Remote closed the connection).
01:16:01 <iamnothere> I will pay $300 in monthly installments of 00.925
01:18:18 <iamnothere> heatsink $1500 for annual payments of $00.50
01:19:47 <heatsink> I require annual payments of $1.00 plus payment of interest at 8% per year compounded monthly.
01:20:45 <iamnothere> $10,000 annual payments of $5 annual interest of .25
01:21:14 <iamnothere> interest to be paid in full with the last payment
01:21:53 <heatsink> There is no melloroos for monikers!
01:22:20 <iamnothere> don't be a mitch about it! I want your nick!
01:23:06 <iamnothere> I have made many acceptable offers and you have declined all of them
02:14:20 -!- iamnothere has quit (Read error: 104 (Connection reset by peer)).
02:45:01 -!- wooby has joined.
02:49:36 -!- harkeyahh has joined.
03:06:17 -!- wooby has quit.
03:07:30 -!- wooby has joined.
03:09:19 -!- harkeyahh has quit (Read error: 110 (Connection timed out)).
03:10:11 -!- GregorR has quit (Remote closed the connection).
03:12:11 -!- GregorR has joined.
03:18:13 -!- calamari has joined.
03:25:25 <GregorR> A fine display of conversational skill, that was.
03:26:57 <GregorR> Gettin' ready to release DirectNet Beta0.5 :)
03:27:44 <GregorR> http://directnet.sourceforge.net/
03:28:10 <GregorR> (Not related to esoteric programming ;) )
03:29:15 <GregorR> Any OSX users who can verify my ability to create workable DMGs?
03:35:16 * calamari tries to figure out how to cvs checkout the gaim plugin
03:35:58 <GregorR> And it's in the main directnet branch, you have to --enable-gaim-plugin to configure it.
03:38:30 <GregorR> Also, it's undocumented and unintuitive since Gaim doesn't exactly provide the faculties for multiple connections >_>
03:38:56 <GregorR> Err, multiple connections by one plugin in an intuitive way.
03:40:15 <calamari> it's magic :) cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/directnet checkout -P directnet
03:45:22 -!- wooby has quit.
03:45:37 <GregorR> Anybody have an HPUX box they want to compile on XD
03:45:46 <calamari> cool.. configure. Wish I knew how to use that for my apps :)
03:46:03 <GregorR> It's quite handy once you get the hang of it.
03:46:26 <GregorR> And I have a crosscompiler for that :)
03:47:04 <calamari> ./configure: line 20979: cd: /home/calamari/directnet/./src/enc-cyfer/gmp: No such file or directory
03:47:37 <GregorR> To compile from CVS you have to get GMP and Cyfer...
03:47:43 <GregorR> So first you have to run getcyfer.sh
03:47:54 <GregorR> I'll make that more intuitive ... in ten minutes XD
03:49:03 <GregorR> Just as soon as I get Beta0.5 up :)
04:00:27 <calamari> hmm, weird.. cvs update didn't do anything
04:01:20 <GregorR> That was a different tada ;)
04:01:34 <GregorR> That was "Tada, finished releasing Beta0.5"
04:07:59 <GregorR> OK, now that's committed to CVS.
04:08:09 <GregorR> However, their anonymous CVS server sux, so it won't show up for a few hours.
04:08:27 <GregorR> Just go sh getcyfer.sh and aaaaaaaaaall will be well.
04:18:44 -!- harkeyahh has joined.
04:19:19 <GregorR> (I really have to stop speaking broken Spanish)
04:36:24 -!- malaprop has quit ("quit").
04:51:27 -!- harkeyahh has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.4/20050511]").
05:33:05 -!- heatsink has quit ("Leaving").
06:03:51 -!- lindi- has quit (brown.freenode.net irc.freenode.net).
06:03:53 -!- tokigun^away has quit (brown.freenode.net irc.freenode.net).
06:04:21 -!- tokigun^away has joined.
06:04:21 -!- lindi- has joined.
06:17:36 -!- GregorR-L has joined.
06:57:01 -!- tokigun^away has changed nick to tokigun.
07:08:33 <GregorR-L> "You snagged a perfect girlfriend. Amy's rich, she probably has other characteristics ..."
07:13:39 <fizzie> I have an irix box, but it doesn't have a C compiler. :p
07:13:47 <GregorR-L> Hmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm
07:14:09 <GregorR-L> In all technicality, I could probably suffice with libc and some headers.
07:15:37 <fizzie> (I've been intending to hook that Sun HD box (the one I mentioned re that scsi terminator) to it and move /usr on it or something, but for some reason haven't yet.)
07:18:53 <fizzie> I guess I should -> work first. (Can't you use sourceforge's compile farm to try compiling it? There seems to be at least solaris/x86 and solaris/sparc.)
07:27:14 -!- calamari has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:40:29 -!- sp3tt has joined.
08:59:08 -!- GregorR-L has quit (Read error: 110 (Connection timed out)).
10:19:44 <{^Raven^}> reading Korean Babeled into English is extermeley esoteric
10:20:03 <{^Raven^}> I see armies of rabbits invading the woodland :)
10:33:12 <puzzlet> I wish to do a babelfish bot presentation somewhere in freenode.
10:33:23 <puzzlet> if i could fix it to support utf-8
10:40:46 <puzzlet> wait, it must be somewhere other than my website.
10:40:54 <puzzlet> {^Raven^}: what did you read?
11:05:54 <{^Raven^}> tokigun's blog entry about lost kingdom
11:07:04 <tokigun> puzzlet: hmm... i have to add unicode feature to TiniCube ;)
11:08:22 <tokigun> http://dev.tokigun.net/esolang/ i'm making my esolang page. (korean)
11:08:47 -!- tokigun has quit (Remote closed the connection).
11:08:51 <puzzlet> tokigun's blog contains translator-unfriendly expressions.
11:10:04 <puzzlet> Take a look at http://puzzlet.org/puzzlet/BabelFish~BabelFishAutomata
11:14:58 <{^Raven^}> but it's all very interesting to read though
11:28:24 <CXI> a functional babelfish language
11:28:25 <CXI> that's crazy
13:31:38 -!- malaprop has joined.
14:02:02 -!- wooby has joined.
14:05:22 -!- jix has joined.
14:06:23 <wooby> GregorR: DMG works fine
14:32:01 <wooby> i'm able to mount it and whatnot
15:36:53 -!- cmeme has quit (Remote closed the connection).
16:06:57 -!- harkeyahh has joined.
16:33:49 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
16:34:11 -!- CXI has joined.
17:03:56 -!- puzzlet has changed nick to puzzlet_utf8.
17:04:37 -!- puzzlet_utf8 has changed nick to puzzlet.
17:38:15 -!- Keymaker has joined.
17:39:06 <Keymaker> rh.. me need food. me too hungry x[
18:00:34 <jix> take a chef program and cook it..
18:09:09 -!- harkeyahh has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.4/20050511]").
18:29:09 -!- wooby has quit.
18:41:34 <Keymaker> how do i link "Category:StuffHere" in esowiki?
18:59:38 <Keymaker> i added small page for stack: http://esolangs.org/wiki/Stack
19:23:55 <pgimeno> Keymaker: I don't get what you mean
19:25:03 <pgimeno> do you mean that this text is intended for Category:Stack-based?
19:28:22 <Keymaker> i meant that first i tried to add there a link to that Category:Stack-based
19:28:37 <Keymaker> like "check out stack-based languages"
19:30:14 <cpressey_> Keymaker: [[:Category: StuffHere]]
19:56:55 <Keymaker> grrh.. it's annoying to read posts (@ google groups) where people talk about brainfuck and don't understand its usefulness and so on.. grrrrrrrh. release the hounds!
20:01:26 <puzzlet> anyone knows how to see non-ASCII characters in linux without Xserver?
20:02:26 -!- sp3tt has quit ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]").
20:02:28 -!- harkeyahh has joined.
20:03:20 <lindi-> puzzlet: you can change fonts for hardware text mode too
20:04:14 <pgimeno> lindi-: I guess he means to read Hangul which I'm not sure but is probably > 512 symbols
20:09:15 <puzzlet> ah, that is the keyword, framebuffer
20:09:33 <puzzlet> i can't help forgetting things
20:48:25 -!- Keymaker has left (?).
20:50:49 <lament> how can anybody possibly not understand the usefulness of brainfuck?!?
20:50:56 <lament> the most useful language ever!?
20:52:45 <pgimeno> I'm tainted to add BF to [[Category:High-level]]
21:02:59 -!- cmeme has joined.
21:03:16 -!- cmeme has quit (Remote closed the connection).
21:04:02 -!- cmeme has joined.
21:28:45 -!- harkeyahh has quit (Read error: 145 (Connection timed out)).
22:19:09 <GregorR> pgimeno: I assume ORK is already there?
22:19:25 <GregorR> fizzie: Thanks for checking that, good to know :)
22:33:47 -!- jix has quit ("Banned from network").
22:39:48 <lament> i think the list of esoteric languages should include Lisp :)
22:40:22 -!- calamari has joined.
22:54:19 <pgimeno> GregorR: yes, thanks to kipple
23:09:25 <GregorR> Articles in category "Object-oriented paradigm"
23:09:25 <GregorR> There is 1 article in this category.
23:10:57 <calamari> I wonder if there can be an oo tarpit, or if there is one already
23:11:53 <lament> object oriented particle system
23:12:24 <GregorR> Oh, btw, about Lisp, lament: hear hear))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
23:12:24 <GregorR> ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
23:40:05 <calamari> is there a Special: page that gives a list of links to pages that haven't been made?
00:34:28 -!- kipple has joined.
00:35:14 <kipple> Gregor: there are now 2 articles in the OO category :)
00:39:28 -!- graue has joined.
00:42:33 * calamari notes that the Monobook "wikipedia" skin looks a lot better than 'classic' :)
00:43:21 <kipple> IMHO it should be the standard skin as it is the one used by wikipedia, and therefore probably most familiar to users
00:44:25 <calamari> graue: is there a special page like Special:WantedPages that'll show even single links to pages that haven't been made yet?
00:45:25 <calamari> also, I'm wondering why there is both a Category:languages page and language_list.. can the language_list page go away?
00:46:33 <kipple> in theory. but not as long as categorization is not complete
00:47:22 <kipple> would be nice to have some weapons of mass-categorization...
00:48:32 <calamari> that shouldn't be hard to do.. I can just click each page and add [[Category:Languages]]
00:51:01 <calamari> actually, what would be better is to leave both pages for now, and only delete items off the language list when a real categorization is complete
00:51:37 <calamari> then the language_list will finally be empty
00:52:38 <graue> the Language list needs to stay
00:53:44 <kipple> the language list is nice because it can contain languages that doesn't have an article yet
00:55:16 <calamari> wish there was an automatic way to have it be added to the language list.. I've created a few language articles and never updated the list
01:08:38 -!- lindi- has quit (brown.freenode.net irc.freenode.net).
01:09:45 -!- lindi- has joined.
01:13:07 -!- graue has left (?).
01:21:47 <GregorR> I updated the HQ9++ page and the main page (hope nobody minds 8-D)
01:23:07 <kipple> why should anybody mind? that is the purpose of a wiki after all
01:50:21 <calamari> GregorR: I've edited your edit :)
01:59:30 -!- calamari has quit ("Leaving").
02:02:38 <kipple> hmm. should TMMLPTEALPAITAFNFAL be categorized as nondeterministic?
02:08:43 <kipple> on second thought, I think not
02:25:04 -!- kipple has left (?).
02:38:45 -!- calamari has joined.
02:56:03 -!- graue has joined.
03:46:23 -!- wooby has joined.
03:48:31 -!- calamari has quit (Connection timed out).
04:10:58 -!- graue has left (?).
04:42:29 -!- malaprop has quit ("quit").
05:12:19 -!- calamari has joined.
05:16:54 -!- calamari has left (?).
05:21:59 -!- calamari has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:31:21 -!- calamari has quit ("Leaving").
08:55:10 -!- comet_11 has joined.
08:55:17 -!- CXI has quit (Read error: 54 (Connection reset by peer)).
08:55:46 -!- comet_11 has changed nick to CXI.
09:43:36 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
10:02:03 -!- CXI has joined.
10:08:33 -!- CXI has quit ("If you're reading this, it's probably x-chat's fault.").
10:08:43 -!- CXI has joined.
12:03:04 -!- J|x has joined.
12:13:09 -!- J|x has changed nick to jix.
12:22:58 <{^Raven^}> have had some really good ideas for BFBASIC but don't have the necessary Java skill to program em :(
12:24:49 -!- kipple has joined.
12:34:42 -!- J|x has joined.
12:35:20 -!- jix has quit (Nick collision from services.).
12:35:22 -!- J|x has changed nick to jix.
13:00:02 -!- {^Raven^} has changed nick to Penance.
13:00:23 -!- Penance has changed nick to {^Raven^}.
13:22:26 -!- malaprop has joined.
15:29:59 -!- smott has left (?).
15:33:47 -!- tokigun has joined.
15:58:24 -!- Keymaker has joined.
15:59:04 <Keymaker> raven: who says it must be done in java?
16:02:52 <{^Raven^}> Keymaker: BFBASIC is written in Java so alterations to it need to be in Java too
16:03:44 <Keymaker> what kind of features they are?
16:04:33 <{^Raven^}> so far I have SELECT CASE/WHEN/OTHERWISE/END SELECT worked out
16:04:54 <lindi-> {^Raven^}: any url to BFBASIC sources?
16:05:02 <{^Raven^}> CASE is nestable. FOR ... STEP for +ve/-ve steps
16:05:23 <{^Raven^}> Code libraries and source split over multiple files
16:05:57 <{^Raven^}> and string support which is so badly needed
16:07:25 <{^Raven^}> lindi-: http://sourceforge.net/projects/brainfuck/ the source is in the CVS
16:07:41 -!- wooby has quit.
16:08:02 <lindi-> i tried http://lilly.csoft.net/~jeffryj/compilers/bfbasic/bfbasic.zip -- that is older?
16:08:36 <{^Raven^}> Calamari's page ^^ has 1.30 and 1.40 is on sourceforge
16:09:17 <{^Raven^}> I just think that it sucks that I could add all these if it was in a language I was more familiar with
16:10:10 <{^Raven^}> named functions and procedures will be able to have parameters too ;)
16:10:38 <{^Raven^}> it will mean that libraries of useful BFBASIC routines could be written and INCLUDEd in user code
16:58:10 <Keymaker> that is, i can't find how you can check if file exists (in python)
16:59:15 <Keymaker> as well, i'm hungry and thirsty
17:00:04 <{^Raven^}> keymaker: http://diveintopython.org/file_handling/ seems to have some info on that
17:01:47 <malaprop> should catch IOError and make sure that the errno is 2 just to be specific
17:02:15 <malaprop> an attribute of the exception object
17:02:38 <malaprop> pull up the interpreter and do 'open("foo")' so you can see the exact exception that's thrown, then catch only that.
17:07:17 <malaprop> You just don't want to accidentally catch other exceptions is all.
17:30:57 -!- harkeyahh has joined.
18:01:46 -!- kipple has quit ("See you later").
18:03:15 -!- fizzie has quit (brown.freenode.net irc.freenode.net).
18:05:09 -!- fizzie has joined.
18:05:41 -!- fizzie_ has joined.
18:05:41 -!- fizzie has quit (Read error: 104 (Connection reset by peer)).
18:07:48 -!- kipple has joined.
18:22:05 -!- fizzie_ has changed nick to fizzie.
18:27:03 -!- jix has quit ("This computer has gone to sleep").
18:43:41 -!- kipple has quit (Remote closed the connection).
18:53:17 <Keymaker> http://koti.mbnet.fi/yiap/stuff/unnecessary.html
19:10:47 <malaprop> Hm, shouldn't the source files exist but be 0b?
19:15:21 <GregorR> No, that would make the source file necessary.
19:16:15 <{^Raven^}> But necessary[1] is a different language. [1] Hypothetical sister language to unnecessary
19:39:06 -!- jix has joined.
19:56:47 <jix> i have an idea for a graphical (esoteric.. but writeable) language
19:57:50 <jix> you arrange your program using elements and conect them using.. wires and it has anonymous functions .. and there are no function names.. just symbols
20:06:51 <Keymaker> wow wow wow wow awesome!!!!!!!!!!!!!!!!!!!!!!!
20:07:17 <Keymaker> a game i didn't back then couldn't finish or play properly when i had crappy computer, and then forgot it for years,
20:07:32 <Keymaker> and now when reading jurassic park books thought i could try again,
20:07:41 <malaprop> jix: Sounds neat, and a lot like my mental picture of programming.
20:07:44 <Keymaker> seems to be editable with cool editors that fnas have made
20:08:03 -!- Keymaker has left (?).
20:09:34 <lament> jix: aardappel has written a bunch of those, look on his page
20:09:41 <lament> well, they do have names iirc
20:10:33 <lament> I believe i had made a language very similar to Keymaker's, year ago
20:11:33 <malaprop> lament: where is aardappel's page?
20:11:34 <lament> The coolest part about ZEN was that ZEN programs execute themselves
20:11:51 <lament> http://wouter.fov120.com/
20:12:02 <lament> his languages are at http://wouter.fov120.com/proglang/index.html
20:12:25 <jix> lament: i know aardappel and i my brother even knows someone who knows the author of aardappel but my language is different (i think so)
20:12:40 <lament> jix: not the language aardappel, the person aardappel
20:12:54 <lament> jix: who is probably the person your brother knows :)
20:13:18 <jix> i must miss read that..
20:13:34 <lament> he's like, the saint and the founding father of esoteric languages
20:13:38 <lament> and cpressey is his prophet
20:13:43 <lament> he also used to come here
20:13:46 <jix> the language and the person
20:13:48 <CXI> oh, the cube guy
20:13:54 <jix> Wouter van Oortmerssen aka Aardappel
20:13:59 <jix> Languages: Aardappel, Bla, E, Fals....
20:14:17 <CXI> he wrote False too?
20:14:36 <CXI> that's awesome
20:14:55 <jix> yes.. i wouldn't know that my brother knows... if he didn't come in atm i was viewing the false page
20:15:01 <lament> CXI: yeah, he's a genius
20:15:46 <lament> but usually people just talk about Cube to point that out; not his programming languages
20:16:11 <CXI> Cube's pretty cool, but I wouldn't call it genius material
20:16:59 <lament> well, whom else do you know who wrote something of that scope by himself?
20:17:42 <CXI> what, a fps?
20:17:52 <lament> not necessarily an fps
20:20:29 <malaprop> Cube looks very neat. Wish I wasn't at work, heh.
20:20:38 <CXI> it's pretty cool
20:20:47 <CXI> unfortunately the physics engine is basically a giant hack :D
20:21:17 <CXI> a friend and I had a look at using it for an fps
20:21:29 <CXI> but it got pretty difficult when we realised how much of the physics code we'd need to rewrite
20:23:02 <CXI> it was pretty impressive nonetheless
20:23:30 <malaprop> Why was the physics engine unsuitable for your needs?
20:24:13 <CXI> we wanted to do more interesting things with it... object motion, friction against different surfaces, variable gravity
20:25:29 <CXI> the actual engine is sorta... add a bit here, add a bit there, multiply by a number that sounds good, add a bunch of special cases
20:25:42 <CXI> which works fine for the game itself
20:25:48 <CXI> but extending it can be hard
20:37:00 -!- Keymaker has joined.
20:37:47 <jix> the cd of which game?
20:37:54 <malaprop> ah, thought it was just a really short swear you censored
20:38:20 <Keymaker> and i was sure i had seen it lately
20:38:35 <Keymaker> just when i was about to play it
20:38:48 <Keymaker> and just when i found out that there are level editors and stuff for it thesedays
20:38:59 <Keymaker> just ten minutes ago i found that out
20:39:02 <CXI> I can't find a whole lot of my CDs :(
20:39:15 <Keymaker> RGGGGGGGGGHHHHHHHHHHH!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
20:39:15 <CXI> specifically, my Whitlams CD and my copy of Freespace
20:39:17 <CXI> download it?
20:39:38 <tokigun> CXI: how many CDs do you have? :S
20:40:06 <CXI> (be warned that number may not be exact)
20:40:37 <Keymaker> if i could download and so on, i would probably do that, since i've bought the game before
20:40:42 <malaprop> CXI: If you want another copy of Freespace, ask me in a couple days when I'm home and I'll see if I have it to rip for you.
20:41:21 <Keymaker> well, at least i have two of those nice game boxes featuring a velociraptor
20:41:46 <Keymaker> oh, and probably i can't find it anywhere since it's probably 5 years old game
20:41:59 * {^Raven^} only ever uses the original disk as the backup and a copy of it for playing
20:42:13 <CXI> that'd be clever, I should do that instead
20:42:17 <malaprop> 14:43:03 * {^Raven^} only ever uses the original disk as the backup and a copy
20:42:51 <CXI> there's this pattern
20:43:00 <CXI> every time I delete a game off my hard drive the original CD goes missing
20:43:24 <{^Raven^}> most publishers offer replacement CDs for a small charge
20:44:51 <Keymaker> i'm so annoyed. i'll go hunting the game tomorrow. let's hope some small pc store still has copy (for extra low price)
21:37:36 -!- wooby has joined.
21:54:04 -!- wooby has quit.
22:30:22 -!- jix has quit ("Banned from network").
22:30:40 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
22:30:41 -!- comet_11 has joined.
22:33:13 -!- comet_11 has changed nick to CXI.
23:16:50 -!- harkeyahh has quit (Read error: 60 (Operation timed out)).
23:23:16 -!- harkeyahh has joined.
00:45:26 <Keymaker> time has gone fast when i have been studying jurassic park trespasser
00:46:35 <lament> Keymaker: i have already made a language that does nothing
00:47:26 <lament> i can perhaps find it given the esolang archive
00:50:47 <lament> hee, found my original post suggesting to place the irc channel on freenode :)
00:54:10 -!- harkeyahh has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.4/20050511]").
00:55:03 -!- kipple has joined.
00:57:39 -!- calamari_ has joined.
00:59:23 <Keymaker> sorry lament, i didn't know that
00:59:40 <lament> cpressey_: theres a mail by you to esolang from 2001
00:59:52 <lament> cpressey_: about turing-complete vs. "useful"
01:00:29 <lament> cpressey_: and you propose to differentiate useful languages by building a "controlled oscillator" in them
01:00:40 <lament> http://esoteric.sange.fi/archive/2001-q3
01:01:23 <calamari_> Keymaker: I've been wanting to rewrite a lot of that bfbasic code, but I kept it the way it was so that Jon could write his game.. didn't want to break it and not be able to get it back together before spring break ended :)
01:01:56 <cpressey_> (why do i have a tail all of a sudden...?)
01:02:00 <calamari_> keymaker: right now all the statements and operators are in a big messy blob.. crappy code basically.. hard to understand and extend
01:02:27 -!- cpressey_ has changed nick to cpressey.
01:02:54 <lament> cpressey: convergent evolution
01:03:14 <lament> Keymaker: that's okay, i think it's because i never published it...
01:03:55 <lament> Keymaker: anyway it was called ZEN, null program was the only one, iti did nothing, and thus ZEN programs executed without any need for a physical computer...
01:03:57 * calamari_ wonders why there isn't a Chris Pressey page yet.. too prestigious?
01:04:48 <lament> Keymaker: i.e. not only each program was a quine, but also a (self'executing) ZEN interpreter
01:08:17 <Keymaker> btw, is every Unnecessary program a Unnecessary interpreter too?
01:08:17 * calamari_ just sent everyone an Unnecessary program.. hope you enjoy
01:09:40 <calamari_> keymaker: are you familiar with flex/bison/yacc, etc ?
01:10:08 <calamari_> I suspect they would be the best way to redo bfbasic
01:10:33 <calamari_> it would take care of all the parsing ,which is where the big mess comes in
01:11:19 <calamari_> I'm getting more comfortable in python, but I still don't like it nearly as much as Java
01:11:53 <calamari_> something about it just seems tacked together and fragile
01:14:36 <calamari_> I also like Java's library much more than python's
01:14:59 <calamari_> although python does have lots of nifty string stuff.. that makes it bearable :)
01:15:26 <Keymaker> because of that i was suggesting it
01:16:20 <calamari_> I suggest that we stick with the current code for now.. although ugly, it does work (except for the bugs).. so once we get the bugs fixed we can port it or whatever
01:16:42 <calamari_> the bugs seem to be centralized in the array code
01:17:12 <calamari_> I've been meaning to plug it into a bf debugger and check it out.. see if it does what I think it does, etc
01:17:25 <GregorR> My only problem with Java is that it sucks horribly in every way.
01:17:30 <GregorR> Other than that, it's good.
01:18:29 <calamari_> calamari once thought as you do.. you don't know the POWER of the Java side :)
01:19:03 <GregorR> Java is too far Object Oriented. Object Orientation is good for certain things, but unlike they hype says, it is NOT good for everything, or even most things.
01:19:23 <GregorR> There are several tasks for which OO is perfect. And for those, I use C++ so I can drop out of OO when necessary.
01:19:25 <calamari_> you can do functional programming in Java if you'd like
01:19:43 <GregorR> But anyway, I just got off work, so now I am to leave :P
01:20:15 <calamari_> cya gregor, have fun using c.. I'll toss you some free()'s :)
01:20:34 <Keymaker> perhaps ORK would be good for this project?
01:20:58 <calamari_> perhaps we should just cut out all this fancy stuff and write it in bf
01:21:44 <calamari_> I would like to bootstrap it someday.. but we're not far along enough yet
01:22:00 <Keymaker> i was just going to say that :)
01:22:17 <cpressey> hm, you might be able to do functional programming in java... but you'd have to use objects to handle anonymous functions, i think...
01:22:38 <cpressey> calamari_: re bfasm: right on!
01:23:03 <calamari_> cpressey: thanks.. I can't believe my wife put up with me doing it.. I was glued to the computer for days.. couldn't quit :)
01:23:43 <Keymaker> have you even uploaded it anywhere?
01:24:08 <calamari_> the c file is actually the one in extras
01:24:21 <calamari_> yeah, I don;t think I released it before the bootstrap was done
01:25:13 <calamari_> I need to redo some of the stuff.. bfbasic has made improvements to some of the bf code
01:25:45 <calamari_> well anyhow.. I need to go home.. cya all later on
01:26:02 -!- calamari_ has quit ("<=K").
01:26:39 <Keymaker> wow. that bfasm.b sure is neat.. :)
01:26:50 <Keymaker> anyways, i need to go to. it's 3:30 am.
01:26:55 -!- Keymaker has quit ("I've seen this dj vu before..").
02:37:48 -!- calamari has joined.
02:42:51 <{^Raven^}> there was a minor riot in town earlier with the G8 summit peeps but nothing too bad
02:46:18 <{^Raven^}> i've been pondering BFBASIC enhancements but am not sure of the current state of play
02:47:57 <{^Raven^}> have got some good ideas about how to implement strings
03:00:20 <calamari> raven: I'm fine.. a little tired :)
03:00:52 <calamari> good ideas about strings.. cool. Are they basic-like or c-like?
03:01:03 <calamari> in other words.. garbage collection
03:02:23 <{^Raven^}> C like with a fixed maximum length set on initialisation.
03:03:10 <{^Raven^}> current idea is that a string can be treated internally as a numeric array
03:03:32 <calamari> the nice thing is that it doesn't need to be null terminated
03:03:41 <{^Raven^}> with all string handling operations being treated internally as array transformations
03:04:16 <{^Raven^}> yeah, they can be but there is no value in [<] or [>] due to how array elements are stored in memory
03:04:49 <calamari> no I'm saying it doesn't need to be null terminated
03:05:16 <GregorR> It would be easiest to navigate around strings if they were double-null-terminated...
03:05:17 <calamari> or are you suggesting something different than a numeric array?
03:05:58 <calamari> if you want the string to be immutable, then you don't even need to skip cells
03:06:04 <calamari> then you could null terminate it
03:06:56 <calamari> what about a bunch of immutable strings and a malloc?
03:07:19 <calamari> then you could imitate variable length strings
03:08:00 <calamari> it'd be similar to current array code, but each "cell" would have a width value
03:08:08 <GregorR> Whoops, I just bought another year on codu.org when I already had XD
03:08:18 <GregorR> Now I'm good through '07 though, so no prob :P
03:08:59 <calamari> hm.. now that I think of it.. that wouldn't really work
03:09:20 <calamari> well it could, I guess with null termination
03:09:36 <{^Raven^}> it seems that it will be more effiecent to define a string as a fixed sized array
03:09:37 <calamari> it'd be an interesting challenge
03:10:21 <{^Raven^}> string constants could be handled internally by the interpreter and inlined into the compiled code
03:10:27 <calamari> but say you did something like A$=B$+C$.. it would take B$ and C$, determinae a new length for A$, and copy B$ and C$ into the space
03:10:29 <{^Raven^}> but I am not sure about their value
03:11:25 <{^Raven^}> you would need to initialise A$ somewhere also specifying the maximum length of A$
03:11:53 <calamari> yeah, it'd be right with the variable
03:12:05 -!- kipple has left (?).
03:13:08 <{^Raven^}> lots of string operations seem to be fairly simple
03:13:24 <calamari> currently I think it's var B A element 0 element 0, etc.. so it'd be something like: maxlength, length, 0, elements, 0
03:13:41 <calamari> probably needs a bit of tweaking .. need to map it out on paper
03:14:37 <calamari> there wouldn't really be a free(), strings would just persist and grow, or be overwritten
03:15:20 <{^Raven^}> i am not sure how to make such a heap work in brainfuck
03:15:47 <calamari> there'd just be a "temporary" string that is used
03:16:29 <calamari> for example, in A$=B$+C$, it doesn't know about A$ yet, because of the parsing order.. to it's actually like TEMP$=B$+C$
03:16:57 -!- harkeyahh has joined.
03:17:19 <calamari> only problem with this scheme is that things like MID$ wouldn't work
03:17:56 <calamari> well MID$ would work if the exact offset was given, but otherwise, nope
03:18:24 <calamari> for example if it's a constant that can hardcode some >>>>'is the file, you're all set
03:18:40 <{^Raven^}> MID$ can be decomposed into a FOR...NEXT loop
03:18:43 <calamari> but if you're saying MID$(A$,X,Y), you're stuck
03:19:07 <calamari> because it has no way to get to element X on its own
03:19:27 <calamari> that would require using regular arrays with 2 elements per character
03:19:28 <{^Raven^}> no, FOR temp = X TO Y:do something with _strA(temp):NEXT
03:19:35 <harkeyahh> calamari, {^Raven^} is always right, get over yourself.
03:20:36 <GregorR> Hmmmmmmm, implementing VB in BF.
03:20:45 <GregorR> Almost as fun as self testicular mutilation.
03:21:02 <harkeyahh> self testicular gesticulation bahaha
03:21:29 <calamari> I feel sorry for vb.. it started out great, especially vb-dos
03:21:39 <{^Raven^}> DIM A$(40) becomes DIM _strA(42):_strA(0)=40 (maxlen):_strA(1)=0 (current length)
03:22:04 <harkeyahh> self testicular mastication my ass calamari
03:22:11 <{^Raven^}> the string itself is stored in _strA(2)..._strA(42)
03:22:20 <calamari> raven: what I'm trying to say is that you can't access individual array elements because you have no way to get to them.. the first [>] goes straight to the end of the string
03:22:43 <calamari> harkeyahh: umm.. I didn't say that ;)
03:23:19 <harkeyahh> it was hypothetically implied calamari
03:23:33 <calamari> raven: unless you'd like to use regular array code, in which case this whole malloc scheme becomes irrelevant :)
03:23:52 <harkeyahh> please come again calamari, and bring some fish with you
03:24:32 <{^Raven^}> calamari: my current my entire idea is based on using regular array code. Just because I know that in concept it should work
03:25:43 <calamari> raven: might be able to make the strings mutable with that.. but maybe it's too much work
03:26:06 <calamari> just having the basics would be great :)
03:26:19 <{^Raven^}> calamari: that all depends on what the impact code size/efficiency is
03:27:58 <{^Raven^}> calamari: it should give us at least INPUT PRINT ASC LEFT$ MID$ RIGHT$ INKEY$
03:28:07 <calamari> it'd be just like regular array operatings, as you say.. but there'd be a lot of them
03:28:29 <calamari> SPACE$ and STRING$ are nice too
03:28:44 <{^Raven^}> that's my only concern is the large amount of code that will be generated, but I am not sure that there is any way to avoid that
03:28:45 <calamari> oops, didn't see it hiding in there :)
03:29:27 <{^Raven^}> (if length in _strA(1) is not NULL)
03:29:45 <calamari> well, if we examine the array clode closely (which I think we'll need to to find the existing bugs), we could probably code bf native versions of each of those and save some statements
03:30:18 <calamari> otheriwse, we'd be building it on top of existing bbfbasic statements.. that could get bloated
03:30:59 <{^Raven^}> yeah, we might need two variants, one for handling MID$(A$,1,2) and another for MID$(A$,X,Y)
03:31:20 <{^Raven^}> the first variant should be possible to code very efficiently
03:32:11 <calamari> you'd still need a temp variable..
03:32:17 <calamari> that's something to think about
03:32:43 <calamari> hopefully it'd be to the right of all current memory to allow it to grow very large if needed
03:33:20 <{^Raven^}> yes, I think that we could get away with declaring a temp string as large as the largest string
03:34:06 <calamari> and also.. check out something like A$ = B$ + MID$(C$ + MID$(D$, A, B), X, Y) + E$
03:35:00 <calamari> there isn't really any complex order of operations with strings
03:35:18 <calamari> one temp variable can handle th entire thing, step by step
03:35:47 <{^Raven^}> yeah. If we need to print a string larger than the temp we can do it on the fly
03:36:10 <calamari> it'd need to be the rest of memory.. take input for an example of that
03:36:52 <calamari> unless you wanted to do something like INPUT$(numchars) which would be more responsible
03:37:09 <calamari> wouldn't want to be known for bring buffer overflows to bf :)
03:38:32 <{^Raven^}> _t1=0:REPEAT:_to=INKEY:_strA(_t1)=_t0:_t1=_t1+1:UNTIL _t0=10 OR _t0=13:_strA(1)=_t1-1
03:39:17 <{^Raven^}> or UNTIL _t0=10 OR _t0=13 OR _t1>=_strA(0) to avoid the overflow
03:39:50 <{^Raven^}> above would be equivalent to INPUT A$
03:43:15 <calamari> well, I'm all for the idea of strings in bfbasic, it'll cause some parsing headaches and such of course, but I think we can handle it. the main thing though is fixing the current bugs first
03:43:31 <calamari> otherwise we're doomed w.r.t. arrays :)
03:46:13 <{^Raven^}> that's the kick in the teeth really, nothing (string related) can be done until then.
03:48:34 <{^Raven^}> I like the stuff that you put on the brainfuck agorithms page on the esowiki
03:50:33 <calamari> thanks .. we should fact check that array code .. hehehe
03:51:12 <calamari> still weird, because i did test it while writing it and all seemed fine
03:51:49 <calamari> need to port my bfadebug to linux
03:53:44 <GregorR> w00t, just got DN b0.6 out, much nicer build system now :)
03:54:02 <calamari> 0.6 already? I'm way behind with my 0.4
03:54:24 <GregorR> 0.4 to 0.5 was a huge change, 0.5 to 0.6 had no code changes :P
03:55:02 <GregorR> 0.4 to 0.5 was after implementing tons o' features and then letting it languish while I tracked down one nasty bug for a few months >_<
03:56:54 <calamari> yay, it complained about my lack of gmp
03:58:16 <GregorR> I assume you just got CVS?
04:03:19 <GregorR> Is there any reason you haven't downloaded gmp and cyfer/
04:07:09 <calamari> synaptics says I did have libgmp3
04:17:40 <GregorR> It compiles them in statically because they work a bit funkily in DN.
04:17:47 <GregorR> You have to run getcyfer.sh (like it says)
04:17:59 <GregorR> GMP = GNU Muli-Precision library
04:18:03 <GregorR> Cyfer = an encryption library
04:21:06 <{^Raven^}> GregorR: Nice hacker test you've got on your site, gonna have to go test some peeps with that
04:31:01 * GregorR wonders whether A) {^Raven^} wandered off of my site or B) {^Raven^} is mocking my use of a wiki for DN ...
04:31:29 <GregorR> Ahh, the one on the Cyfer page.
04:34:52 * {^Raven^} ponders that it's 4:30 am and he should have been asleep hours ago
04:36:57 * {^Raven^} waves nite to all the esopeeps and toddles off to bed (again)
04:38:06 -!- harkeyahh has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.4/20050511]").
04:48:42 -!- ChanServ has quit (brown.freenode.net irc.freenode.net).
04:48:42 -!- fizzie has quit (brown.freenode.net irc.freenode.net).
04:49:47 -!- calamari has quit (brown.freenode.net irc.freenode.net).
04:49:48 -!- CXI has quit (brown.freenode.net irc.freenode.net).
04:49:48 -!- tokigun has quit (brown.freenode.net irc.freenode.net).
04:49:48 -!- malaprop has quit (brown.freenode.net irc.freenode.net).
04:49:48 -!- lindi- has quit (brown.freenode.net irc.freenode.net).
04:49:48 -!- {^Raven^} has quit (brown.freenode.net irc.freenode.net).
04:49:48 -!- cpressey has quit (brown.freenode.net irc.freenode.net).
04:49:48 -!- puzzlet has quit (brown.freenode.net irc.freenode.net).
04:49:48 -!- pgimeno has quit (brown.freenode.net irc.freenode.net).
04:49:48 -!- mtve has quit (brown.freenode.net irc.freenode.net).
04:49:48 -!- ZeroOne has quit (brown.freenode.net irc.freenode.net).
04:49:48 -!- cmeme has quit ("Client terminated by server").
04:50:20 -!- ChanServ has joined.
04:50:20 -!- calamari has joined.
04:50:20 -!- CXI has joined.
04:50:20 -!- fizzie has joined.
04:50:20 -!- tokigun has joined.
04:50:20 -!- malaprop has joined.
04:50:20 -!- lindi- has joined.
04:50:20 -!- {^Raven^} has joined.
04:50:20 -!- cpressey has joined.
04:50:20 -!- puzzlet has joined.
04:50:20 -!- pgimeno has joined.
04:50:20 -!- ZeroOne has joined.
04:50:20 -!- mtve has joined.
04:50:20 -!- irc.freenode.net has set channel mode: +o ChanServ.
04:50:50 -!- cmeme has joined.
04:58:15 <GregorR> http://gregorr.homelinux.org/scrabble/scrabble.php = libc scrabble values :)
04:59:53 <tokigun> GregorR: you mean English word game?
05:00:29 <GregorR> Except that I'm making it libc :)
05:00:43 <GregorR> libc scrabble > luser English scrabble
05:01:49 <GregorR> pthread_mutex_lock is worth 21 XD
05:02:34 <tokigun> i wondered why is there "_" letter ;)
05:05:54 <tokigun> http://page.tokigun.net/obfuscation/file/2004/md5calc.bf
05:06:35 <tokigun> i have to paste it in other window.. :S
05:34:21 <GregorR> Grr, how do you change the bgcolor of a td in JS >_<
05:37:54 <tokigun> GregorR: if you hate MSIE, use :hover css psuedo-selector. if not, use this.style.backgroundColor(probably) in inline script.
05:43:01 <lament> found my SMETANA interpreter that i don't think I ever published:
05:43:02 <lament> (lambda s=__import__('sys'),f=lambda f,l,p,n=lambda l,p:map(int,__import__('re').findall('\d+',l[p])):p>=len(l)and l or len(n(l,p))==3 and f(f,l[:n(l,p)[1]]+[l[n(l,p)[2]]]+l[n(l,p)[1]+1:n(l,p)[2]]+[l[n(l,p)[1]]]+l[n(l,p)[2]+1:],p+1)or f(f,l,n(l,p)[1]):s.stdout.writelines(f(f,file(s.argv[1]).readlines(),0)))()
05:43:47 <lament> except it dosen't work
05:44:16 <lament> but i remember it working with an older python :(
05:44:46 <lament> oh, i forgot to pass a command-line argument, nvm
05:46:20 <tokigun> lament: do you like obfuscated python? ;)
05:46:44 <lament> okay, this interpreter officially doesn't work :(
05:47:15 <tokigun> i think you like this one: http://page.tokigun.net/obfuscation/file/2004/tenma.py
05:47:31 <tokigun> (not very obfuscated however)
05:49:02 <calamari> GregorR: sorry for this silly question.. but what do I connect to with directnet? I tried your ip but it did not connect.
05:49:02 <tokigun> it contains interpreter, assembler, disassembler of whitespace.
05:49:45 <calamari> and what's with all the hex digits.. I assume it's not a Numberix program :)
05:57:31 -!- calamari has quit ("bbl").
06:19:17 <GregorR> OK, scrabble board = incredibly difficult to parse O_O
06:57:57 <GregorR> http://giki.sourceforge.net/scrabble.php
06:58:07 <GregorR> Still lacking many of the rules of scrabble, but it's basically functional :)
07:09:56 -!- cmeme has quit (Read error: 54 (Connection reset by peer)).
07:10:46 -!- cmeme has joined.
07:11:04 -!- cmeme has quit (Remote closed the connection).
07:11:49 -!- cmeme has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:54:47 -!- puzzlet has quit ("Lost terminal").
08:59:09 -!- puzzlet has joined.
10:31:31 <lament> should this go in wiki somehow?
10:31:32 <lament> http://z3.ca/~lament/pictures/flow.gif
11:09:20 -!- kipple has joined.
13:06:34 -!- {^Raven^} has quit (Remote closed the connection).
13:09:26 -!- J|x has joined.
13:10:36 -!- J|x has changed nick to jix.
15:34:55 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
15:36:28 -!- CXI has joined.
15:51:59 -!- CXI has quit (Excess Flood).
15:52:26 -!- CXI has joined.
16:37:27 -!- {^Raven^} has joined.
18:01:29 -!- lament_ has joined.
18:06:52 -!- lament has quit (Read error: 110 (Connection timed out)).
18:34:19 -!- CXI has quit (Connection reset by peer).
18:35:02 -!- CXI has joined.
18:53:39 -!- jix has left (?).
18:58:35 -!- jix has joined.
19:06:05 -!- lament_ has changed nick to lament.
19:47:41 -!- CXI has quit (Read error: 60 (Operation timed out)).
20:06:22 -!- sp3tt has joined.
20:13:29 -!- tokigun has quit (Read error: 104 (Connection reset by peer)).
20:25:53 -!- tokigun has joined.
20:27:50 -!- jix has quit ("Banned from network").
20:28:11 -!- jix has joined.
20:29:26 -!- calamari has joined.
20:33:59 <kipple> hey calamari: did you see the article on slashdot today about that javascript shell?
20:34:08 <kipple> reminded me of Esoshell :)
20:36:20 <calamari> no, let me look .. had /. open just haven't read it yet :)
20:36:42 <kipple> well the site is off-line (big surprise)
20:36:49 <kipple> mirrordot link: http://www.mirrordot.org/stories/1c1bf041ca7144dbe4b35249a8db7dff/index.html
20:37:09 <tokigun> kipple: yes /. effect ;) i saw the site months ago.
20:40:52 <calamari> whoever wrote this has even less of a life than I do :)
20:43:57 <tokigun> i'm thinking about 99 bottles of beer in Whirl.
20:44:22 <tokigun> it makes my head dizzy... :S
20:45:04 <kipple> you should not drink the beer until after you're finished programming
20:45:17 <jix> uhm http://esolangs.org/wiki/BF_instruction_minimalization i got down to 4 instructions (but thats a .. hack)
20:46:55 <calamari> hix: what are the 4 instructions?
20:47:22 <tokigun> kipple: i cannot drink the beer ;)
20:47:29 <jix> X U M and L
20:47:58 <jix> but U M and L have arguments ( there are still just X U M and L in the code)
20:48:14 <jix> X is flip the current bit
20:48:22 <jix> U is User and is used for in and output
20:48:28 <jix> M is used for moving
20:48:31 <jix> and L for looping
20:49:14 <sp3tt> Ow. That instruction minimalization hurts my brain even more than standard BF.
20:49:18 <calamari> bf instructions don't take arguments :)
20:49:28 <jix> it isn't brainfuck
20:49:39 <tokigun> then... what is THE arguments?
20:49:50 <jix> X U M and L
20:50:14 <jix> ULX moves up or down (i don't know.. have to recheck my specs)
20:50:16 <tokigun> like UX, UM, UL, LX, ....?
20:50:17 <calamari> how can u be used for both input and output?
20:50:21 <jix> uh... MLX moves up or down
20:50:55 <jix> U takes a code as argument.. if the cell after evaluating the argument is zero input one output (or the other way around)
20:51:17 <jix> after the argument is evaluated the current cell is set to the value of the cell before the evaluation stated
20:51:45 <calamari> I'm pretty sure what I have for the 5 instructions isn't going to work.. but that's okay :)
20:52:01 <jix> and because i didn't wanted to ad () or []{} i used a hack for the arguments
20:52:14 <jix> L takes one instruction as argument LL takes 2 LLL take 3...
20:52:50 <jix> and if you want an L instruction as argument of L you have to add 2 X instructions
20:53:02 <tokigun> jix: ah... then one instruction "block" (instruction + arguments) ends with X always?
20:53:05 <calamari> I think I tested almost all the really simple solutions.. the problems were that they were very dependent on what the data was.. 0 would stay 0, but 1 might stay 1, or it might go into an infinite loop, etc
20:53:10 <jix> tokigun: no
20:53:27 <jix> calamari: your 8->7 translation is unoptimal
20:54:06 <jix> http://www.rpi.edu/~hughes/boof/ here is a shorter one
20:54:09 <tokigun> i didn't understand... have to think about it
20:54:09 <calamari> jix: the goal wasn't to have 7 instructions
20:54:18 <jix> yes but your [ code is sooooo long
20:54:40 <calamari> that wasn't the point.. just wanted to dshow that it was bf complete
20:55:08 <calamari> I quote from the article: " (most likely not optimized)"
20:55:13 <jix> i didn't say it isn't bf complete.. i just wanted to inform you that there is a shorter conversion
20:55:34 <calamari> yeah, I think I saw one on a website.. but I wouldn't be able to use that without permission from the author
20:56:18 <jix> i have an idea for 5 instructions
20:57:14 <jix> but the memory usage may explode
20:59:44 <jix> i'm trying to combine . and ,
20:59:55 -!- sp3tt has quit ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]").
21:02:41 <calamari> the only way I can think of to combine . and , would be to have it depnd on which instruction was executed last (or some similar cheating), or having a predefined I/O area, in which case both instructions can be eliminated
21:02:58 <jix> no it's just a replacement table
21:03:28 <calamari> no idea what you meant by that
21:04:17 <jix> i removed the . and , instruction and added one which can be represented with the existing ones .. the same thing as you did
21:05:03 <jix> wait i'm writing it down atm
21:05:28 <calamari> note: any number of .'s will still be output :)
21:06:32 <jix> the definition of ; is [<.}]<}[<,}]<
21:07:27 <jix> and the translation from your 6 instruction set to the new 5 one is: '>' => '>>' , '<' => '<<' , '.' => '}<};' , ',' => '};'
21:07:31 -!- lindi- has quit (Read error: 104 (Connection reset by peer)).
21:08:30 <jix> '>' doesn't exists
21:08:38 <jix> i create a new table
21:11:12 <calamari> I'm not sure that qualifies either (although maybe my 5 inst solution doesn't either).. in essense you're constructing an if/else that does either one or the other. Feeling like cheating to me, but I dunno
21:11:37 <jix> if else .. where?
21:12:41 <jix> my reduction can be represented the same as yours .. i don't see a difference
21:12:51 -!- lindi- has joined.
21:13:14 <calamari> jix: i'm not saying its invalid.. i'm just saying it feels like cheating to me :)
21:13:41 <jix> it's like the 8->7 translation
21:14:45 <calamari> seems like you'd want [}<}. rather than [<. because otherwise you're always outputting a 0 for on of the bits?
21:15:40 <jix> why do i output 0 for them?
21:16:06 <jix> ah wait there is another mistake
21:16:13 <calamari> well, maybe it's not that simple
21:16:35 <jix> ok i need to expand the memory by 3
21:16:50 <calamari> you'd start with 1, but then it goes left, so you're outputting x 1 x x x x x x
21:17:11 <jix> every 2nd bit is a bit only used for the ; instruction
21:17:22 <jix> data temp data temp....
21:17:38 <calamari> ; doesn't exist.. I use . and ,
21:17:49 <calamari> they are a little different than bool
21:18:03 <calamari> since they input and output all 8 bits at once
21:18:16 <jix> no problem
21:18:30 <calamari> I think that should actually make it easier :)
21:18:37 <jix> then i think i wanted yours.. and i can use the temp bit used in + and -
21:19:04 <jix> what bit is the temp bit .. 0 or 8 ?
21:20:01 <jix> hmm does that work
21:20:15 <jix> no will loop forever
21:20:37 <jix> will destroy the bit 0 of the output byte
21:21:01 <calamari> if it's 1, it will get 1 x x x x x x x x, then you go left once, then right and flip, so 0 x x x x x x x x, then you exit
21:21:45 <jix> doesn't [}.<] work ?
21:22:16 <jix> i think it should be [}<}.<<}]
21:22:43 <jix> write it with > and @
21:23:02 <jix> [>.<@] is [}<}.<<}]
21:23:17 <jix> > => }<} < => < and @ => <}
21:23:36 <jix> but than we have a problem
21:24:09 <jix> we destoryed the input or output bit
21:24:35 <calamari> for example (I'll use the easier syntax so I don't mess it up):
21:24:56 <jix> ok but we have to rewrite the bf=> 5ins table
21:26:03 <jix> }<}[}<}.<<}]<[}<},<<}]
21:26:56 <calamari> anyone else have an opinion on this?
21:27:06 <jix> no one understands us ;)
21:27:17 <calamari> seems legit to me, according to the rules I laid down in the article
21:27:44 * kipple has no opinion at all about this (except perhaps a headache)
21:27:47 <jix> uhm why are you skipping 10 bits in the 8->7 translation?
21:28:05 <jix> yes but can't we reuse that bit
21:28:12 <jix> its bit 0 and 9 right ?
21:28:28 * tokigun also has no opnion but headache
21:28:39 <calamari> I could never get close to the bf optimization he can do
21:29:16 <calamari> jix: that stuff doesn't matter though.. that's only when translating back to bf
21:30:07 <calamari> jix: but if I'm understanding you, yeah, the bf translation might need to change.. dunno
21:30:20 <jix> yes but i have an idea to make it a bit more optimal (optimal as in we don't have to change the translation ;)
21:30:43 <calamari> do you have an account on the wiki?
21:31:39 <jix> >>>>>>>>>[<<<<<<<<.>>>>>>>>@]<<<<<<<<<[>,<@] would work without changing the current translation
21:32:08 <jix> or }<}}<}}<}}<}}<}}<}}<}}<}}<}[<<<<<<<<.}<}}<}}<}}<}}<}}<}}<}}<}<}]<<<<<<<<<[}<},<<}]
21:32:40 <tokigun> i introduced cfdg at hanirc and some people interested in it. (especially my friend)
21:33:01 <jix> hmm is it ok to ad a }<} at the beginning of every translation ?
21:33:22 <jix> because than we could use the short ; representation AND the old translation table
21:33:34 <jix> calamari: ?
21:34:42 <jix> away for 15 min
21:34:49 <calamari> If you'd like to optimizae the translations, that's cool
21:35:00 <calamari> doesn't matter much to me, though :)
21:36:08 <jix> i don't want to optimize it.. i just don't want to change it (because thats to much work)
21:37:55 <calamari> I think [}<}.<<}]<[}<},<<}] is better
21:38:24 <calamari> the leading > wasn't needed, because it's taken care of in the ., translations
21:40:57 -!- tokigun has changed nick to tokigun^away.
21:47:50 <calamari> hmm, what about [.<]<[,<] 0 0(1) gives output and results 0 0 x x x x x x x x, 0 1(0) gives input and results 0 0 x x x x x x x x
21:51:04 <calamari> cool.. looks good, I'm going with it :)
21:51:18 <jix> no that doesn't work
21:51:49 <jix> what is your . and , translation
21:52:22 <calamari> . = [@]>[@]>[@]@; (before } tanslation)
21:52:48 <jix> no need for [@] arn't the bits always 0 ?
21:53:00 <calamari> jix: depends on what was there
21:53:31 <jix> that can't work the. is at position 0 (relative to ; call) and the , at position -1
21:53:54 <jix> but i have another idea
21:54:35 <calamari> trace it through on paper if you need to
21:54:53 <calamari> it's a little tricky, sure.. but it works
21:55:09 <calamari> start with 0 0 1 and the pointer at 1
21:55:35 <jix> the pointer is at 2
21:56:15 <jix> than it may work but with . = [@]>[@]>[@]@; and , = [@]>[@]@>[@]; it doesn't
21:58:29 <calamari> even better would be [.@]<[,<]
21:58:36 <jix> does . and , output the current bit+7 or the next bit+7
21:59:34 <calamari> that messes up the original value, so it couldn't be converted back to .
22:00:13 <jix> how do you do the ] is still ] thing at 8->7 ?
22:01:23 <jix> on the 8->7 instruction step ] is still ] .. but can't the current bit be zero but the data bits not?
22:02:03 <calamari> huh? [ only tests a single bit
22:02:44 <jix> yes but.. take a look at the BF BitChanger table
22:03:08 <calamari> so all the weight of testing the byte is in [
22:03:18 <jix> yes and [ jumps back to after the ] if value is zero
22:04:17 <jix> lets think of: 0[1 0 0 0 0 0 0 0] the [ part is the data... this will exit the loop with your translation table .. but it shouldn't
22:05:47 <calamari> did you put this in an interpreter to check?
22:06:40 <jix> i think we should use the boolfuck thing.. the boolfuck interpreter is pd .. i assume the documentation too
22:06:47 <calamari> I need to get going for now, though
22:10:15 -!- calamari has quit ("cya all").
22:20:44 -!- jix has quit ("Banned from network").
22:26:27 -!- CXI has joined.
23:05:01 -!- harkeyahh has joined.
23:13:21 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
23:13:43 -!- CXI has joined.
23:35:59 -!- deltab has joined.
23:37:11 <lament> we need to get urban to come here as well
23:37:44 <kipple> I don't think he's much into esoteric languages these days...
23:38:31 <lament> kipple: "programming is like sex, you make one mistake and support it the rest of your life"
23:38:36 <lament> he clearly made his mistake :)
23:41:58 <kipple> I don't think he's done too much work supporting it...
23:47:53 <deltab> he enjoys skydiving and juggling hard drives, according to Wikipedia
23:48:05 <lament> there was a picture of him skydiving on his page
23:51:30 <lament> google image search for brainfuck gives all the wrong results
23:54:50 <kipple> I think it gives several interesting results :)
23:54:57 <kipple> like this: http://my.2000i.de/esolang2002/esolang-teaser.jpg
23:56:32 <kipple> I think it is a poster for a talk about esoteric programming
23:57:17 <lament> what does this smetana program do?
23:57:26 <lament> Step 1. Swap step 1 with step 2
23:58:53 <lament> cpressey: yeah, that's what i think it should do
23:59:30 <kipple> yes. that seems to be right
00:00:23 <lament> this means my interpreter is broken
00:06:09 <lament> hm, that's right, i see the bug now
00:08:35 <lament> interesting, my interpreter is completely broken
00:12:14 <lament> the interpreter was completely broken, yet the brokenness didn't affect the funcitonality of the smallfuck stuff
00:12:26 <lament> i.e. it still works :)
00:13:43 <kipple> that's an interesting definition of "completely broken"
00:14:56 <lament> it was broken for all cases when a swap instruction referenced itself
00:15:03 <lament> which apparently the smallfuck stuff never does
00:16:56 <lament> and i guess other than smallfuck stuff, there aren't very many smetana programs :(
00:19:09 <lament> i think repeatingly running a smetana program might lead to interesting results
00:22:11 <lament> simplest case, an on-off switch:
00:22:20 <lament> Step 1. Swap step 3 with step 4.
00:22:55 <lament> (swap step 3 with step 4 before reading)
00:39:31 * lament performs an act of abominable herecy: adds a print instruction to SMETANA!
00:40:26 <lament> Step 1. Print "Hello world!".
01:20:00 -!- harkeyahh has left (?).
01:22:35 <lament> looks like 99 bottles of beer would take more code than there's text in it :(
01:22:42 <lament> i.e. the cheapest version is to just use print statements
01:34:29 <kipple> well, it wouldn't be the first, I think
01:40:18 -!- kipple has left (?).
02:11:59 <lament> Step 1. Swap step 2 with step 4.
02:12:02 <lament> Step 2. Swap step 5 with step 6.
02:12:03 <lament> Step 4. Swap step 5 with step 7.
02:16:26 <lament> could be shortened by a step, of course.
04:30:03 -!- malaprop has quit ("sleep").
05:34:46 -!- comet_11 has joined.
05:35:18 -!- CXI has quit (Nick collision from services.).
05:35:20 -!- comet_11 has changed nick to CXI.
05:38:04 <GregorR> I improved my libc scrabble game :)
06:12:49 -!- GregorR has quit ("Leaving").
06:14:11 -!- GregorR has joined.
07:22:52 -!- tokigun^away has changed nick to tokigun.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:25:37 -!- sp3tt has joined.
08:29:05 -!- sp3tt has quit (Client Quit).
08:30:02 -!- sp3tt has joined.
08:30:46 -!- sp3tt has left (?).
08:33:00 -!- sp3tt has joined.
08:33:07 -!- sp3tt has left (?).
08:38:49 -!- sp3tt has joined.
08:40:30 -!- sp3tt has quit ("Leaving").
08:41:04 -!- sp3tt has joined.
08:51:13 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
09:47:25 -!- kipple has joined.
10:04:39 -!- tokigun has joined.
10:29:01 <pgimeno> lament: lol @ http://z3.ca/~lament/pictures/flow.gif - Hofstadter would probably enjoy it very much
10:29:58 <pgimeno> re Urban Mller's old homepage: http://web.archive.org/web/20040903174220/http://ftp.wustl.edu/~umueller/
10:30:31 <pgimeno> re SMETANA print instruction: now the next challenge is 99bob :)
10:33:10 <pgimeno> I think that Mller is now working for a company offering a search engine
10:34:31 <pgimeno> BTW, according to his homepage Mller spends (spent?) "too much time on IRC" (ircnet)
10:39:25 <pgimeno> he's probably one of these: http://tel.search.ch/result.de.html?all=urban+mueller
12:53:05 -!- sp3tt has quit ("BitchX-1.1-final -- just do it.").
13:21:20 -!- CXI has quit ("If you're reading this, it's probably x-chat's fault.").
13:38:01 -!- CXI has joined.
13:44:43 -!- jix has joined.
14:08:51 <{^Raven^}> pgimeno: Urban is number 14 on that list
14:12:02 <GregorR> So we're stalking him now?
14:12:32 <{^Raven^}> no, just using publicly available information put online bu Urban himself
15:11:40 <kipple> I'm sure he put his phone number online so that people could call him and ask things like "so, dude, what should a cell contain after reading EOF?" ;)
15:12:34 -!- malaprop has joined.
15:39:12 <{^Raven^}> kipple: questions like that are answered by reading the original/using the original compiler
15:43:07 -!- Keymaker has joined.
15:53:56 -!- jix has left (?).
15:54:01 -!- jix has joined.
15:55:36 <Keymaker> hm. mller doesn't mention brainfuck on his site.. how that can be possible?!
15:56:15 <Keymaker> he has interesting hobbies, though
16:03:27 -!- louis_ has joined.
16:05:58 <kipple> Keymaker: I don't think he really cares much about it
16:09:30 <kipple> Raven: I don't have an Amiga, so I can't use it, and I don't read assembler
16:10:06 <kipple> the interpreter says -1 though, and that's what I'm sticking with, but I'm not 100% sure the compiler does the same
16:30:21 -!- louis_ has left (?).
16:46:36 <GregorR> Maybe - juuuuust MAYBE (read: certainly) - Urban just doesn't want to go into a job interview and have the interviewer say "Oh ... yeah ... you're the guy who wrote Brainfuck ..."
16:46:51 <GregorR> I mean, esoteric programming is fun and all, but we should respect his right to live it down.
16:47:30 <kipple> anyway, I'm categorizing NULL as a Non-textual language. any objections?
16:50:09 <kipple> so now Piet doesn't need to feel so alone anymore :)
17:01:48 <tokigun> can I add my own Hello, world program in Whirl page?
17:16:41 <Keymaker> and it's annoyingly 25 celsius hot here
17:17:52 <jix> but 17-26 is ok for me
17:18:10 -!- tokigun has quit (Remote closed the connection).
17:18:55 <Keymaker> too bad the previous winters have been so warm
17:19:18 <jix> a few weeks ago we had 35°
17:19:40 <jix> thats really annoying
17:20:02 <jix> Bremen, Germany
17:20:14 <Keymaker> i didn't know there's so warm in germany
17:20:22 <jix> it isn't always so warm
17:20:33 <Keymaker> but still really warm, that day
17:20:50 <jix> it was just for 2 days.. the weeks before and the weeks after that days were 9-15°C
17:21:30 <jix> but last week i was in france
17:21:43 <jix> it was hot....
17:21:47 <jix> too hot for me
17:22:04 <Keymaker> did you see that eiffel tower?
17:22:32 <jix> no i wasn't in Paris
17:23:08 <jix> i was at the Cote d'Azur (near Monaco or was it already Monaco?)
17:27:29 <Keymaker> should i add Unnecessary to esowiki? :)
17:30:16 <jix> does HQ9+ ignore any non HQ9+ characters ?
17:30:49 <jix> because if it does i have a Q less quine: Hello, world!
17:33:40 <jix> it doesn't... print_string "Unknown command: "; print_char c;
17:34:41 <Keymaker> otherwise it would've been neat new quine for that language
17:35:35 <Keymaker> or well, it isn't officially said anywhere.. i think
17:35:44 <Keymaker> that's just unofficial interpreter
17:35:55 <jix> no its the reference implementation
17:36:39 <Keymaker> yes, one the site, but can't find anywhere the fact
17:36:56 <Keymaker> "Those that I've managed to find are listed below."
17:37:49 <Keymaker> that doesn't clearly mean it's official. the author should've made more clear whether the language reports other characters as error or ignores them
17:38:17 <Keymaker> anyways, you could e-mail the author :)
18:26:28 -!- Keymaker has quit ("I've seen this dj vu before..").
19:19:42 * GregorR ponders what {^Raven^} is pondering
19:31:46 -!- e has joined.
19:32:00 -!- e has quit (Client Quit).
19:47:17 <jix> and again the SEX instruction (COSMAC 1802 cpu)
19:54:04 <GregorR> I'm under the distinct impression that Berlios registration is borked :(*
19:56:07 <pgimeno> oh, my Choon submission was accepted
19:56:32 <jix> i'm going to write 99 bob for the ELF II computer
19:56:36 <GregorR> Hmm, never mind ... apparently fourth time's a charm XD
19:56:42 <jix> but first i need an assembler for that cpu
20:04:32 * {^Raven^} hates writing GUI apps for Windows but is forced to today
20:09:59 <GregorR> Just makes the whole portability thing muuuuch easier.
20:10:10 <GregorR> And it's small enough to reasonably compile statically into the binary.
20:14:04 <{^Raven^}> The entire program is 41 lines of code, but need to add a few hundred extra for the IF. Grrr...
20:25:12 -!- tokigun has joined.
20:44:34 <{^Raven^}> I'll just make it a CLI tool for DOS and let the user deal with it
21:49:57 <pgimeno> c:\app\addcust.exe /name="John Doe" /address="666th street, Moon" /phone="(+12)3456789"
21:50:20 <pgimeno> Customer "John Doe" added. Use brwscust.exe to list data.
21:52:19 <pgimeno> (forgot the C:\> prompt, sorry)
21:55:36 <tokigun> I'm designing 99 Bottles of Beer in Whirl.... yeah so difficult.
22:01:32 <pgimeno> whirl is a PITA to code in (though you can compress the sources pretty well, like 8:1 at worst)
22:03:28 -!- jix has quit ("Banned from network").
22:05:51 -!- calamari has joined.
22:07:09 <pgimeno> speaking of the moon: http://www.userfriendly.org/cartoons/archives/04jan/uf006348.gif
22:12:44 <{^Raven^}> pgimeno: I used to be majorly "into" writing GUI software, these day I write portable, multi-platform CLI stuff wherever possible
22:26:04 <tokigun> http://leporidae.tokigun.net/.service/99bob.txt psuedo code of 99 bob...
22:26:43 <tokigun> though i should explain this meta-language. :p
22:33:03 -!- Keymaker has joined.
22:35:13 <pgimeno> that vaguely reminds me of my planning of the "cat" program in Malbolge
22:35:18 <Keymaker> tokigun: yeah, that's gonna be a good challenge. good luck.
22:35:47 <tokigun> Keymaker: hello. / thanks :)
22:37:11 <Keymaker> (never tried, but at least that i got from the language specification..)
22:37:22 <Keymaker> (or well, there doesn't read that, but i thought it is hard)
22:37:28 <tokigun> yes... i have many issues and i'm finding solutions of them.
22:37:41 <pgimeno> Keymaker: I downloaded your sample Unnecessary source and works perfectly. Do you have more samples I can download to get a feeling of how it works?
22:38:06 <tokigun> some of them have been solved (perhaps) but sometimes another problem has been appeared :(
22:38:37 <tokigun> Keymaker: How about Unnecessary interpreter for web?
22:40:37 <Keymaker> by the way, anyone seen hitchcock's the birds?
22:40:43 <Keymaker> i just saw it before came here
22:40:54 <Keymaker> now i'm afraid of birds, though
22:41:53 <pgimeno> nice, http://koti.mbnet.fi/yiap/stuff/hello.unn also compiles and runs, though it doesn't print "Hello, world". I'll activate debugging to see what's wrong.
22:42:24 <tokigun> 6:43 am KST... i get to sleep ;)
22:42:30 -!- tokigun has changed nick to tokigun^away.
22:58:28 <pgimeno> most of europe is CET = GMT+1/2 (currently 2 because of DST)
22:58:46 <pgimeno> (with a relaxed concept of "most")
23:04:06 <pgimeno> http://www.timeanddate.com/library/abbreviations/timezones/eu/cet.html
23:04:38 <{^Raven^}> does anyone know of some good references for cross-compiling brainfuck into something more efficient?
23:04:58 <calamari> Raven: there's that bf cpu where it can run native ;)
23:06:36 -!- calamari has quit ("Leaving").
23:08:30 <GregorR> There are a bunch of BF compilers that compile BF into C.
23:09:03 <GregorR> And a few of those combine things like >>> into one += 3
23:09:24 <Keymaker> and mostly they are written in c
23:10:05 <Keymaker> btw, here's unnecessary interpreter for web use:
23:10:05 <Keymaker> http://koti.mbnet.fi/yiap/stuff/unnecessary.php?program=hello.unn&debug=on
23:10:28 <{^Raven^}> i've got a brainfuck optimisation engine that I'm working on that spits out code in whatever language you fancy
23:10:45 <Keymaker> well, what if i fancy brainfuck? :)
23:11:48 <{^Raven^}> you'd have to write a set of rules to decompile the internal code to whichever language
23:13:05 <{^Raven^}> i'd like to get together some more information than the optimisations that I already have
23:13:17 <{^Raven^}> i;'m sure there's stuff i've not thought about
23:22:18 <{^Raven^}> for an extreme case it reduces my Lost Kingdom from 2.1 million raw brainfuck instructions down to 147,000 instructions
23:23:50 <{^Raven^}> and that could be improved further
23:24:13 <fizzie> My befunge compiler does some optimizations too, so I guess it could be used for compiling brainf*ck (by translating first to befunge). I should just clean it up and write a code-generating backend, currently it can only spit out simple C code.
23:27:00 <fizzie> I only have some generated output in the interweb ( http://gehennom.org/~fis/utm.html => http://gehennom.org/~fis/out.c.txt ), not the compiler sources. Oh, and http://gehennom.org/~fis/re.bf.txt -> http://gehennom.org/~fis/re.bef.txt for the "oh gods that's horrible" brainf*ck->befunge translation.
23:27:17 <fizzie> I'm not quite sure what re.bf did. Probably something related to regular expressions.
23:30:43 <{^Raven^}> fizzie: is there the C output of re.bef
23:32:15 <fizzie> Not really, since g/p don't work in the C-code-creation-backend. That could be easily fixed, though, since the 'p's in that translated-brainf*ck code don't do any self-modification. I think there were some known bugs in the compiler still, though.
23:33:53 <fizzie> Oh well. This part of Europe is EET (GMT+3 at the moment, with the DST) so it's 01:34am, and a ~early morning tomorrow, so -> sleeps now. Night.
23:40:02 -!- calamari has joined.
23:44:18 <Keymaker> (thanks heaven i'm on summer vacation (and have no summer job either ;)))
23:52:42 <Keymaker> well, i tried, but nobody hired me!
23:53:10 <Keymaker> well, doesn't matter. i get to stay awake late
23:53:58 <calamari> lots of free time to come up with a new language
23:54:24 <Keymaker> too bad i'm reading to final exams
23:54:28 <Keymaker> or dunno what those are called
23:54:38 <Keymaker> fizzie could probably translate but he went away
23:55:26 <calamari> I'm curious what the sentence looks like natively
23:57:14 <calamari> the one you couldn't translate
23:57:48 <Keymaker> ah. i'm talking about the big exams you need to get trough to get out from high school, or whatever would be the translation
23:57:58 <Keymaker> school systems are annoyingly so different in different places
23:58:27 <Keymaker> anyways, i could probably get through it without reading, but i'm hoping/going to get good grades
23:58:50 <calamari> are high school exams common? I didn't have to take an exam to graduate.. but I know they started testing a few years ago
23:59:15 <Keymaker> well, here there has been these exams/'writings' for years
23:59:27 <Keymaker> probably 50 years or more, at least
23:59:53 <calamari> oh, just wondering if that was the word you meant
00:00:54 <Keymaker> anyways, since what's the point studying (read: wasting time to that crap) and take low grades in the final exams? nothing, so i'll try to get as good as i can
00:00:54 <calamari> so, write me some nice trance music.. you europeans are good at that :)
00:01:42 <Keymaker> and therefore, i must read.. (although, i could probably take a small weekend break ;))
00:01:53 <Keymaker> and trance.. i wish i could compose it :)
00:04:26 <{^Raven^}> Keymaker: what kind of music do you compost atm
00:04:48 <Keymaker> at the moment? nothing :) but tried something earlier today
00:04:58 <Keymaker> well, i try to get monotrack with industrial flavour
00:06:23 <Keymaker> as well, i must note: i don't know anything about music, i just try to find nice sounds, tweak and edit them and try to get it sound nice
00:06:31 <Keymaker> i have zero knowledge of any theory :)
00:06:35 * calamari plays along to songs on his harmonica.. no musical talent here.. hehe
00:07:11 <calamari> keymaker: I've listened to plenty of mods that were made just that way, and they are great
00:07:32 <{^Raven^}> i've heard some pretty amazing stuff made from loops and samples from peeps with no musical knowledge
00:08:23 <Keymaker> hopefully talent or intelligence is not required :9
00:09:16 <calamari> raven: heard of glastonbury? wondering if that is some kind of concert center?
00:10:37 <{^Raven^}> calamari: Glastonbury is a small village, the festival is held in a big field(s) on a farm
00:11:37 <{^Raven^}> calamari: people going there bring tents, food and stuff. It can get pretty muddy especially if it rains
00:16:08 <calamari> trance is so small in the us.. most is lame dance stuff.. you guys have it lucky over there
00:16:24 <Keymaker> one thing is what i would like to see
00:16:45 <Keymaker> in week or so, my absolutely favourite, SCOOTER, comes to one festival.
00:16:53 <{^Raven^}> tickets are about £125 gbp or $229 usd or 186 euros
00:17:06 <Keymaker> it's one of the biggest festivals around, on midsummer, and there's also other good electronic music
00:17:42 <calamari> raven: wow, that's pretty steep..no wonder they camp out
00:18:25 <Keymaker> nothing actually stops me from going, in fact folks have been trying to get me going there since they know i like scooter so much.
00:18:33 <Keymaker> either the way, for some reason i don't go
00:18:59 <Keymaker> i'll complain for weeks how stupid i am, when it's gone and i can read from web how scooter fans say "AWESOME GIG!!!!!"
00:19:57 <Keymaker> as well, very expensive tickets, raven
00:20:13 <Keymaker> they're a lot cheaper around here
00:20:42 <{^Raven^}> Apparently is is well worth it, thousands of peeps over 2 days with several stages open at the same time
00:22:19 <Keymaker> oh, you're talking about music.. yes, that as well.
00:22:43 * {^Raven^} thinks he gets the joke but isn't sure
00:23:45 <Keymaker> almost any electronic music is fine
00:25:26 <Keymaker> but not noise or whatever it's called
00:25:36 <Keymaker> like where there is just pure noise
00:25:51 <Keymaker> like for example white noise combined with some annoying sounds
00:26:06 <Keymaker> stuff that hurts ears.. no thanks
00:31:12 <Keymaker> "harsh noice" is the category, i guess
00:32:18 <{^Raven^}> The Germans are pretty good for metal
00:32:43 <Keymaker> and trance.. good ol' germantrance :)
00:32:58 <Keymaker> (althouhg, no idea about metal, i hate that noise)
00:33:10 <{^Raven^}> yeah lol, didn't the Germans invent trance?
00:33:56 <Keymaker> at least they produce and listen it a lot
00:41:21 <Keymaker> hmm, the birds make more noise than usually (outside).. i hope they don't plan an attack
00:46:24 -!- malaprop has quit (Read error: 54 (Connection reset by peer)).
00:47:01 <Keymaker> hm. i'm tired.. and hungry. i've eaten almost nothing this summer.. like only once a day, usually noodles. nothing else the whole day
00:49:42 -!- Keymaker has quit ("I've seen this dj vu before..").
00:51:15 <{^Raven^}> i'm gonna go to bed to and avoid programming some more
00:53:02 <{^Raven^}> got to get some ideas together for a text adventure programming competition that started a few days ago
00:53:54 <{^Raven^}> game engine has to be 2,899 bytes maximum with a 8,192 byte data file
01:00:52 <lament> {^Raven^}: what languages are accepted?
01:01:42 <{^Raven^}> lament: loads, mainly it's if it can be run on any of a huge list of platforms
01:01:58 <lament> do they accept Thue? :)
01:02:35 <{^Raven^}> probably, although i'd contact the organiser
01:03:07 <{^Raven^}> if you can do it in 2,899 bytes of source code with a max 8k data file
01:03:47 <pgimeno> ORK is the best for the task, it's so compact...
01:03:59 <calamari> Here you go: You are in a room. Exits to the north, east, south, west. (repeat)
01:04:21 <{^Raven^}> page is at http://www.geocities.com/dunric/advcomp.html
01:04:44 <calamari> I hope that's not the same dunric I know
01:06:42 <calamari> I know him from efnet #rgvc (or should I say used to know.. presently banned)
01:07:19 <calamari> he occasionally posts a giant flame to rec.games.video.classic.. I think I was mentioned once.. lol
01:07:33 <calamari> (although, iirc, in a positive light)
02:05:25 <cpressey> that sounds like an interesting contest...
02:33:13 -!- malaprop has joined.
02:37:25 -!- graue has joined.
02:38:36 <graue> who's this iamnothere dolt who has a package?
02:38:53 <graue> i hope it gets to La Puente all broken and covered with oats
02:52:32 <lament> here's what needs to be done:
02:52:42 -!- lament has set topic: Another brainfuck site (http://www.bf-hacks.org/) is open! ~ http://chriscoyne.com/cfdg/ ~ Esolang wiki: http://esolangs.org/wiki/ Please pray for my package to arrive safely in Mumbai, India. thnx much!.
02:53:07 <graue> now that's something i can wholeheartedly support
03:10:55 -!- kipple has quit (Read error: 110 (Connection timed out)).
03:55:15 -!- pgimeno has quit (Read error: 104 (Connection reset by peer)).
03:56:09 -!- pgimeno has joined.
04:04:58 -!- calamari_ has joined.
04:11:13 -!- calamari has quit (Read error: 104 (Connection reset by peer)).
06:29:40 -!- graue has left (?).
06:47:28 -!- calamari_ has changed nick to calamari.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:01:50 -!- calamari_ has joined.
08:10:44 -!- calamari has quit (Read error: 60 (Operation timed out)).
09:09:53 -!- tokigun^away has changed nick to tokigun.
09:58:06 -!- calamari_ has quit ("Leaving").
10:07:51 -!- jix has joined.
12:07:08 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
12:34:49 -!- J|x has joined.
12:35:27 -!- jix has quit (Nick collision from services.).
12:35:29 -!- J|x has changed nick to jix.
13:10:03 -!- tokigun has joined.
13:48:34 -!- kipple has joined.
14:50:43 -!- jix has quit ("This computer has gone to sleep").
15:25:43 -!- jix has joined.
15:36:20 -!- graue has joined.
17:51:39 -!- ionas has joined.
17:51:48 -!- ionas has left (?).
18:14:48 -!- comet_11 has joined.
18:19:08 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
22:14:02 -!- comet_11 has quit (Read error: 145 (Connection timed out)).
23:08:37 -!- graue has quit ("Leaving").
23:09:50 -!- tokigun has quit ("rebooting").
23:12:05 -!- tokigun has joined.
00:40:07 -!- calamari has joined.
00:53:22 <jix> moin calamari
00:56:13 <tokigun> i'm writing low-level psuedo code of 99bob in whirl... eh.
01:10:55 <calamari> jix: I need to write up a bool debugger so it's easier to verify solutions :)
01:11:17 <jix> yes that would help a lot
01:44:30 <tokigun> http://zenith.sparcs.net/dev/whirl99bob.txt
01:44:47 <tokigun> i've just finished low-level psuedo code of 99bob in whirl.
01:45:02 <tokigun> (still hard to understand)
02:29:34 -!- jix has quit ("Banned from network").
04:00:57 -!- calamari_ has joined.
04:02:14 -!- calamari has quit (Read error: 104 (Connection reset by peer)).
04:04:13 -!- CXI has joined.
04:19:23 -!- kipple has quit (Read error: 110 (Connection timed out)).
04:44:35 -!- pgimeno has quit (brown.freenode.net irc.freenode.net).
04:44:35 -!- puzzlet has quit (brown.freenode.net irc.freenode.net).
04:45:36 -!- fizzie has quit (brown.freenode.net irc.freenode.net).
04:45:36 -!- deltab has quit (brown.freenode.net irc.freenode.net).
04:47:35 -!- deltab has joined.
04:47:35 -!- fizzie has joined.
04:47:49 -!- pgimeno has joined.
04:47:49 -!- puzzlet has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:13:55 -!- calamari_ has quit (Read error: 110 (Connection timed out)).
08:18:07 -!- calamari has joined.
09:22:40 -!- tokigun has quit (Read error: 131 (Connection reset by peer)).
09:22:42 -!- tokigun_ has joined.
09:22:44 -!- tokigun_ has changed nick to tokigun.
10:05:01 -!- jix has joined.
10:18:46 <calamari> actually I should say messing with Swing, since I haven't written a line of interpreter code yet
10:22:07 <jix> hehe use ruby/tk
10:23:22 <jix> pythen is nice but i prefer ruby's syntax and core features and stdlib
10:23:23 <calamari> I've written a couple new LayoutManager's today.. but they should come in handy in the future
10:25:33 -!- pul has joined.
10:25:37 -!- pul has left (?).
10:37:48 <calamari> jix: http://images.kidsquid.com/bool.png
10:51:54 -!- Keymaker has joined.
10:52:26 <Keymaker> bool probably is some language?
10:54:48 <jix> it's 1bit brainfuck
10:55:39 <Keymaker> i thougth that was called boolfuck
10:55:49 <jix> calamari and me are trying to minimize the brainfuck instruction set without adding extra rules just by creating new instructions that can be build out of the old ones
10:55:55 <jix> boolfuck is different
10:56:02 <jix> boolfuck is LE and has bit output
10:58:30 <Keymaker> anyways, i'll be back later. bye
10:58:33 -!- Keymaker has quit ("I've seen this dj vu before..").
11:14:33 <calamari> jix: added the menu.. going to bed :)
11:14:47 -!- calamari has quit ("<=K").
11:15:31 -!- kipple has joined.
11:17:13 <jix> moin kipple
12:05:14 -!- J|x has joined.
12:07:45 -!- jix has quit (Nick collision from services.).
12:07:48 -!- J|x has changed nick to jix.
12:22:30 <{^Raven^}> anyone know who runs the esoteric.sange.fi mailing list?
12:26:30 <kipple> I don't know, but it might be the same guy that runs the brainfuck archive
12:27:05 <kipple> Panu Kalliokoski, pkalliok@cs.helsinki.fi
12:27:09 <kipple> http://esoteric.sange.fi/brainfuck/
12:36:04 -!- J|x has joined.
12:38:01 -!- Keymaker has joined.
12:43:49 <Keymaker> there is no new-line in morse code (the real, not the programming language), right?
12:44:39 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
12:47:09 -!- jix has quit (Read error: 110 (Connection timed out)).
12:48:41 -!- J|x has changed nick to jix.
12:50:56 <{^Raven^}> there are end of message and internal seperator codes
13:16:06 <{^Raven^}> I've been working on a project that may be of interest to the esolang community
13:17:13 <{^Raven^}> it's a website that may or may not be useful
13:17:51 <{^Raven^}> if you want to take a peek msg me privately and I'll give you the URL
13:18:09 <{^Raven^}> but I don't want it public until I've got permission
13:18:39 <{^Raven^}> I'd appreciate some comments if anyone is willing
14:53:32 -!- Keymaker has left (?).
15:01:55 -!- tokigun has joined.
15:05:12 -!- Keymaker has joined.
15:05:27 <tokigun> Keymaker: I've finished 99bob in whirl :)
15:05:59 <tokigun> (i have to optimize but it works)
15:06:58 <Keymaker> i wonder what the guy that invented whirl will say about that..
15:10:49 <tokigun> Keymaker: http://zenith.sparcs.net/dev/99bottle.wr
15:11:41 <tokigun> it weighs 20,332 instructions
15:12:25 <tokigun> it was generated by my own whirl assembler
15:12:27 <Keymaker> it's a lot instructions smaller than some slarty's hello world
15:12:59 <tokigun> slarty's hello world program gave me the idea about memory initialization
15:49:10 <tokigun> optimized 20,322 instructions -> 19,722 instructions
16:02:35 <jix> i've an idea for a new brainfuck dialect
16:03:07 <jix> is a programm that loops forever
16:03:27 <jix> the program is equivalent to [-]+[]
16:03:32 <jix> in standard bf
16:04:56 <jix> the commands are: []+-<>,. |^%"$ and maybe (i'm unsure) macros
16:05:46 <Keymaker> the dialect throws the symmetry out of window :)
16:06:39 <Keymaker> well, i think brainfuck is very symmetric with [ ] and , . and + - and < >
16:06:42 <tokigun> 19,162 instructions. hmm...
16:06:56 <Keymaker> the dialect has instructions like | and ^ and so on
16:07:01 <tokigun> oops, 19,158 instructions.
16:07:17 <jix> | is a reverse-mode-stop
16:07:30 <jix> maybe i should add a reverse-mode-start
16:08:33 <jix> ok new instruction set: [] +- <> ,. !? ^v '.
16:08:49 <jix> '.' is used twice ^^
16:09:27 <jix> i need to symmetric characters for up and down
16:10:15 <jix> [] +- <> ,. !? ^v 96
16:10:57 <Keymaker> :) as we know, aesthetics is the most important thing in esolangs..
16:10:58 <jix> and i need an exit character... @
16:12:41 <Keymaker> i suggest you writing some specification of the instructions.. sometime
16:13:00 <jix> but i've to do my homework :(
16:14:03 <jix> but it's only 3,5 weeks until summer holidays :)
16:14:42 <tokigun> ah... i have final exam tomorrow. oops :(
16:18:37 <jix> i need a name for my dialect
16:22:01 <jix> Yet Another Brainfuck A Like
16:22:57 <jix> argh homework... YABAL... homework.. YABAL... homework... URGH
16:23:15 <tokigun> 18,294 instruction, anyway
16:23:35 <Keymaker> going to get it below 10000? ;)
16:24:00 <jix> hmm Yet Another Brainfuck A Like (Language?) .. YABAL..YABALL?
16:24:46 <jix> i'm going to write down the specs after the next 2 pages homework
16:38:25 <Keymaker> well, back to program in bf.. :)
16:57:21 <jix> i found 2 ways for converting bf->YABALL
16:57:31 <jix> the first produces polyglots
16:57:39 <jix> the 2nd YABALL only programs
16:57:58 <jix> the 2nd is more compact and more YABALL style code
17:04:37 <jix> i have a new nice cat ( and i'm still not done with homework 0o...)
17:12:04 <jix> _ is underscore
17:13:32 <jix> the fraction bar is the line in a fraction but i don't think its an ascii character
17:14:10 <jix> maybe slash /
17:14:23 <Keymaker> i'm reading morse code entry at wikipedia
17:14:31 <Keymaker> and there is no picture of fraction bar
17:14:49 <Keymaker> or well, with picture i mean ascii
17:18:59 <jix> but in ascii representation i use / for the fraction bar
17:19:19 <jix> eg: 1/2 1212/1231234 6/9
17:20:11 <Keymaker> but there is slash '/' that is --
17:20:26 <jix> yes but there is no other ascii representation for a fraction bar
17:20:48 <Keymaker> at least i'll ignore it if there is :)
17:21:07 <tokigun> jix: you mean slash and fraction bar look same but they are different letters?
17:22:36 <jix> in ascii there is just one / and no other character that is usefull for representing a fraction bar
17:23:22 <tokigun> how about unicode? (bad joke)
17:36:38 -!- sp3tt has joined.
17:41:54 <jix> hmm i should add a cronjob for downloading the wiki database
17:47:41 <Keymaker> hmmm, i got a new quine idea while writing another brainfuck program
18:04:42 -!- tokigun has quit ("quit").
18:22:58 <jix> is it normal that a wiki page is that slow?
18:30:34 <Keymaker> HELLO WORLD!.... . .-.. .-.. --- .-- --- .-. .-.. -.. -.-.-- .-.-.
18:31:32 <Keymaker> (there should be 7 spaces at one place, i hope this opera chat didn't trim them..)
18:47:30 -!- sp3tt_ has joined.
18:57:02 -!- J|x has joined.
18:57:36 -!- jix has quit (Nick collision from services.).
18:57:40 -!- J|x has changed nick to jix.
19:01:37 <Keymaker> http://www.bf-hacks.org/hacks/morse.b
19:01:46 <Keymaker> read from http://www.bf-hacks.org/programs.html how to use it
19:02:31 <Keymaker> it's surprisingly time-consuming to write that kind of program. the hardest part is to keep switching windows to look at wikipedia article etc..
19:02:41 <Keymaker> i hope wikipedia article has the right morse codes..
19:02:47 -!- Keymaker has left (?).
19:06:04 -!- sp3tt has quit (Read error: 110 (Connection timed out)).
19:07:12 <jix> http://esolangs.org/wiki/YABALL specs done
19:17:13 <jix> anyone wants to write a YABALL interpreter for me?
19:19:52 -!- tokigun has joined.
19:20:30 <jix> tokigun: http://esolangs.org/wiki/YABALL
19:20:39 <jix> @15,556 cool
19:26:40 <jix> tokigun: do you want to write a YABALL interpreter for me
19:27:12 <tokigun> hmm i've to read spec before writing it
19:27:33 <tokigun> after final exam (22 june) ;)
19:28:19 <jix> hmm i thought in the next.. say 2 hours ;)
19:28:37 <tokigun> http://zenith.sparcs.net/dev/99bottle.wr
19:29:49 <jix> i like the wave pattern at the end
19:30:26 <tokigun> i'm considering c(or whatever)-whirl polyglot
19:31:19 <jix> c-brainfuck-ruby
19:31:37 <jix> uh whirl-bf-ruby
19:31:47 <tokigun> ruby... i know it but cannot use very well.
19:31:59 <jix> whirl-bf-YABALL
19:32:19 <jix> if you give me bf code i can convert it to a bf-YABALL polyglot
19:32:48 <jix> and you can fill any spaces in the code with 1s and 0s
19:35:48 <jix> i'm done with homework!
19:36:04 <jix> i just have to put it together and print it
19:59:08 -!- sp3tt__ has joined.
19:59:45 <kipple> jix: the YABALL article doesn't list the , and . operators
20:00:22 -!- sp3tt__ has changed nick to sp3tt.
20:02:11 <kipple> the cat example uses them, and also a @ operator which isn't mentioned
20:02:32 <jix> homework+specwriting doesn't work
20:02:42 <jix> i should scan my homework for the @ operator ;)
20:07:22 -!- sp3tt_ has quit (Read error: 145 (Connection timed out)).
20:08:19 <jix> kipple: any comments about YABALL
20:08:44 <kipple> looks nice, but too close to BF for my taste
20:09:45 <jix> its hard not getting to close to any other language
20:12:17 <kipple> the concept of different modes is interesting. that's pretty original I think
20:15:23 -!- sp3tt__ has joined.
20:15:53 -!- sp3tt has quit (Nick collision from services.).
20:16:05 -!- sp3tt__ has changed nick to sp3tt.
20:16:08 <kipple> I don't understand the cat example: when the [ moves the IP down, why doesn't the ] cause it to go right back up again, causing an endless loop?
20:16:45 <jix> because it's in normal mode and moves right after moving down
20:17:44 <kipple> guess I'm thinking befunge
20:18:25 <jix> my first esolang was a vary simple fungoid
20:19:49 <kipple> are the cells signed or wrapping?
20:20:07 <jix> signed or unsigned makes no difference
20:20:11 <jix> but they are wrapping
20:21:21 <kipple> well, signed makes a difference if you try to output a negative number... at least it doesn't say anything about that
20:21:47 <jix> ok they are unsigned
20:22:12 <kipple> " Values less than 32768 are reserved for future extensions"
20:23:46 <jix> 0-255 stdout 256-511 stderr 512 close stdout 513 close stderr 514-32767 reserved 32768-?? custom
20:23:52 <kipple> or is it Values >513 and < 32768?
20:24:36 <kipple> 0-255 are also less than 32768, so you might want to be more precise ;)
20:24:53 <jix> feel free to clean that part up.. it's a wiki
20:25:21 <kipple> ok, if you aren't editing it now...
20:30:06 <cpressey> 1107 bytes already... bloody bloatware! {^Raven^}, i'm not sure whether to thank you or to curse you for bringing that contest to my attention
20:30:28 <jix> what contest?
20:30:45 <jix> i want to golf!
20:31:30 <cpressey> jix: http://www.geocities.com/dunric/advcomp.html
20:33:01 <jix> my english isn't that good
20:33:47 <jix> a german text adventure.. would be a lot easier for me (even tho the german grammar is horrible)
20:34:35 <kipple> well, engrish has its charms too :) Just think of Zero Wing
20:35:22 <jix> zero wing?
20:35:44 <kipple> "All your base are belong to us!"
20:36:07 <jix> someone set us up the bomb...
20:36:45 <jix> may i use other platforms than those on the page?
20:37:08 <cpressey> jix: you'd have to ask the person holding the contest
20:37:35 <jix> i'm thinking of a COSMAC ELF II
20:37:59 <cpressey> well, if there's a free emulator... there's always a chance
20:38:02 <jix> with a 1802 cpu
20:38:20 <jix> http://www.tinyelf.com/ is for mac os x
20:45:28 <kipple> that's an interesting contest. though the rules are a bit confusing...
20:48:24 <cpressey> i wonder how much abuse they'll be subject to.
20:49:12 <kipple> is linux an allowed platform?
20:49:59 <kipple> I guess they'll have to be lenient with the rules
20:54:50 -!- sp3tt has quit ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]").
21:08:03 <{^Raven^}> i am assuming that *any* programming language is acceptable
21:12:29 <{^Raven^}> cpressey: I'm going to max mine out at 2,899 bytes. I wish the organiser would decide on a definate limit with no leeway
21:17:48 <{^Raven^}> it says that the listed platforms include what is allowed but doesn't state the competition is limited to them only
21:23:55 <jix> in what languages are your adventures?
21:25:17 <tokigun> i've finished 99 bottles of beer in whirl: http://page.tokigun.net/obfuscation/file/99bottle.wr
21:25:52 <jix> tokigun: yay
21:26:09 <{^Raven^}> for this I am using BBC BASIC, was tempted to use 6502 but BASIC is more efficient
21:26:54 <jix> maybe i'm going to use ti-89/92(+)/v200 basic
21:27:04 <jix> or chipmunk basic
21:37:53 -!- Keymaker has joined.
21:39:07 <tokigun> i'm writing a letter to author...
21:53:38 <jix> cpressey: what programming language are you using?
21:57:59 -!- calamari has joined.
22:00:18 <tokigun> Keymaker: http://sparcs.kaist.ac.kr/~tokigun/dev/whirl99bob.txt
22:00:20 <jix> moin calamari
22:00:31 <tokigun> my Whirl assembler script ;)
22:00:47 <tokigun> it is just a script.. but it helps me a lot
22:02:38 <Keymaker> so, that's the code you feed for your whirl assembler and it generates the 01 stuff?
22:03:02 <Keymaker> ok. btw, is the assembler available?
22:03:38 <tokigun> main function is whirlasm, whirlasmtable.
22:04:13 <tokigun> first it assembles the given code, using whirlasm()
22:05:03 <tokigun> then it generates table that program uses, using whirltable()
22:05:29 <tokigun> table is translated to whirl psuedo-code, using whirlasmtable().
22:05:43 <tokigun> toki... in Korean it means "rabbit". ;)
22:06:18 <tokigun> program psuedo-code and table psuedo-code is combined,
22:06:34 <tokigun> and assembled again using whirlasm.
22:06:39 <calamari> be vewwy vewwy quiet.. I'm hunting wabbits!
22:06:46 <Keymaker> so, the assembler could be used for any other program as well, when changing stuff inside p = r""" .... """ to some other..?
22:07:29 <tokigun> Keymaker: yes, but there are many restrictions.
22:08:20 <tokigun> currently my assembler cannot preserve ring state... i.e. selected ring, selected instruction of each ring, direction of each ring.
22:09:13 <jix> cpressey: for what cpu/computer?
22:10:01 <tokigun> lament: "-gun" is suffix in Korean/Japanese...
22:10:20 <tokigun> it has some nuance... eh... i don't know how to explain it. :S
22:11:00 <tokigun> Keymaker: so i have to arrange ring state manually... /0, /1, !blah/blah command is used for this reason.
22:11:38 <cpressey> maybe some 386 instructions if i get lazy :)
22:11:49 <calamari> cool, that script was written tomorrow :)
22:13:04 <tokigun> it is 6:13 am Monday here.
22:13:41 <Keymaker> i don't think he has even gone sleepin'
22:14:00 <calamari> Keymaker: gave him the benefit of the doubt :)
22:14:18 <tokigun> i have exam in 9:00 am, 11:00 am... so i didn't get to sleep ;)
22:15:46 <calamari> I stayed up way too late last night working on that java gui.. barely made it to church this morning
22:23:46 -!- jix has quit ("Banned from network").
22:58:58 <Keymaker> yes! i'm at 1011 instructions now..
22:58:59 <Keymaker> http://bf-hacks.org/hacks/quine.b
22:59:24 <Keymaker> i hope to break the 1000 limit soon (although not tonight)
23:10:10 <Keymaker> heh, my first weights 7000+ instructions
23:10:36 <puzzlet> My quine written in Aheui - http://puzzlet.org/puzzlet/%EC%95%84%ED%9D%AC~%EC%BD%B0%EC%9D%B8
23:10:46 <Keymaker> i've gotten ideas randomly, like for example doing something and then "hey, i could try that trick" and so on :)
23:11:24 <puzzlet> and sounds crazy in Korean
23:12:19 <puzzlet> by the way how you get ideas while doing some other things?
23:12:31 <puzzlet> you must be multi-threaded
23:13:06 <Keymaker> that just happens. i'm doing something non-brainfuck related and then i get some idea i could try :)
23:13:26 <Keymaker> can be that the language has modified my brains..
23:16:16 <puzzlet> i sometimes feel funge iterator points wander around in my brain
23:16:35 <puzzlet> or aren't they instruction pointers?
23:18:22 <lament> instruction pointer seems correct
23:22:20 -!- heatsink has joined.
23:22:41 <heatsink> cool mumbai is spelled correctly
23:24:40 <Keymaker> i don't get the line in topic..
23:49:56 <Keymaker> oh no.. i have dentist time today, in ~10 hours
23:50:20 -!- Keymaker has left (?).
00:27:15 -!- calamari has quit ("Leaving").
01:04:24 -!- graue has joined.
01:04:49 <graue> anyone written a quine in Qdeql yet?
01:12:18 <graue> kipple, what have you been up to?
01:12:59 <kipple> currently I'm pondering about the next Kipple version
01:14:01 <graue> that should be done by now
01:14:21 <graue> oh, I was just jesting
01:14:31 <graue> actually I like kipple so much fundamentally that I've been thinking about the possibility of making a non-esoteric language resembling it
01:14:47 <graue> yeah, it's cool having stacks built in like that
01:18:10 -!- calamari has joined.
01:19:43 <calamari> that reminds me, I need to set up a cron job for that download :)
01:20:41 <graue> you need to write a quine in Qdeql
01:21:06 <graue> and it needs to be more than 0 bytes long
01:21:28 <calamari> I wonder if there can be a tc language for which there is no quine
01:21:58 <kipple> ah, that reminds me to forbid null programs in the Kipple spec :)
01:22:17 <kipple> calamari: that is an interesting question!
01:29:17 <calamari> graue: is & the only way to enqueue a byte in qdeql?
01:31:16 <calamari> wait though.. when starting off there is nothing in the queue, so how do you get started besides input?
01:32:22 <calamari> unless you start off with a single item in the queue.. then you could do -\
01:48:44 <graue> \ reads 0 if the queue is empty
01:48:50 <graue> same as anything that reads from the queue
01:49:12 <graue> (that also means you can get a 0 byte by doing = to an empty queue, or get a 255 byte by doing - to an empty queue)
01:49:39 <graue> \ and & are the only ways to enqueue something when starting from a nonempty queue
01:49:57 <graue> of course there can be a TC language with no quine
01:50:01 <graue> Turing machines can't do output
01:50:09 <kipple> there isn't a qdeql article in the wiki. do you have a link to the spec?
01:50:11 <graue> Smallfuck is a TC language with no quine
01:50:14 <graue> www.oceanbase.org/graue/qdeql
01:50:47 * kipple bookmarks it this time
01:51:27 <calamari> if the queue is empy, how can you dequeue.. isn't that an error?
01:52:00 <calamari> oh, I see it in the spec now :)
02:10:03 -!- kipple_ has joined.
02:10:03 -!- kipple has quit (Read error: 131 (Connection reset by peer)).
02:15:18 <heatsink> calamari: turing proved that any TC language has a quine
02:17:16 -!- kipple_ has quit ("See you later").
02:21:03 <graue> heatsink, um, that's not true
02:21:16 <graue> TC languages are not obligated to provide any form of output
02:21:34 <graue> and you can't just say "any TC language with output" because what if it can't output all of the characters used in its source?
02:22:00 <graue> what if it throws a "This programming language is (C) 1999 ME! All rights reserved" message into the beginning of the output and using that is invalid?
02:22:14 <graue> you would need a totally different definition than "TC language" in order to provide anything meaningful like that
02:35:46 <calamari> graue: if it throws that into the beginning of output it's okay, because the quine when run will automatically output that too
02:35:59 <heatsink> I'm pretty sure that the only output of a turing computer is what that computer writes on the tape (which is also its input)
02:36:37 <heatsink> So any program that has the same contents of the tape when it halts is a turing machine quine.
02:36:57 <heatsink> That is different from having a separate I/O channel, I guess
02:37:12 <calamari> graue: so I think that's pretty good evidence against quines :)
02:37:25 <heatsink> http://www.cs.cornell.edu/Courses/cs682/2004sp/Lectures/l34-recthm.pdf first page talks about the relation of quines to the fixpoint operator
02:54:07 <cpressey> since a UTM has to have a description of a TM on its tape when it starts... seems dreadfully easy to make a quine ;)
03:03:47 -!- calamari has quit ("Leaving").
03:20:01 <graue> heatsink, for the memory to be the code when the program finishes is not possible in many Turing-complete languages
03:20:13 <graue> the memory may not be a sequence of bytes (like code usually is)
04:41:53 -!- GregorR has quit (Remote closed the connection).
05:05:28 -!- heatsink has quit ("Leaving").
06:06:09 -!- graue has left (?).
06:24:21 -!- tokigun has quit (Read error: 110 (Connection timed out)).
06:40:18 -!- tokigun has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
12:20:24 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
13:23:32 -!- jix has joined.
14:02:55 -!- tokigun has joined.
14:08:40 <jix> moin tokigun
15:16:48 -!- kipple has joined.
17:20:14 <jix> i'm writing a YABALL interpreter atm
17:24:12 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
18:08:33 -!- Keymaker has joined.
18:15:42 <jix> YABALL interpreter done
18:20:42 -!- azurespace has joined.
18:20:52 -!- azurespace has left (?).
18:37:01 -!- tokigun has joined.
19:14:09 <Keymaker> yeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaah!!!!
19:14:18 <Keymaker> i got the quine under 1000 instructions
19:14:19 <Keymaker> http://bf-hacks.org/hacks/quine.b
19:15:01 <Keymaker> so, neatly 78 instructions less :)
19:16:10 <Keymaker> my goal was to get a quine under 1000 instructions, and i finally succeeded. now i don't write bf quines for a while, i'll do other kind of programs :)
19:18:31 -!- Keymaker has left (?).
19:36:28 <jix> ok YABALL interpreter is linked on the wiki
19:44:10 -!- GregorR has joined.
19:44:42 <GregorR> I need a good dictionary of words related to esoteric programming to use for my scrabble clone :P
19:53:19 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
19:54:06 -!- CXI has joined.
20:14:40 <kipple> an entire dictionary? good luck... (the wiki is a good starting place)
20:15:05 <kipple> are language names acceptable?
20:26:34 -!- J|x has joined.
20:27:48 <{^Raven^}> kipple: technichally no because they are proper nouns but you could make an exception
20:28:24 <kipple> yes, I know the normal rules
20:29:34 <kipple> but an esoteric scrabble that does not allow words like brainfuck or funge? I'd say allow it
20:38:39 -!- jix has quit (Read error: 110 (Connection timed out)).
20:51:19 -!- graue has joined.
21:06:15 -!- J|x has changed nick to jix.
21:09:57 <GregorR> My fault. The word "dictionary" is inaccurate here.
21:10:01 <GregorR> I really just mean "word list"
21:10:13 <GregorR> Hell, doesn't even have to be words.
21:11:45 <GregorR> I'm just trying to think of some bizarre dictionaries for my bizarre scrabble clone. Currently the only one I have is the libc symbol list :)
21:12:30 <graue> I tried to play as "Himself" in one of your games, but I couldn't come up with anything that would fit
21:15:04 <graue> so just copy all the language names and make a wordlist out of those, and related terms
21:15:18 <graue> funge, quine, stack, queue, cell, turing, etc
21:15:55 <kipple> how about TMMLPTEALPAITAFNFAL with triple word score?
21:16:09 <graue> it's longer than 15 letters, so it can't be done :(
21:17:15 -!- csaba has joined.
21:17:34 <GregorR> The problem is, my libc symbol dictionary has 2,800 something words, and it's really, REALLY tough.
21:17:40 <csaba> Hi, I've finished writing a visual Turing machine designer. If you're interested check it out: an be done?
21:17:40 <csaba> [21:40] <elite01> hmm maybe firefox will do
21:17:44 <csaba> [21:40] <elite01> hmm maybe firefox will do
21:18:03 <GregorR> Didn't have the copy buffer you thought you did? :)
21:18:04 <csaba> http://sourceforge.net/projects/visualturing/
21:18:05 <csaba> I'm interested in what you think
21:18:30 <graue> GregorR, libc has a lot of repetition
21:18:53 <graue> e.g. the fact that you can make all of vsprintf, vprintf, vsnprintf, snprintf, sprintf, printf, and fprintf, doesn't help much
21:19:06 <GregorR> Even so, the list of languages and common elements in esoteric languages would be well under 1000, probably under 500.
21:19:19 <graue> "quine," "cell," and "turing" are easy
21:19:37 <graue> don't make me write this wordlist for you
21:19:53 <GregorR> I'll look in to it when not at work ;)
21:20:15 <csaba> Turing machine is considered esoteric language?
21:20:35 <graue> no, but we like to prove that esoteric languages are equivalent to Turing machines
21:20:43 <graue> because that means they can compute lots of stuff
21:21:14 <csaba> so basically it's propaganda to fool people into using esoteric languages? :)
21:22:05 <kipple> uh, no. It's for proving the usefulness of the language
21:22:26 <csaba> anyone used brainfuck?
21:22:58 <kipple> anyone not used brainfuck here?
21:23:11 <csaba> I've downloaded an interpreter and now I've showing it to everyone to see what kind of people exist
21:23:30 <lament> turing machines are very much like an esoteric language
21:23:39 <lament> they're about as hard to write programs for as brainfuck.
21:23:48 <csaba> check out my program:
21:23:48 <csaba> [22:20] <graue> "quine," "cell," and "turing" are easy
21:23:48 <csaba> [22:20] <graue> don't make me write this wordlist for you
21:23:57 <csaba> http://sourceforge.net/projects/visualturing/
21:24:14 <csaba> I designed a machine which calculates factoriel in less than 5 minutes
21:24:21 -!- malaprop_ has joined.
21:29:43 <graue> wait, a factorial of what?
21:30:10 <csaba> well, 5! is |||||| and you'd get 125+1 lines in the end ;)
21:30:56 <csaba> it's cute to look at the machine head going left and right, doing stuff etc...
21:31:22 -!- malaprop has quit (Read error: 110 (Connection timed out)).
21:31:53 <lament> csaba: the factorial of 5 is 120
21:32:14 <csaba> I'm really tired, I haven't slept normally for 3 days
21:35:28 <graue> it is cool that you made this
21:36:12 <csaba> does it run at yourplace? I'm worried that because it's written in Java people might have problems in starting it
21:49:02 <lindi-> csaba: just create a native binary and people can run it just like any other program
21:50:11 <csaba> I've placed a start.exe which runs the "java -jar Turing.jar" command... it should work if JVM is installed...
21:51:00 <lindi-> csaba: yeah, but you can make it turing.exe with GCC
21:51:57 <csaba> well ok, I'll make an exe...
21:53:15 <GregorR> Doesn't it use swing? Is there a swing for GCJ?
21:54:46 <lindi-> GregorR: and it's improving at a steady pace
21:57:05 <lindi-> although it seems to have some issues...
22:07:50 <jix> csaba: always use the name of the containing folder for a zip/tgz file.. it's a lot easier to find the folder that way..
22:09:15 <csaba> jix: rename the zip file to Turing.zip ?
22:09:28 <jix> i can't guess the name of the folder
22:10:06 <csaba> ok I'll keep that in mind
22:10:11 <jix> but i like sticking the archive and folder together in a sorted list..
22:11:23 <csaba> well I was just happy I finished the damn thing, I haven't slept normally for 3 days because of it... didn't think about how to name the zip file ;)
22:13:14 <csaba> ok, I'll compile an exe file tomorrow... might as well add a readme.txt... now I'm going to bed...
22:13:32 -!- csaba has quit (" HydraIRC -> http://www.hydrairc.com <- IRC for those that like to be different").
22:31:25 -!- jix has quit ("Banned from network").
00:30:10 -!- heatsink has joined.
00:44:12 -!- tokigun has changed nick to tokigun^away.
00:44:12 -!- kipple has quit (Read error: 104 (Connection reset by peer)).
00:49:22 * {^Raven^} has spent the last 4 hours fighting off DoS attacks
00:53:51 <{^Raven^}> i have blocked the attacks, but am leaving the server off overnight
00:54:51 <{^Raven^}> one was from the US and one from Bucarest
00:55:28 <{^Raven^}> two seperate incidents in 8 hours and completely unrelated to boot
00:56:25 <{^Raven^}> one attacker has given up and the other one should soon
00:57:08 <{^Raven^}> but it's ruining things for everybody
00:57:37 <heatsink> Are they using much of your bandwidth?
00:58:14 <{^Raven^}> just enough for a really slow ssh to the server
00:59:18 <{^Raven^}> I've had to take 8 domains and 20 sites offline and severely knacker another
00:59:45 <heatsink> Is there anyone upstream who can filter packets?
01:01:08 * heatsink looks up "knacker" in the dictionary
01:01:21 -!- kipple has joined.
01:01:22 <{^Raven^}> There's no need to do that as I can block the attacking hosts
01:03:30 <heatsink> 1 [British]: a buyer of worn-out domestic animals or their carcasses for use especially as animal food or fertilizer
01:03:30 <heatsink> 2 [British]: a buyer of old structures for their constituent materials
01:03:30 <heatsink> I didn't know there was an authority to report DOSes to.
01:03:50 <{^Raven^}> knacker (usu) = someone who buys up old horses for slaughter
01:04:21 <{^Raven^}> there isn't, you just report them to their ISP
01:05:34 <{^Raven^}> if it was a distributed denial of service attack i might need to get my ISP to filter packets aswell but no need this time
01:21:31 -!- malaprop_ has quit (Read error: 145 (Connection timed out)).
01:32:31 <{^Raven^}> sweet... first attacker has been told off and is now offline and their ISP has aplogised profusely :D
01:33:49 <heatsink> awesome! Powa brutha! (or sistah!)
01:35:14 <heatsink> Hmm... I don't usually need to check...
01:36:46 * {^Raven^} has booby traps on some of his sites which automatically report certain types of abuse
01:37:33 <heatsink> Have you tested the boobytraps?
01:38:07 <{^Raven^}> I can't test them, I might end up getting my own net access blocked
01:38:48 <{^Raven^}> but the occasional email from ISP abuse departments tells me that they work fine
01:40:25 <{^Raven^}> there's no way that legit people can accidentally trip them, they just get the bad guys
01:41:29 <{^Raven^}> what really sucks is that I know that a lot of ISPs and other service providers do nothing about abuse originating from their networks
02:03:02 -!- kipple has left (?).
02:07:54 -!- malaprop has joined.
02:08:49 -!- kipple has joined.
03:11:46 <GregorR> http://grables.sourceforge.net/libc.php?view=0 < look at this awesome game.
03:12:06 <GregorR> I cannot believe that fate handed me siglongjmp!!! How friggin' lucky am I?!
03:17:37 <kipple> cool scrabble variant!
03:18:35 <GregorR> Because the dictionary is so small, I had to give 30 tiles instead of 7 XD
03:22:37 <kipple> I'm not very familiar with libc, but an esoteric themed version would be great! (if you can find enough words)
03:22:55 <GregorR> I was discussing that here before.
03:23:07 <GregorR> libc has 2,800+, and it's incredibly difficult.
03:28:19 <GregorR> How about I just download the logs from #esoteric, and any word in there goes XD
03:33:29 <kipple> anyway. gotta go to bed. I'm leaving town for a couple of weeks tomorrow, so see you all later
03:39:54 -!- kipple has left (?).
04:34:42 -!- tokigun^away has changed nick to tokigun.
05:07:25 -!- heatsink has quit ("Leaving").
06:34:08 -!- calamari has joined.
06:37:41 -!- malaprop_ has joined.
06:38:23 -!- malaprop has quit (Read error: 104 (Connection reset by peer)).
06:50:32 -!- wooby has joined.
06:55:20 -!- tokigun has quit (Read error: 104 (Connection reset by peer)).
06:55:23 -!- tokigun_ has joined.
06:55:25 -!- tokigun_ has changed nick to tokigun.
06:58:43 -!- graue has quit (Read error: 145 (Connection timed out)).
07:08:56 -!- graue has joined.
07:33:32 -!- graue_ has joined.
07:33:56 -!- graue has quit (Read error: 145 (Connection timed out)).
07:34:01 -!- graue_ has changed nick to graue.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:34:38 <calamari> whew, finally got the gui functioning, now just need to implement the model
08:51:08 -!- kipple has joined.
09:12:00 -!- sp3tt has joined.
09:36:38 -!- kipple has left (?).
10:31:55 <calamari> Step seems to be fully working :)
10:32:21 <calamari> only two buttons left (Pass, Run) and I'm done
10:32:28 <graue> what are you doing?
10:32:47 <calamari> graue: writing a bit/bool debugger as a Java gui app
10:57:05 -!- calamari has quit (Read error: 110 (Connection timed out)).
11:00:02 <graue> oh wow, I just found a Beatnik interpreter for DOS that I wrote in 2002
11:00:22 <graue> who knew such things existed?
11:50:06 -!- jix has joined.
11:50:38 <jix> moin graue
11:53:59 <jix> i'm going to mirror the mysql dumps from the wiki
12:02:09 <graue> have you written a XUML spec yet?
12:03:14 <jix> no and there is an error in my interpreter or converter
12:03:29 <jix> but i wrote YABALL spec and interpreter
12:05:54 <graue> I am interested in XUML because of its name beginning with the letter X
12:08:07 <jix> that was the reason for inventing XUML
12:27:13 -!- J|x has joined.
12:27:49 -!- jix has quit (Nick collision from services.).
12:27:51 -!- J|x has changed nick to jix.
12:46:07 <jix> weekly crontab for downoading the mysql dumps to http://esolangs.org.bu.jix.qz-b.de/wiki_db/
15:13:28 <jix> is someone here (excepting me) able to find all (real) solutions for x for all real a and b for (2x + a + b)^3 = (x + a)^3 + (x + b)^3
15:14:33 <graue> what is character 0x1e?
15:15:08 <jix> uhm trash from copying it from a (german) website
15:15:13 <jix> http://www.mathematik-olympiaden.de/Aufgaben/42/3/42133a/42133a.html
15:15:23 <graue> no, i have no idea how to find real solutions for that
15:15:40 <lindi-> jix: http://paste.debian.net/833
15:16:01 <jix> nah without a cas
15:16:35 <graue> computer aided solvatron?
15:16:48 <jix> computer-algebra-system
15:17:11 <jix> i did it with my brain
15:17:20 <graue> my brain is a computer chip
16:34:15 -!- Keymaker has joined.
16:43:13 <tokigun> who is a master of esolang webring?
16:43:47 <Keymaker> iirc he was taken to mental hospital
16:43:48 <tokigun> i forgot to add the ring fragment to my page
17:04:04 <tokigun> http://fun.sdinet.de/pics/english/rock_rule.jpg
17:14:10 <Keymaker> well.. must go. i'll have blade marathon today. all three blade movies. gotta get snacks and lemonade from store.
17:14:19 -!- Keymaker has left (?).
17:25:59 -!- J|x has joined.
17:26:33 -!- cpressey has quit (Remote closed the connection).
17:26:45 -!- cpressey has joined.
17:27:21 -!- jix has quit (Nick collision from services.).
17:27:23 -!- J|x has changed nick to jix.
17:32:45 <jix> i'm trying to write a 2k text-adventure in ruby
17:36:42 <tokigun> can you show me the progress?
17:37:38 <jix> i have no story (yet)
17:37:43 <jix> but i'm writing story less code atm
17:37:55 <jix> (fight engine,io handling...)
17:38:29 <jix> 421 bytes.. hmm i could compress the code usign my own algorithm or using zlib(because it's in the ruby stdlib)
17:38:40 <jix> do you have a nice idea for a story?
17:42:00 -!- sp3tt has quit ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]").
17:48:16 <jix> no one has an idea
17:55:51 <graue> how about a homeless kid finds a discarded laptop on the streets of a city slum, connects to an unsecured wireless network, and begins learning about esoteric programming languages?
18:28:37 -!- J|x has joined.
18:29:10 -!- jix has quit (Nick collision from services.).
18:29:11 -!- J|x has changed nick to jix.
18:29:27 <jix> P"You are a small mouse, kept in a too small cage. Your mission is to escape from the cage."
18:30:43 <wooby> graue: that's an awesome idea
18:30:54 <wooby> story of my life :)
18:44:07 <wooby> well, i wasn't homeless... but my first computers were always discarded heh
18:44:07 -!- J|x has joined.
18:44:15 <wooby> and that wasn't really wireless heh
18:44:23 <wooby> more like... unsecured bbs
18:44:40 -!- jix has quit (Nick collision from services.).
18:44:45 -!- J|x has changed nick to jix.
18:45:15 <wooby> there was that one "homeless hacker" guy who did some cheesy exploit on the new york times
19:11:34 -!- jix has quit ("This computer has gone to sleep").
19:51:10 -!- wooby has quit.
19:56:40 -!- wooby has joined.
19:57:44 -!- tokigun has quit (Read error: 104 (Connection reset by peer)).
19:57:55 -!- tokigun_ has joined.
19:57:57 -!- tokigun_ has changed nick to tokigun.
20:18:08 -!- jix has joined.
20:47:40 <jix> my text-adventure game engine is done about 500byte
20:51:36 <jix> and imo it has the right code-size / feature balance
20:52:45 <cpressey> mine's about 2000 bytes at present
20:52:58 <jix> just engine or game
20:53:21 <jix> are you going to use an external datafile?
20:53:48 <jix> i'm trying to do it without one
21:00:02 -!- graue has quit (Remote closed the connection).
21:00:10 -!- graue has joined.
21:02:01 <jix> 700 bytes without text and code compression
21:02:08 <jix> 1 room implemented
21:03:56 <lindi-> jix: is that for x86 and DOS?
21:04:06 <jix> no its written in ruby
21:05:27 <jix> nah that story doesn't work.. i need a new story
22:26:21 -!- jix has quit ("Banned from network").
23:18:38 -!- wooby has quit.
23:28:33 * {^Raven^} likes the idea of having competition this year
23:29:13 -!- malaprop_ has quit (Read error: 104 (Connection reset by peer)).
00:08:40 -!- malaprop has joined.
00:43:46 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
01:14:51 <graue> new (i.e., old) Beatnik interpreter if anyone cares: http://www.oceanbase.org/graue/stupid/BEATNIK.c
01:16:21 <graue> pity Beatnik has only one stack and is therefore computationally useless
02:17:23 -!- graue has left (?).
02:20:21 -!- tokigun has joined.
04:38:17 -!- tokigun has quit (Remote closed the connection).
04:48:39 -!- GregorR has quit (Remote closed the connection).
05:42:51 -!- GregorR has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:37:33 -!- tokigun has joined.
10:22:51 -!- CXI has quit (Connection timed out).
12:00:46 -!- lament has quit (Remote closed the connection).
12:09:47 -!- lament has joined.
13:34:57 -!- graue has joined.
13:40:41 -!- jix has joined.
13:55:50 <jix> is there a wiki page with a list of wiki db mirrors?
13:55:50 -!- lindi- has quit (Read error: 104 (Connection reset by peer)).
13:56:15 <graue> i think one exists a few minutes in the future, by which time you will have created it
13:56:19 <graue> but not at this time, no
13:56:36 <jix> are there any other public mirrors
13:57:10 <graue> there are mirrors of the sql file, but i don't think there are any mirroring the actual browsable content
14:01:09 -!- lindi- has joined.
14:01:21 <jix> graue: where are they?
14:05:03 <graue> one of them is at http://rune.krokodille.com/lang/wiki-backup/
14:06:09 <graue> I've seen others mentioned here, but I can't find them at the moment
14:23:16 -!- CXI has joined.
14:47:15 <jix> i just noticed it's better to first have a story for a text adventure and than start writing it
14:47:41 <jix> oh and not just the beginning of the story but the whole game story
14:48:40 <jix> cpressey: how far are you with your engine?
15:04:43 -!- jix has quit ("Banned from network").
15:04:54 -!- jix has joined.
15:32:19 -!- graue_ has joined.
15:32:19 -!- graue has quit (Read error: 104 (Connection reset by peer)).
15:33:06 -!- graue_ has changed nick to graue.
16:02:25 -!- tokigun has quit (Read error: 104 (Connection reset by peer)).
16:02:28 -!- tokigun_ has joined.
16:02:31 -!- tokigun_ has changed nick to tokigun.
16:13:23 -!- tokigun has quit (Read error: 104 (Connection reset by peer)).
16:13:26 -!- tokigun_ has joined.
16:13:28 -!- tokigun_ has changed nick to tokigun.
16:28:43 -!- tokigun has quit (Read error: 104 (Connection reset by peer)).
17:13:31 -!- tokigun has joined.
17:17:07 * GregorR watches the big red rubber tokigun bouncing ;)
17:18:10 <tokigun> i don't know why i was disconnected
17:43:01 -!- graue has left (?).
17:45:12 -!- graue has joined.
17:48:03 -!- tokigun has quit (Read error: 104 (Connection reset by peer)).
17:48:03 -!- tokigun_ has joined.
17:48:04 -!- tokigun_ has changed nick to tokigun.
17:48:11 <jix> is someone else writing an entry for the 2k text-adventure competition?
17:50:15 <jix> i want application + string file (i'm going to supply a german and an english string file) to be less than 1.5k
17:50:20 <jix> but that's hard
17:51:41 <jix> what's the correct english word for a cage wall (the grid thing)?
18:14:35 <tokigun> Kang Seonghoon strikes again, this time with the classic "99 Bottles of Beer" implemented in a shocking 15,556 instructions! Beyond cool! The code is also available here.</quote>
18:15:09 <tokigun> it's time to buy some foods...
18:18:34 -!- graue has quit (Remote closed the connection).
18:19:10 -!- graue has joined.
18:27:44 -!- J|x has joined.
18:30:28 -!- jix has quit (Nick collision from services.).
18:30:29 -!- J|x has changed nick to jix.
19:07:45 -!- J|x has joined.
19:17:34 -!- jix has quit (Connection timed out).
19:34:49 -!- J|x has changed nick to jix.
19:42:51 -!- graue has quit (Read error: 110 (Connection timed out)).
19:52:22 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
19:56:21 <jix> i have 1000bytes game (50% clean code i think i will shrink it down to 700byte) and ~600 bytes lang-file i think i have 30% of the game done
20:05:52 -!- pgimeno has quit (Read error: 54 (Connection reset by peer)).
20:37:39 -!- BlurredWe has joined.
20:37:49 <BlurredWe> heh, sweet...didn't know about this channel
20:38:48 <BlurredWe> so here's what I want to do: a shell script that runs under windows .bat interpreter and also under the sh interpreter. All it needs to do is 'echo "1 2 3" > $2'
20:42:37 -!- tokigun has joined.
20:43:17 <{^Raven^}> jix: I am working on a game, for the competition
20:43:34 <tokigun> {^Raven^}: 2k text-adventure competition?
20:44:49 <tokigun> finally author of whirl replied me that he updated page.
20:44:56 <tokigun> http://bigzaphod.org/whirl/
21:06:34 <jix> {^Raven^}: how far are you with your text-adventure?
21:17:28 <{^Raven^}> jix: at the end of the initial planning stage
21:30:51 -!- graue has joined.
21:37:52 <jix> {^Raven^}: at 17pm i was at the end of the planning stage
21:37:59 <jix> now i'm at the end of the coding stage
21:44:29 <{^Raven^}> jix: I'm looking forward to see what you come up with
21:49:09 <cpressey> jix: my engine is "done", if "done" means "it works and runs what i have for my game so far." i still have a significant list of improvements that i still want to make to it, though
21:56:04 -!- graue has quit (Remote closed the connection).
21:57:50 -!- graue has joined.
21:59:20 -!- graue has quit (Remote closed the connection).
22:01:58 -!- graue has joined.
22:09:32 -!- calamari has joined.
22:14:59 <jix> 1219 mouse.rb
22:14:59 <jix> 604 english.lng
22:14:59 <jix> 1823 total
22:18:17 -!- graue has quit (Remote closed the connection).
22:18:28 <tokigun> jix: there is two langpacks?
22:18:40 <jix> at the moment not
22:18:46 <jix> but i'm going to add a german one
22:19:07 -!- graue has joined.
22:23:12 <jix> ok if i compress the sourcecode using zlib (self extracting sourcecode.. it's like a self extracting binary because in ruby there are no binaries)
22:23:27 <jix> 1256 total
22:26:15 <jix> with a data file it could be up to 10.5kb
22:26:22 <jix> but i only need 1.2 kb
22:31:32 -!- BlurredWe has quit ("Leaving").
22:44:34 <jix> 2 langpacks + game 1924 total
22:45:06 <jix> with comments and no compression (game and packs) 6757 total
22:48:26 <jix> does someone want to test my adventure? (online)
22:48:55 <jix> requirement is telnet or netcat
22:50:03 <jix> for the most commands there are shortcuts
22:51:44 <jix> oh btw with x you can examine things
22:55:46 <jix> calamari: just one person a time
22:56:15 <jix> because i'm starting the "server" manually using netcat and tail -f ^^
22:57:40 -!- Keymaker has joined.
22:58:15 <jix> moin Keymaker
22:58:34 <jix> there is no help
22:58:39 <jix> i can give you a command list calamari
22:59:01 <calamari> that's okay... I'm just experimenting
22:59:46 <jix> calamari: hm?
23:00:03 -!- graue_ has joined.
23:00:20 -!- graue_ has quit (Remote closed the connection).
23:00:39 <calamari> jix: creative game idea btw, I like it :)
23:01:21 <calamari> it seems to pause after certain things, unless I push enter again
23:01:45 <jix> no it isn't a bug
23:02:00 <calamari> any room for a "Press Return" message, then? :)
23:02:12 <jix> it's my laziness
23:02:21 <jix> hmm uh.. not really
23:02:40 <jix> uhm yes there is room i just found it
23:03:32 <calamari> do you mean there is something blocking the other end of the pipe?
23:03:45 <jix> no there is just something
23:03:54 <jix> use the x command
23:04:01 <jix> or examine
23:04:10 <jix> eg x the_thing_you_want_to_examine
23:04:54 <jix> uh i can't parse complex sentences like that in 0.6 kb
23:05:08 <calamari> what's complicated about "x pipe" :)
23:05:15 <jix> examine the pipe
23:05:18 <jix> x other end of the pipe
23:05:37 <jix> and there is nothing interesting about the pipe so i didn't added a message
23:05:44 <jix> try to examine other things
23:06:33 <jix> take not get
23:07:40 <jix> do you want a hint?
23:07:55 <calamari> nope.. unless it's because of a command I don't know about :)
23:08:34 <jix> x may work with directions too
23:10:22 <jix> no it was a question
23:10:32 <jix> there is no exit command and telnet sends ctrl-c as characters
23:10:40 <jix> and not as signal
23:10:55 <jix> i have to exit the program
23:11:07 <jix> do you now want to hear the solution?
23:11:34 <jix> do you want to try again?
23:11:54 <calamari> nope. I need to get off actually, company came to the door :)
23:12:09 <jix> do you want to try it with the german langpack ^^^
23:12:12 <calamari> cool game.. could use a bit of polish, but really neat idea
23:12:18 -!- calamari has quit ("bbl").
23:12:35 <jix> i'm going to bed now good nite
23:13:05 -!- jix has quit ("Banned from network").
23:30:44 <tokigun> exam has finished but some reports are remained... hmm.
23:46:29 -!- calamari has joined.
23:58:20 -!- graue has quit (Remote closed the connection).
23:58:52 -!- graue has joined.
23:59:32 -!- Keymaker has quit ("I've seen this dj vu before..").
00:01:33 <calamari> graue: can I use rsync to grab the dump, or do I need to use wget?
00:12:57 <graue> you need to use wget
00:21:32 <calamari> well, it's set up.. so now you have 3 mirrors :)
00:42:17 <calamari> dunno if all that cron stuff is needed, but I didn't know it.. so I'll use it if I ever need to set it up again
00:45:18 <calamari> one thing about it though.. if the wiki goes down, what point is there to have that list of mirrors on the wiki page.. hehe
00:45:43 <calamari> so http://kidsquid.com/esowiki ;)
01:05:12 -!- graue has quit (Read error: 131 (Connection reset by peer)).
01:05:42 -!- graue has joined.
01:07:21 -!- graue has quit (Remote closed the connection).
01:08:03 -!- graue has joined.
01:14:34 -!- graue has quit (Remote closed the connection).
01:15:06 -!- graue has joined.
01:28:51 -!- graue has quit (Remote closed the connection).
01:34:25 -!- graue has joined.
01:58:36 -!- calamari has quit ("Leaving").
03:34:59 -!- calamari has joined.
03:49:13 -!- graue has quit (Read error: 60 (Operation timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:28:34 -!- calamari has quit (Read error: 60 (Operation timed out)).
10:15:51 -!- pgimeno has joined.
10:50:18 -!- andreou has joined.
11:12:29 -!- andreou has quit ("i be novel.").
12:57:41 -!- jix has joined.
13:51:01 -!- jix has quit (Read error: 104 (Connection reset by peer)).
13:51:44 -!- jix has joined.
17:23:24 -!- HisteriX has joined.
17:23:41 -!- HisteriX has left (?).
17:37:04 -!- graue has joined.
17:55:05 -!- pgimeno has quit ("rebooting").
17:57:56 -!- pgimeno has joined.
18:01:29 -!- Dedo has joined.
18:03:53 -!- Dedo has quit.
18:09:43 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
18:11:03 -!- CXI has joined.
18:26:39 -!- pgimeno has quit ("This is the default quit message").
19:56:26 -!- Keymaker has joined.
20:11:10 -!- calamari has joined.
20:58:53 -!- lament has changed nick to desafinado.
20:58:53 -!- Keymaker has quit (Read error: 54 (Connection reset by peer)).
22:42:29 -!- jix has quit ("Banned from network").
00:00:26 -!- calamari_ has joined.
00:12:54 -!- harkeyahh has joined.
00:18:49 <harkeyahh> U r always on my case abotu something ChanServ
00:19:10 <harkeyahh> if you wanna serve me get me something to drink and then get down on your knees...
00:19:33 -!- calamari has quit (Read error: 110 (Connection timed out)).
00:25:12 <desafinado> harkeyahh: did you package arrive safely to Mumbai?
00:25:38 <harkeyahh> oh, yes it did i meant to change the topic
00:26:36 -!- harkeyahh has set topic: Another brainfuck site (http://www.bf-hacks.org/) is open! ~ http://chriscoyne.com/cfdg/ ~ Esolang wiki: http://esolangs.org/wiki/ Thank you for your prayers my children. The package arrived safely into the arms of a 10,000 pound elephant..
00:37:18 <desafinado> there has been confusion regarding turing-completeness of smallfuck
00:38:23 <desafinado> I made up my mind. Available memory is limited. Smallfuck is not turing-complete.
00:57:38 <cpressey> desafinado: on that topic, you might be interested in this: http://catseye.webhop.net/projects/sf2tab/src/sf2tab.c
00:57:46 <cpressey> it compiles smallfuck programs into lookup tables
01:06:16 -!- heatsink has joined.
02:40:02 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
02:58:10 -!- malaprop has quit ("bounce").
03:14:42 -!- desafinado has changed nick to lament.
04:24:16 <graue> I added pages to the esowiki on Archway and Qdeql
04:43:11 -!- calamari_ has quit (Read error: 110 (Connection timed out)).
05:02:18 -!- heatsink has quit ("Leaving").
05:39:15 -!- harkeyahh has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.4/20050511]").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:14:59 -!- pgimeno has joined.
08:31:08 -!- graue has quit (Read error: 110 (Connection timed out)).
11:36:33 -!- tokigun has joined.
11:38:37 <tokigun> i've submitted three beer song program to 99-bottles-of-beer.net; one of them is already uploaded.
11:38:38 <tokigun> http://www.99-bottles-of-beer.net/language-whirl-761.html
13:18:13 -!- malaprop has joined.
13:28:18 -!- jix has joined.
15:50:39 -!- jix has quit ("Banned from network").
17:46:48 -!- calamari_ has joined.
18:42:46 -!- graue has joined.
18:55:22 -!- comet_11 has joined.
18:55:37 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
18:55:56 -!- comet_11 has changed nick to CXI.
19:08:33 -!- calamari_ has quit ("bbl").
20:23:36 -!- graue has quit (Remote closed the connection).
20:36:28 -!- calamari has joined.
20:49:10 -!- graue has joined.
21:54:03 -!- jix has joined.
21:59:01 -!- jix has quit ("Banned from network").
22:16:21 <calamari> better now that I've taken my math test :)
22:17:55 <calamari> I'm considering writing an adventure game.. need to see if my idea is feasible though. Of course an extra 8k of data storage helps a lot :)
22:18:22 <{^Raven^}> just 2.8k is suficcient for a large game
22:18:55 <calamari> depends on how much time you spend compressing things
22:19:26 <calamari> nothing in the rules says not to use the data file, so why not? hehe
22:19:35 <{^Raven^}> I enjoy squeezing every last byte out of code. optimisation is fun
22:20:13 <calamari> oh, don't get me wrong.. it's just that if I limit myself to 2.8, it's not going to be the same game as 2+8k
22:20:38 <calamari> still only 2k of code.. the 8k is for data
22:22:17 <calamari> I need to write a quick assembler, though, so that I can use a compressed source format.. 2929 bytes of standard asm source code won't get me much
22:23:06 <{^Raven^}> last year assembler games were accepted without source code
22:23:13 <calamari> I think that source rule is silly, though.. it's the binary that matters.. actually a lot of the rules are silly, it's all for the fun of it, I suppose
22:23:32 <calamari> oic.. that makes things considerably easier
22:25:04 <calamari> with 2k of code, I could probably write a semi-generic engine
22:25:22 <{^Raven^}> once that fits your game perfectly
22:25:56 <{^Raven^}> if you want to follow the rules as posted then a zip of your engine + your data file has to be under 2.7Kb and that's pretty impossible
22:26:20 <{^Raven^}> the organiser has not thought about the rules, think of them as general guidelines
22:26:36 <{^Raven^}> and there should be an OR clause between rules one and two
22:27:01 <calamari> it was funny how he called it RAM, that makes no sense in the context
22:27:13 <{^Raven^}> the source code limit is for games written in BASIC or interpreted languages
22:27:42 <{^Raven^}> the executable code limit is for compiled/assembled games
22:29:23 <{^Raven^}> yeah, it implies that a UPXd EXE (!) when decompressed must be within the 2.79Kb [sic] limit
22:29:34 <calamari> I should e-mail him to see what the actual rules are
22:30:33 <{^Raven^}> people have tried this year and last year to clarify them but to no avail. Good Luck!
22:31:01 <calamari> raven: I think it'd be pretty hard for him to verify how much ram is being used
22:31:48 <calamari> pretty much impossible without disasseming the source, on game systems such as the atari 5200
22:32:39 <{^Raven^}> yeah. I'm still strying to get the whole concept of a 1024-2048 byte game competition that allows entries up to almost 3K in size
22:35:06 <lament> what the fuck is "data"
22:35:11 <lament> maybe my "data" is Python code
22:35:26 <graue> define "executed", eh
22:35:44 <graue> an interpreter doesn't execute anything, it just looks at "data" and decides what to do
22:36:58 <lament> of course for an interactive fiction game
22:37:08 <lament> you probably need much more "real data" than code
22:37:29 <lament> it might be possible to fit Scott Adams' engnine in 2k
22:37:41 <lament> and any scott adams' game fits easily (zipped) in 8k data
22:37:47 <{^Raven^}> easily, you could do it in much less
22:38:00 <lament> (which is exactly what i was planning to do for the competition :))
22:38:38 <{^Raven^}> Previously I used my own custom data compression code rather than relying on any external libraries
22:40:06 <{^Raven^}> For this I would prefer to do the same to keep the 'game' as self contained as possible (not saying that I won't though)
22:41:32 <calamari> wisdom from the dunric file: http://groups-beta.google.com/group/rec.games.video.classic/browse_thread/thread/5110daaa04a82c2c/0267f0dcc89cbaf5?q=rec.games.video.classic+dunric&rnum=8&hl=en#0267f0dcc89cbaf5
22:45:14 <{^Raven^}> Here is a "clarification" of the rules (at the bottom) http://groups-beta.google.com/group/rec.arts.int-fiction/browse_frm/thread/68e352749cb768ff/cc85e00f30ff941d?q=dunric&rnum=6&hl=en#cc85e00f30ff941d
22:45:49 <{^Raven^}> if accepted as true it allows for some major abuse of the rules
22:46:21 <lament> he says you can use "TADS, Adrift, etc"
22:46:24 <lament> which also means inform
22:47:01 <{^Raven^}> for instance you could write a *huge* generic game engine without any size limitations (the interpreter)
22:47:27 <{^Raven^}> the code (game logic) would have to fit in 2.83Kb which would allow for a huge amount of logic
22:47:44 <{^Raven^}> and all data (strings etc) would go in the 8Kb data file
22:48:21 <{^Raven^}> IMHO that's what dunrics clarification allows and that goes against what I feel to be the spirit of the competition
22:48:55 <lament> TADS, Adrift, Inform ARE "huge, generic game engines"
22:49:00 <lament> and what's better, you don't have to write them yourself.
22:50:18 <{^Raven^}> but it means that you could really submit anything, you can compress the logic (code) to fit within 2.83Kb and not suffer from the EXE/UPX clause in rule one
22:51:35 <lament> basically the rules of the competition are kinda dumb :)
22:51:47 <lament> he should have restricted them waay more
22:52:11 <{^Raven^}> this needs to be sorted out, the rules need to be revised
22:54:08 <{^Raven^}> My entry from last year was fully self contained at 2,803 bytes of BBC BASIC, it even ran on a BBC
22:57:07 <{^Raven^}> He states that the absolute maximum source size is 2.83Kb and later adds 'give or take a few hundred bytes' and gives a new limit of 2.86Kb
22:57:41 <{^Raven^}> no-one, to my knowledge has ever understood what dunric's rules mean
22:59:12 <calamari> including him, I'd imagine.. where would 2.83k come from? not exactly a common file size :)
23:00:54 <{^Raven^}> ~2.831Kb = 2899 bytes. Since when are there only 1000 bytes in a kilobyte? Any programmer (aside form dunric!) should know this.
23:01:43 <{^Raven^}> and 2.83Kb is waaaay outside the 1Kb to 2Kb remit of the contest
23:01:54 <calamari> it doesn't matter tho, in the end :)
23:02:43 <{^Raven^}> not really, but knowing the original reason why the competition started makes it seem silly
23:04:38 <calamari> hmm, if I don't have an external data file, I'd better think harder about compression. Maybe perl? :)
23:05:54 <{^Raven^}> #defining common operations as macros would allow a good degree of compression.
23:06:15 <calamari> I'm think more along the lines of text compression
23:07:06 -!- CXI has changed nick to test.
23:07:10 -!- test has changed nick to CXI.
23:07:20 <{^Raven^}> hmmm, the main problem is the trade off between the space gained by compression and the code size required for decompression
23:08:11 <{^Raven^}> finding an optimal or beneficial balance is difficult but possible if you limit yourself to only 2.83Kb for the entire game
23:16:47 <calamari> it is possible to decompress in very little code, depending on the compression used. For example, dictionary compression
23:35:00 -!- KarlMarx has joined.
23:41:20 <calamari> I've e-mailed him.. hopefully I'll get a response since we used to hang out online all the time
23:45:33 <calamari> I asked for clarifications, and also offered alternate rules that made sense to us
23:46:02 <{^Raven^}> hmmm...i am doing the same (but not sent yet)
23:46:25 <calamari> let me paste the rules I suggested to see if you agree
23:46:50 <calamari> 1) The size of the unzipped game file may be no larger than 2048 bytes in
23:46:51 <calamari> size, whether source or binary in nature. The internal details or methods
23:46:51 <calamari> used in the binary or source file are unimportant (feel free to use UPX
23:46:51 <calamari> compression, platform tricks, etc), so long as the game file itself is no
23:46:53 <calamari> 2) External game engines or language interpreters may be used to run the
23:46:55 <calamari> game, so long as it can be verified that the engine or language employed was
23:46:57 <calamari> written prior to the contest starting date.
23:49:50 <calamari> he relied already, basically ignoring the rule suggestions
23:50:10 <{^Raven^}> I would have suggested that the original 2899 byte limit be allowed for this year only
23:50:53 <graue> why was the limit set at 2899 bytes?
23:51:34 <calamari> maybe a certain auto-adventure generator saves files of that size?
23:52:15 <{^Raven^}> It may not be 'entirely' true, but it fits the events surrounding the announcement of the original competition last year
23:52:47 <{^Raven^}> Each year in the interactive-fiction community there is a competition called IF-Comp
23:53:27 <{^Raven^}> Dunric submitted his game B-Venture to the 2004 IF-Comp
23:53:57 <{^Raven^}> his entry was disqualified because it broke the 'entries must not have been previously released' rule
23:54:30 <calamari> that sux.. so he probably made his own contest in spite?
23:54:30 <{^Raven^}> he discussed this fervently (to understate reality) with the organisers and community at large
23:54:49 <{^Raven^}> and yes, in spite he made his own competition
23:55:06 <graue> you know what I think would be really neat
23:55:09 <{^Raven^}> in his competition there were no rules to disallow previously released games
23:55:12 <graue> a modular music studio, using Brainfuck programs
23:55:31 <graue> effects would be programs that read samples on stdin and produce samples on stdout
23:55:49 <{^Raven^}> And B-Venture was 2,700(ish) bytes long, so he set a max code limit which was a little larger
23:56:14 <{^Raven^}> This was part of the reason why the first competition was ignored by the IF community
23:56:46 <lament> the other part of the reason is probably because the vast majority of the IF community couldn't care less about "old-school" crappy games which fit in a few K
23:56:59 <calamari> you could even get fancy and have wave in, wave out bookends
23:57:12 <graue> I am not familiar with the use of the term 'bookend' in this context
23:58:24 <calamari> the idea is that you'd give a regaular wav file, it'd be decoded and sent to the next filter, which would only be dealing with a raw file, then after the last filter you'd feed the raw into the last program and it'd becomes a playable wav again
23:58:28 <{^Raven^}> lament: it's not that miniature masterpieces in general are crap, coding small elegant programs with a apurpose is a lost art. The quality of the works of certain authors (not mentioning names here) does leave a lot to be desired
23:58:47 <lament> {^Raven^}: it's an art the IF community isn't terribly interested in.
23:59:03 <lament> they have their own art to worry about
23:59:25 <graue> calamari, I guess so, but I was thinking the environment executing the programs would do that sort of coding
23:59:27 <calamari> lament: maybe not, but it is interesting, nonetheless
00:00:02 <calamari> are there any portable mp3 players that are programmable?
00:00:35 <lament> but unofficially, yes.
00:00:43 <lament> the ipod is one i believe?
00:02:34 <{^Raven^}> the thing is to work out how to do it. The only non-reprogrammable ones are implemented in pure-hardware which is not common
00:03:20 -!- heatsink has joined.
00:03:23 <{^Raven^}> calamari: I am going to point out to Dunric where the current rules can be abused
00:03:56 <calamari> cool.. I gave him the 2899 + 8192 example, but that didn't seem to phase him
00:04:16 <{^Raven^}> calamari: can I use/paraphrase/steal your suggested rules (with due credit)
00:04:33 <{^Raven^}> calamari: am not sure about it as it would probably be better for it to seem completely independant
00:04:39 <calamari> of course, and that'd be great too, because he'll be hearing the same thing again from someone new
00:05:18 <{^Raven^}> i am tempted to post it to as RFD to raif (rec.arts.int-fiction)
00:05:34 <calamari> you won last year, mention that ;)
00:06:33 <calamari> my wording can be improved.. I'm not the greatest writer, which kinda rules me out of serious IF, but this 2k stuff seems a bit different
00:06:46 <{^Raven^}> I am researching other 2Kb(ish) competitions to gather a common rule set
00:07:05 <lament> {^Raven^}: have you written any "normal" IF?
00:07:09 <{^Raven^}> My own writing can be pretty awful
00:08:05 <{^Raven^}> lament: yes, quite a lot, including games, game engines and IF development tools
00:09:04 <{^Raven^}> I used to be quite prolific in the late eighties and early ninties
00:09:19 <lament> that's before inform isnt it
00:10:30 <{^Raven^}> Before Graham Nelson's Inform became widely used. I think that the original Infocom ZCode engine predates my original game
00:11:00 <lament> second IF game ever was written in it
00:12:54 <calamari> the only text adventure I played of any length of time was called something like "leather goddesses of phobos". I don't remember what that title was about, and I never beat the game.. it was fun, though
00:13:55 <lament> big games are intimidating :(
00:14:24 <{^Raven^}> I'm not sure about that since Colossal Cave was 1972ish and ZCode was 1979
00:14:52 -!- calamari has quit ("<=K").
00:15:13 <{^Raven^}> and Zork was originally written in MDL and released in 1977, but there has to be a wealth of IF in the intervening years
00:26:29 -!- calamari has joined.
00:59:17 <cpressey> having an 8K data file is really a lot of space. where's the challenge?
00:59:46 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
01:01:45 <calamari> cpressey: choose not to use it :)
01:02:19 <calamari> I was going to, but it's true.. there is no challenge that way
01:04:10 <cpressey> well... i mean, there still can be a challenge, but it's mostly the same as any other IF competition - just design and implement a good game. 10K is plenty of space to do that in, if you're any good at writing small code.
01:04:28 <{^Raven^}> cpressey: I am going to try to make the biggest and best game I can
01:04:30 <cpressey> i guess the thing is, i'm running out of ideas, before i've run out of space. heh
01:05:54 <{^Raven^}> A good programmer can do a lot in less than 2,899 bytes of code
01:06:11 <{^Raven^}> (Several complete operating systems were 2k or less)
01:06:42 <calamari> came across this page, it's quite interesting: http://www.costik.com/nowords.html
01:07:26 <{^Raven^}> calamari: That title is so Harlan Elison
01:07:33 <calamari> raven: generally those are they types of operating systems where you have to look up "error 231" in a separate manual :)
01:08:30 -!- KarlMarx has left (?).
01:10:06 <{^Raven^}> Harlan Ellison is an author of Science Fiction.
01:11:28 <{^Raven^}> The title of the Costik page refers to his short-story "I Have No Mouth And I Must Scream"
01:12:05 <lament> he refers to IF as "interactive fantasy"
01:12:30 <lament> calamari: there're much better articles on IF game design.
01:13:32 <calamari> lament: cool.. I just came across this one.. it was really a sidenote as it seems to concentrate on other types of games more than IF.. I think he brings up some good points about what can make a game fun (or prevent it from being so)
01:13:35 <lament> for example this: http://www.inform-fiction.org/manual/html/ch8.html
01:13:40 <lament> if you have a few weeks to read it :)
01:14:07 <{^Raven^}> The IFWiki has a lot of useful information http://www.ifwiki.org/index.php/Main_Page
01:14:56 <calamari> raven: so you're going for the whole 10k, then?
01:15:33 <{^Raven^}> calamari: It would be too easy for me to knock-up another game based on my original engine
01:16:32 <{^Raven^}> calamari: I am going for the full 10k because I want to see how far I can take the concept
01:18:21 <{^Raven^}> calamari: For me I feel that I have explored the 2k limit to my own logical ends,
01:19:01 <{^Raven^}> calamari: The 10k limit presents a really difficult challenge to overcome with what I am planning
01:28:35 <calamari> btw, here is what I got the 2nd time around: The adventure game source file can be anywhere from 1 to 2.8k. It's still a 1-2k contest, in that entries (source code, anyway) will usually be 1-2k in size. The extra data file allowed (consisting of 8,192 bytes) makes 2k games playable to a larger extent, and in essence makes the games entered adventure game drivers, a la Scott Adams.
01:29:07 <calamari> whatever scott adams is.. you'd probably know :)
01:31:05 <{^Raven^}> lament: Have we met on r*if? I am sure that I know you from elsewhere.
01:31:59 <cpressey> i would hazard to guess that if the limit is 2.8k, most entries would be, well, 2.8k in size :)
01:32:31 <{^Raven^}> cpressey: 2.83Kb is still 2Kb (if you're rounding down), but last year several entries were under 1Kb
01:33:43 <cpressey> yes... but two of those entries seemed more like jokes than serious entries to me
01:35:36 <cpressey> the thing is, i don't know what will score higher in the judging - good (i.e. playable) game or small game.
01:36:05 <{^Raven^}> that is what concerns me most is that there was only one reviewer and judge last year
01:37:00 <{^Raven^}> calamari: I think that it will be the same this year
01:37:17 <calamari> aha, another response: VIC-20 text adventures used to require at least 3K of RAM expansion, and sometimes 8K. Some text adventures were written that barely fit into the 3,584 bytes of RAM afforded by an unexpanded VIC, but they were barely playable. That is why a "playable" text adventure needs at least 8K of data.
01:39:15 <cpressey> i'll just write something i like
01:40:36 <{^Raven^}> cpressey: I have only ever written for myself, I don't believe that there is any other honest ay work
01:41:21 <lament> {^Raven^}: perhaps we have
01:41:32 <lament> although i haven't written any
01:42:38 <lament> the only thing i ever did for IF was some sort of language that compiled to Scott Adams' platform
01:42:46 <lament> and i never even released that
01:44:02 <calamari> aha, http://www.ifwiki.org/index.php/Scott_Adams
02:22:30 -!- heatsink has quit ("Leaving").
02:29:22 * {^Raven^} if off to bed (to watch Highlander)
02:58:08 -!- graue has left (?).
04:14:42 -!- watermellonz has joined.
04:14:54 -!- watermellonz has left (?).
04:22:50 -!- calamari has quit (Read error: 145 (Connection timed out)).
05:09:53 -!- malaprop has quit (brown.freenode.net irc.freenode.net).
05:09:57 -!- lindi- has quit (brown.freenode.net irc.freenode.net).
05:09:57 -!- puzzlet has quit (brown.freenode.net irc.freenode.net).
05:09:57 -!- fizzie has quit (brown.freenode.net irc.freenode.net).
05:09:57 -!- deltab has quit (brown.freenode.net irc.freenode.net).
05:09:57 -!- ChanServ has quit (brown.freenode.net irc.freenode.net).
05:09:58 -!- cpressey has quit (brown.freenode.net irc.freenode.net).
05:10:01 -!- {^Raven^} has quit (brown.freenode.net irc.freenode.net).
05:10:02 -!- CXI has quit (brown.freenode.net irc.freenode.net).
05:10:02 -!- pgimeno has quit (brown.freenode.net irc.freenode.net).
05:10:02 -!- cmeme has quit (brown.freenode.net irc.freenode.net).
05:10:02 -!- mtve has quit (brown.freenode.net irc.freenode.net).
05:10:04 -!- ZeroOne has quit (brown.freenode.net irc.freenode.net).
05:12:29 -!- ChanServ has joined.
05:12:29 -!- CXI has joined.
05:12:29 -!- malaprop has joined.
05:12:29 -!- pgimeno has joined.
05:12:29 -!- lindi- has joined.
05:12:29 -!- cpressey has joined.
05:12:29 -!- puzzlet has joined.
05:12:29 -!- fizzie has joined.
05:12:29 -!- deltab has joined.
05:12:29 -!- {^Raven^} has joined.
05:12:29 -!- cmeme has joined.
05:12:29 -!- ZeroOne has joined.
05:12:29 -!- mtve has joined.
05:12:29 -!- irc.freenode.net has set channel mode: +o ChanServ.
05:20:31 -!- malaprop has quit (brown.freenode.net irc.freenode.net).
05:20:36 -!- puzzlet has quit (brown.freenode.net irc.freenode.net).
05:20:36 -!- lindi- has quit (brown.freenode.net irc.freenode.net).
05:20:36 -!- fizzie has quit (brown.freenode.net irc.freenode.net).
05:20:36 -!- deltab has quit (brown.freenode.net irc.freenode.net).
05:20:36 -!- ChanServ has quit (brown.freenode.net irc.freenode.net).
05:20:37 -!- cpressey has quit (brown.freenode.net irc.freenode.net).
05:20:38 -!- {^Raven^} has quit (brown.freenode.net irc.freenode.net).
05:20:40 -!- pgimeno has quit (brown.freenode.net irc.freenode.net).
05:20:40 -!- mtve has quit (brown.freenode.net irc.freenode.net).
05:20:40 -!- cmeme has quit (brown.freenode.net irc.freenode.net).
05:20:40 -!- ZeroOne has quit (brown.freenode.net irc.freenode.net).
05:20:40 -!- CXI has quit (brown.freenode.net irc.freenode.net).
05:22:04 -!- ChanServ has joined.
05:22:04 -!- CXI has joined.
05:22:04 -!- malaprop has joined.
05:22:04 -!- pgimeno has joined.
05:22:04 -!- lindi- has joined.
05:22:04 -!- cpressey has joined.
05:22:04 -!- mtve has joined.
05:22:04 -!- ZeroOne has joined.
05:22:04 -!- cmeme has joined.
05:22:04 -!- {^Raven^} has joined.
05:22:04 -!- deltab has joined.
05:22:04 -!- fizzie has joined.
05:22:04 -!- puzzlet has joined.
05:22:04 -!- irc.freenode.net has set channel mode: +o ChanServ.
05:23:10 -!- malaprop has quit ("sleep").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
10:30:32 -!- jix has joined.
12:09:12 -!- tokigun has joined.
12:27:18 -!- J|x has joined.
12:27:52 -!- jix has quit (Nick collision from services.).
12:27:54 -!- J|x has changed nick to jix.
14:18:26 -!- tokigun has quit (Read error: 104 (Connection reset by peer)).
14:21:04 -!- tokigun has joined.
19:01:25 -!- calamari has joined.
19:06:46 <jix> moin calamari
19:15:39 <calamari> quite a few people are making games now, or at least planning to :)
19:17:54 <{^Raven^}> calamari: I finally figured out the syntax of the BFBASIC BF command :)
19:18:06 <calamari> haha.. not much syntax there to be found ;)
19:18:39 <calamari> what did you need it for? needing that is generally a bad sign
19:18:59 <{^Raven^}> i dunno, it's nice writing otherwise pure brainfuck with just a few @myvar's scattered in
19:19:37 <{^Raven^}> looking at it for code optimisation mainly
19:19:42 <calamari> oh, yeah.. didn't think of that!
19:20:38 <{^Raven^}> instead of myvar=2 using BF @myvar[-]++
19:20:41 <calamari> although I'm pretty sure I came up with the @ syntax, but who knows, my memory could be going
19:21:00 <calamari> yeah.. it makes it a lot easier to see what is going on
19:21:03 <{^Raven^}> i like that the BF statement doesn't have any pre/post code around it
19:21:46 <{^Raven^}> are array elements supposed to be 2 cells wide?
19:21:49 <calamari> of course.. then it wouldn't be raw. Although, it might have post code before it
19:22:21 <calamari> one is used for data, the other for movement
19:22:56 <{^Raven^}> ahh, i;'m not sure if it's me but BF @array(1)[-]@array(2) generates (>>>etc)[-]>[-]
19:23:18 <calamari> there are 3 cells leading the array as well
19:23:37 <calamari> x b a (or x a b), can't remember
19:24:32 <calamari> I think I documented it somewhat on the wiki
19:26:28 <calamari> iirc, the way it works is: 1) movement cells start off as 0's. 2) take element index we want to find, do [>>] which gives us an empty movement cell, increment it, do [<<] to get back, decrement the index, repeat until index =0.. so now the movement cells are populated with 1's, and we can do something like [>>]< or [>>]> to get to the data cell
19:27:01 <calamari> 3) transwer the data with a simple add loop, using [>>] and [<<] instead of > <..
19:27:22 <calamari> of course there are all the fine details that go along with getting it right, but that's the basic idea of how it works
19:28:01 <calamari> I'd check the 0 cell, 1 cell, and max cell, max-1, max+1
19:28:19 <calamari> just to make sure everything is working as expected
19:28:35 <calamari> it's likely that one of those is where the bug is
19:29:08 * calamari has been having fun researching his game
19:29:15 <{^Raven^}> yeah, I am getting the impression that arrays are not always contigous
19:29:35 <{^Raven^}> i will play with using BF to simplify tracking
19:29:44 <calamari> it's possible that a movement cell is not getting cleared out and it's going off to lala land
19:30:27 <calamari> I have my bit debugger pretty close to done.. I should do a bf version, since I like the interface
19:30:57 <calamari> that would make this sort of thing a LOT easier to debug, than trying to do it by hand
19:34:04 <calamari> I'd be done with the bit debigger already, but I ran into a problem the other day.. if the program was running, I couldn't stop it, because it was using the same thread as Swing. I could use multiple threads, but I lose a bit of control, and can't do certain things. But, the other night I realized that I could just use step, and a special runnign flag, so the view knows when the model is done running.
19:34:29 <calamari> That way it's all in one thread, and it'll be cool because you'd see the highlighted instruction moving as it ran
19:34:56 <calamari> It also makes possible the Pass button (for running iuntil a loop is done)
19:35:14 <calamari> so anyhow, yeah.. it is almost done, just got caught up in this adventure game stuff :)
19:35:27 <calamari> I need to get to other work tho.. so afk
19:55:34 * {^Raven^} is playing with a version of BFBSAIC that doesn't expand @var's into arrows
19:56:39 * calamari is doing dishonest programming.. or whatever it was you called it the other day :)
21:18:37 -!- calamari has quit ("bbl").
22:14:12 -!- J|x has joined.
22:26:18 -!- jix has quit (Read error: 110 (Connection timed out)).
22:49:21 -!- Keymaker has joined.
23:00:54 -!- ChanServ has quit (Shutting Down).
23:01:20 -!- ChanServ has joined.
23:01:20 -!- irc.freenode.net has set channel mode: +o ChanServ.
23:05:34 -!- J|x has changed nick to jix.
23:05:45 <jix> Keymaker: me is here
23:44:59 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
23:45:12 <Keymaker> i was just writing a question for tokigun
23:45:23 <Keymaker> well, anyways, maybe someone other knows..
23:45:48 <Keymaker> so, does a whirl program start from the beginning again if there is no 'terminate program' instruction?
23:51:01 -!- Keymaker has quit ("I've seen this dj vu before..").
01:37:41 <ZeroOne> I don't think so, Keymaker, but you can always try how the reference interpreter works.
02:10:01 <jix> i'm writing 99 bottles in lazy-k
03:36:08 -!- jix has quit ("Banned from network").
03:38:41 -!- calamari has joined.
03:39:30 <calamari> I just noticed that the latest wiki dump I downloaded was smaller than the last dump... is that logical?
04:15:19 -!- calamari has quit ("Leaving").
04:37:54 -!- mickoko has joined.
04:38:36 -!- mickoko has left (?).
06:47:14 -!- calamari has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:14:19 -!- BigZaphod has joined.
08:34:55 <calamari> did you find us from the wiki? :)
08:37:50 <BigZaphod> Yes. Actually, in a rather round-about way. I was googling one of my own languages Whirl.
09:45:05 -!- calamari has quit ("Leaving").
10:45:49 -!- jix has joined.
11:00:25 -!- Keymaker has joined.
11:03:23 -!- tokigun has joined.
11:05:22 <tokigun> eh... what is your question?
11:05:56 <Keymaker> yesterday i was asking here that do whirl programs require that terminate instruction
11:06:17 <tokigun> yes terminate instruction is not required
11:06:27 <tokigun> but i added it for complete program
11:06:59 <Keymaker> why doesn't that program work?
11:08:08 <tokigun> if you want to print 0 use op::intio instruction instead.
11:08:12 <Keymaker> hmm.. there must be then something wrong the way i thought
11:08:55 <Keymaker> 11 move to One 00 execute it, change ring
11:09:40 <tokigun> Keymaker: you have to use 0111100 instead of 111100
11:10:43 <Keymaker> doesn't the direction of ring stay when you switch it?
11:10:47 <tokigun> when 111100 is executed, it selects 6th (not -2th == 10th) instruction
11:11:13 <tokigun> 0 changes the direction of ring
11:11:22 <Keymaker> but i thought the first line "1100"
11:11:36 <tokigun> 00 changes the direction of ring twice, executes the selected instruction, and so on..
11:11:54 <tokigun> no. it changes the direction "twice".
11:12:02 <Keymaker> so the direction changes every time there is 0
11:12:54 <Keymaker> ah this clears it. i thought the direction doesn't change if the zero executes instruction :)
11:12:58 <Keymaker> well, now i can go and fix this
11:13:36 <tokigun> i've returned home... good :)
11:14:18 <Keymaker> i'll make it print unix new-line as well
11:14:29 <Keymaker> btw, i'm using your c interpreter. it's great
11:18:34 <tokigun> it doesn't have debugger, though ;)
11:18:51 <Keymaker> yeah, something option showing memory states would be useful
11:20:07 <Keymaker> if there is a jump where the instruction pointer is moved.. what if it goes outside the program?
11:20:31 <Keymaker> as well, does whirl support negative numbers? that jump to left and right can be done?
11:22:55 <tokigun> first whirl supports negative numbers
11:23:08 <tokigun> so you can move memory pointer left or right
11:23:23 <Keymaker> but what about the jump outside the program?
11:24:19 <tokigun> my interpreter can handle it.. but maybe it is user-defineded.
11:25:11 <Keymaker> the author *cough bigzaphod* should clear some things on the web site..
11:26:37 <tokigun> in this case, his interpreter terminates immediately.
11:27:12 <tokigun> and my interpreter terminates program when memory pointer > program upper bound,
11:27:30 <tokigun> and return to first instruction when memory pointer < program lower bound (that is origin)
11:28:55 -!- tokigun has changed nick to tokigun^away.
11:36:11 <Keymaker> i can't understand english. does "Sets value to memval." mean that 'value' gets the value of 'memval'?
11:46:37 <puzzlet> tokigun: bigzaphod is here
12:01:50 -!- tokigun^away has changed nick to tokigun.
12:11:51 -!- Keymaker has left (?).
12:30:23 -!- J|x has joined.
12:31:03 -!- jix has quit (Nick collision from services.).
12:31:05 -!- J|x has changed nick to jix.
12:31:47 <jix> my 99bob in lazy k is done
12:32:41 <jix> it's about the size of the whirl 99bob .. and has the same obfuscation amount
12:59:27 * {^Raven^} ponders orthogonal 8-bit RISC processor design and layout of 16-bit opcodes
13:37:18 -!- hashendgame has joined.
15:20:36 * {^Raven^} finished pondering orthoganal processor design
15:27:50 -!- Kmkr has joined.
15:28:57 <Kmkr> couldn't use name Keymaker
15:29:08 <Kmkr> this thing said it was token
15:29:32 <Kmkr> jix: sounds really cool
15:29:38 <Kmkr> can't wait to see the program
15:30:04 <{^Raven^}> kmkr: have you done /whois keymaker
15:30:40 <Kmkr> hmm, seems to be some french dude
15:31:03 <{^Raven^}> i recommend that you register Keymaker at the next opportunity
15:31:20 <Kmkr> he has probably registered it already
15:31:56 <Kmkr> as well, i didn't feel like trying to register it, since that system was strange. i couldn't use it
15:42:08 <{^Raven^}> i'v had enough of enough brainfuck for the moment, gonna take a break
15:53:35 -!- hashendgame has quit ("Leaving").
15:53:56 <Kmkr> can one send another version for some language to that 99 bottles of beer list?
15:54:09 <Kmkr> if i remember correct i've seen some language have several versions
15:54:32 <Kmkr> perl for example
17:04:33 <BigZaphod> Hey tokigun. Nice to finally "meet" the world's best whirl programmer. :)
17:22:46 -!- tokigun has quit (Read error: 110 (Connection timed out)).
18:07:41 <jix> Kmkr: http://rafb.net/paste/results/hExqvL26.html
18:08:23 <Kmkr> nice :) can't understand anything
18:08:50 <jix> the first part is the scheme-like code.. the 2nd part is se lazy k code
18:09:16 <jix> and i think you can't understand anything in the whirl 99bob
18:12:40 <Kmkr> me? in whirl it's possible but takes time :)
18:13:25 <Kmkr> well, here is the boring 99bob in c i made:
18:13:26 <Kmkr> #include <stdio.h> /* written by Keymaker :) */
18:13:26 <Kmkr> int main(){int a[9]={0,1,2,0,2,3,0,1,2},b=99,c;while(b>0){for(c=0;c<9;c++){
18:13:26 <Kmkr> if(a[c]==0){if(b==0){printf("no more");}else{printf("%i",b);}printf(" bottle");
18:13:26 <Kmkr> if(b!=1){printf("s");}printf(" of beer");}if(a[c]==1){printf(" on the wall");}
18:13:26 <Kmkr> if(a[c]==2){if(c==2){printf(", ");}else{printf(".\n");}}if(a[c]==3){
18:13:27 <Kmkr> printf("Take one down and pass it around, ");b--;}}printf("\n");}}
18:14:03 <Kmkr> i don't submit it to 99-bottles-of-beer, since i just noticed ther reads they don't want anymore c examples of the program
18:15:01 <jix> Kmkr: if you take a look at the first part (the non-compiled version) it's even easier to understand as the whirl code
18:24:47 <jix> i think it's fun writing BASIC => Esolang converters
18:24:58 <Kmkr> never tried :)
18:25:15 <jix> i didn't but i think it's fun
18:25:29 <Kmkr> extra fun when you write the converter in the esolang
18:27:23 <Kmkr> i think i'll write a new version of my beer.b
18:28:01 <Kmkr> there's 1003 ways to get it shorter
18:30:33 -!- Kmkr has left (?).
20:00:30 <BigZaphod> 3code 99 bottles: http://www.bigzaphod.org/3code/bigzaphod-99bottles.txt
20:00:36 <BigZaphod> not terribly impressive, but it was fun.
21:42:36 -!- calamari has joined.
21:45:02 <calamari> jix: bitdebug 1.00 is ready: http://kidsquid.com/programs/bf/bf.html
21:45:27 <calamari> let me know which bugs you find :)
21:53:53 <calamari> working on the bf port of that debugger :)
21:54:22 <{^Raven^}> working on a BF related project myself
21:54:25 <calamari> if there's anything about the bit one that needs fixing, let me know so I can put it in the bf version
22:12:30 <calamari> wow, that was easier than I thought
22:13:15 <calamari> Only thing left is allow clicking memory to change it.. was easier with bits because it could just flip.. will need a dialog this time, though :)
22:15:54 -!- BigZaphod has quit.
22:15:55 <calamari> and its way slow because of all the graphics.. not great for running programs.. just debugging them
22:31:58 <calamari> raven: check it out, http://kidsquid.com/programs/bf/bf.html
22:32:35 <{^Raven^}> will do, am hitting BFBASIC bugs right now
22:32:38 <calamari> I should put my array code in and test it
22:33:23 <{^Raven^}> array(var)=array(var2)+var3 (or -var3) does not work
22:37:52 <{^Raven^}> calamari: default file mask for file>open could be *.b;*.bf
22:38:23 <{^Raven^}> calamari: input box does not seem to accept input in range 00-FF
22:40:01 <calamari> really? it should accept any decimal
22:40:31 <calamari> unless you mean the input tab?
22:40:54 <{^Raven^}> seems limited to printable characters
22:42:38 <calamari> hmm yeah.. probably is, unless it's pasted in
22:43:57 <{^Raven^}> test code starts [.] debugger cannot get past that. skipped to [-] and it gets stuck there too even though cell is set to 0
22:44:48 -!- jix has quit ("Banned from network").
22:45:15 <calamari> I don't follow you on that last bug report
22:45:33 <calamari> if you're changing the program in the middle of a run, that could cause problems
22:46:34 <calamari> that'd be weird, because I was able to run the standard hellow world type stuff, the triangle, etc
22:47:06 <{^Raven^}> is file>open supposed to load the code into the program tab? it is not doing that here
22:47:15 -!- heatsink has joined.
22:47:43 <calamari> so much for write once run anywhere :/
22:48:02 <heatsink> you didn't write it in java, DID YOU?
22:48:26 <{^Raven^}> ok, gonna stop using the evil OS now
22:48:57 <calamari> oh, were you trying it in windows?
22:49:09 <{^Raven^}> do you know how I can start your program from a unix shell (to load it on X-Windows)
22:50:04 <{^Raven^}> hmmm, gotta be doing it wrong, that command gives me a pile of exception errors
22:50:18 -!- cmeme has quit (Read error: 104 (Connection reset by peer)).
22:50:37 <lindi-> nice, more programs to try..
22:50:41 * calamari tries it .. works here.. I'm runnign 1.5 tho
22:51:30 -!- cmeme has joined.
22:51:49 -!- cmeme has quit (Remote closed the connection).
22:52:31 -!- cmeme has joined.
22:53:13 <lindi-> {^Raven^}: great. i'm using jamvm 1.3.0 with gnu classpath cvs head
22:53:33 * {^Raven^} has never been any good at getting 'real' java installed on his server and uses the default GNU version instead
22:55:36 * calamari just downloaded it from sun.. didn't even use those fancy installer script thingys
22:55:41 <lindi-> {^Raven^}: very nice, let me know if you see any bugs so i can test them with the latest version
22:57:16 <{^Raven^}> lindi: bfdebug-100 won't even run on my gij...and it dosn't work as expected using sun java on Windows
22:57:23 <lindi-> seems i've reported 25 bugs during the last 37 days :)
22:57:59 <calamari> raven: really weird that it doesn't work on windows, since I'm not really doing anything nonstandard this time
22:58:14 <lindi-> {^Raven^}: gij-3.3 is quite old in that respect, a lot has happened to swing after that
22:58:25 <lindi-> calamari: are you sure? ;)
22:58:55 <calamari> lindi: lol.. I think it's impossible to say for sure
22:58:59 * {^Raven^} goes to download sun java (and hopes it doesn't break anything)
22:59:10 <lindi-> calamari: esoshell had some nice gems, like this one: https://savannah.gnu.org/bugs/?func=detailitem&item_id=13254
22:59:26 <calamari> esoshell was definitely doing some nonstandard stuff
22:59:33 <{^Raven^}> calamari: I've got a really nice BFBASIC program in the making
22:59:40 <calamari> I was overriding swing methods, etc
23:00:18 <calamari> raven: cool, basic program, or bfbasic java program?
23:00:50 <lindi-> calamari: anyways, those swing programs are really create testcases for improving gnu classpath
23:02:33 <{^Raven^}> i am finding more bugs in BFBASIC but nothing I have been able to solve
23:02:36 <calamari> adventure game, or something new? spill it ;)
23:02:55 <calamari> be sure to commit to the cvs repos :)
23:03:16 <{^Raven^}> i will do if I ever manage to work out how to fix any bugs
23:03:51 <lindi-> {^Raven^}: what OS are you using btw?
23:03:56 * calamari doesn't know Java either, apparently
23:04:44 <{^Raven^}> lindi-: what for? I am using RISC OS, Linux (Whitebox RHEL3.0) and WinXP Pro interchangably atm
23:05:26 <lindi-> {^Raven^}: fedora core 4 comes with a large collection of java programs compiled with gcj
23:05:39 <lindi-> {^Raven^}: and on debian you could just apt-get install free-java-sdk
23:06:10 <{^Raven^}> lindi-: I need to find an rpm / other installer
23:06:42 <lindi-> sun's proprietary stuff?
23:06:48 * {^Raven^} often writes software on RISC OS, compiles it on Unix and runs it on Windows (and any variation thereof)
23:07:26 <{^Raven^}> I need a more recent java+SDK that will just install and work, any suggestions
23:07:27 <lindi-> i wish i knew brainfuck more so i could test this bfdebug better
23:08:17 <lindi-> {^Raven^}: i can recommend jamvm if you want to help out in testing gnu classpath
23:09:49 <calamari> I could never contribute, though.. because I've looked at all kinds of sun code trying to figure out things
23:10:00 <lindi-> you can contribute by testing
23:10:49 <{^Raven^}> calamari: My program is an emulator for an 8-bit RISC CPU
23:12:25 <{^Raven^}> not really slow, Hello World runs in less than a second
23:13:08 <{^Raven^}> I want to see if a RISC CPU with an orthoganl instruction set can be emulated by brainfuck
23:13:57 <lindi-> calamari: Interpreter.java has _memory.add(Integer.valueOf(0)); but there's no such method valueOf(int) in Integer
23:14:17 <lindi-> there's only valueOf(String s) and valueOf(String s, int radix)
23:15:22 <lindi-> still, i want to sort this out. where is valueOf(int) documented?
23:15:45 <calamari> one sec, I'll check it out for ya
23:16:28 <calamari> it's part of all that int wrapper crap
23:16:39 <lindi-> better not paste it here :)
23:16:56 <lindi-> but is there any public documentation on that one?
23:17:24 <calamari> is the javadoc from the code considered public?
23:18:04 <lindi-> but if sun has published it in a book or on their web page, then yes
23:18:51 <calamari> I have the feeling I know exactly what to search for hehe
23:19:41 <calamari> http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Integer.html
23:19:54 <lindi-> yeah, that's what i found
23:20:10 <lindi-> i'll write some quick'and'dirty version and check if it works
23:20:56 <calamari> are you going to handle the caching?
23:21:36 <lindi-> not sure how it should be done, i'll ask on #classpath
23:25:51 <calamari> hmm actually I needed new Integer(i) to replace it :)
23:26:26 <calamari> raven: probably explains why it wasn't working in windows :)
23:26:41 <calamari> wonder if I'm using any other 1.5 code.. wish there was an easy way to find out
23:27:57 <calamari> some kind of tool that'll tell me?
23:28:27 -!- Kmkr has joined.
23:29:28 <Kmkr> sounds like an interesting project raven
23:29:28 <{^Raven^}> kmkr: the french dude(tte) has logged off
23:29:40 -!- Kmkr has changed nick to Keymaker.
23:30:04 <{^Raven^}> Keymaker: it is. I just wanted to see if it was possible and it most definately can be done
23:30:19 <Keymaker> yeah, everything can be done with brainfuck!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
23:30:39 <Keymaker> what is that orthagonal or something instruction set?
23:30:47 <Keymaker> and what the hello world looks like in that?
23:32:12 <{^Raven^}> the simple version is (in assembler) just MOV r0,#72:OUT r0:MOV r0,#101:OUT r0:etc:RET
23:33:03 <{^Raven^}> each instruction is assembled to a 16-bit word by a seperate program, the object code is loaded and executed by the emulated CPU
23:34:30 <{^Raven^}> it's only 36Kb of brainfuck (compiled BFBASIC) so far
23:34:56 <lindi-> calamari: turns out that there is already valueOf(int) but it's in a separate branch that targets 1.5
23:36:14 <{^Raven^}> keymaker: In computer science, an instruction set is said to be orthogonal if any instruction can use any register in any addressing mode.
23:36:51 <lindi-> calamari: here, http://paste.debian.net/897
23:39:51 <calamari> interesting.. sun's is shorter, but the gnu one is easier to understand :)
23:42:23 <lindi-> MIN_CACHE and MAX_CACHE are -128 and 127 btw
23:43:18 <lindi-> calamari: < dalibor> a brainfuck debugger! < dalibor> we should ship that instead of jdb in kaffe < Sven_M> lindi-: Oh, well I can see how this is terribly useful. =)
23:53:42 * {^Raven^} has installed sun java 1.5.0, put it in the $PATH before libgcj but libgcj is still being used instead
23:55:21 -!- BigZaphod has joined.
23:55:24 <lindi-> {^Raven^}: redhat has 'java' as a symlink to 'gij'?
23:56:00 <{^Raven^}> yes, but it is later in the path than sun java
23:59:35 <{^Raven^}> bfdebug is running as you described
23:59:36 <calamari> I really like the look of 1.5 Swing
00:01:12 <{^Raven^}> yup, it was Windows/sun java1.4.2 that was broken
00:01:38 <calamari> because of the 1.5 method call I was using
00:02:00 <{^Raven^}> can't we blame windows just a little? ;)
00:02:16 <calamari> nah.. I bet it was spewing all sorts of errors to the console
00:02:28 <calamari> but if the console isn't visible.. well :)
00:02:42 <calamari> works fine in windows using 1.5
00:03:21 <lindi-> segfaults jamvm in some mysterious way
00:03:41 <lindi-> but it only happens after it has looped for a long time in bf code
00:11:03 <{^Raven^}> calamari: what is the cell width in the debugger? are cells supposed to be able to hold -ve numbers?
00:12:26 <Keymaker> i saw that same thing today somewhere else but couldn't realize what it meant.. i see now
00:12:28 -!- graue has joined.
00:13:13 <calamari> raven: thanks :) int sized cells
00:13:25 <calamari> I should provide an 8-bit option, shouldn't I
00:14:29 <calamari> will do.. working on it anyways (to allow *.bf, fixed the 1.5 bug)
00:14:42 <calamari> can you paste non-char text into the input box now?
00:15:29 <{^Raven^}> yes, but I am not sure if it's correct
00:16:11 <calamari> (that's why ints were convienient)
00:16:25 <{^Raven^}> how about File>LoadInput to load a file into the input tab?
00:25:13 <{^Raven^}> lindi-: hey, this Sun Java is waaaaaa(etc)ay faster than libgcj
00:31:32 -!- Keymaker has left (?).
00:35:21 -!- calamari has quit ("Leaving").
00:37:14 -!- calamari has joined.
00:41:11 <{^Raven^}> calamari: I have hit a brick wall with the emulator, array bugs that cannot be kludged :((
00:42:31 * {^Raven^} wishes he knew java well enough to fix all these
00:42:43 <calamari> I have a few more of those features to add ;)
00:42:58 <calamari> then I'll check out the array code
00:43:34 <{^Raven^}> thx, I really hate to keep bugging you about BFBASIC, esp since you have a life and all
00:46:18 <{^Raven^}> or is it an occupational hazard for all of us programmer types?
01:01:51 <calamari> got the load/save done, now working on bit width
01:10:57 -!- tokigun has joined.
01:16:32 <BigZaphod> your 99 bottles is #2 on the 99 bottles of beer site. ;) good stuff.
01:21:05 <tokigun> BigZaphod: i've submitted more 99 bob programs... :)
01:21:16 <tokigun> http://www.99-bottles-of-beer.net/language-r4-script-762.html and http://www.99-bottles-of-beer.net/language-windows-nt-batch-763.html
01:22:36 <BigZaphod> I saw those in the recently added list on the site. :)
01:26:30 <tokigun> r4 is visualization software that provides custom scenes, network interfaces, and so forth.
01:26:58 <tokigun> (usually i used r4 visualization plugin for r4)
01:28:22 <tokigun> i'm thinking about 99 bob program in Piet, Gammaplex, RUBE, Aheui. :)
01:29:11 * {^Raven^} is thinking about a spoon / whirl polyglot (just thinking tho)
01:29:48 <BigZaphod> tokigun: those would be fun to see...
01:30:30 <tokigun> {^Raven^}: whirl polyglot? :)
01:30:48 <tokigun> you mean whirl-c polyglot?
01:31:10 <{^Raven^}> tokigun: i mean a whirl-spoon polyglot
01:31:40 <tokigun> i see. i didn't see "spoon". :)
01:33:21 <{^Raven^}> i'd guess it would be impossible to do anything meaningful
01:46:32 <graue> write a program that generates a whirl-spoon polyglot for you
02:00:30 -!- graue has left (?).
02:48:28 -!- heatsink has quit ("Leaving").
03:15:47 -!- puzzlet has quit (Read error: 54 (Connection reset by peer)).
03:20:17 -!- puzzlet has joined.
03:53:43 -!- BigZaphod has quit.
04:25:39 -!- BigZaphod has joined.
05:15:23 <lindi-> {^Raven^}: you compared it to gij? ;) gcj should be bit closer
05:23:55 -!- calamari has quit (Read error: 60 (Operation timed out)).
05:31:54 -!- graue has joined.
06:02:03 -!- graue has quit.
06:12:15 -!- calamari has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:37:39 -!- entri has joined.
08:53:09 -!- entri has quit.
08:56:17 <calamari> raven: got the new version done: http://kidsquid.com/programs/bf/bf.html
08:57:02 <calamari> raven: I realized I'm setting EOF = 0, but it'd probably be nice to make than an option (0, max value, unchanged).. too tired to do it now, though
08:58:04 <calamari> you'll notice a blue marker (and magenta when blue and red overlap).. this is the highest memory cell accessed. Useful for bf golf contests ;)
08:58:38 -!- calamari has quit ("<=K").
13:30:22 <{^Raven^}> I need some inspiration for the name of a project I'm working on (currently called <insertnamehere>!:)
13:39:58 -!- malaprop has joined.
13:50:03 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
13:56:39 -!- jix has joined.
14:03:03 <pgimeno> sometimes what is esoteric is the usage of a language rather than the language itself... http://www.unidex.com/turing/utm.htm
14:15:26 <{^Raven^}> There seems to be a requirement that all existant UTMs/FSMs must have hellow, 99bobb amd rot13 implemented
14:16:02 <{^Raven^}> The holy trinity (sic) of example programs :)
15:35:27 <cpressey> it's ever so comforting to know that your text processing tools are subject to the halting problem
15:54:59 <cpressey> the 'cur' and 'last' links in the wiki history pages don't seem to be working. they don't take me to diffs, they just take me back to the article page.
15:57:25 <pgimeno> which page, cpressey? it works for me
15:58:30 <cpressey> pgimeno: i was trying on the smallfuck history page
15:59:18 <cpressey> it just links down to the bottom ('preview') part of the diff, which looks just like the main article
15:59:26 <cpressey> i had to scroll up to notice the difference
16:17:09 -!- CXI has changed nick to test.
16:17:11 -!- test has changed nick to CXI.
16:37:28 <ZeroOne> Keymaker: why is bf-hacks.org down?
16:38:11 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
16:38:31 -!- CXI has joined.
16:41:34 -!- CXI has quit (Client Quit).
16:42:51 -!- CXI has joined.
16:42:55 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
16:43:34 -!- CXI has joined.
16:43:53 -!- CXI has quit (Client Quit).
16:44:00 -!- CXI has joined.
17:21:10 -!- BigZaphod has quit.
17:22:29 -!- calamari has joined.
17:23:02 -!- calamari has quit (Remote closed the connection).
18:01:25 -!- BigZaphod has joined.
18:18:47 -!- calamari has joined.
18:19:00 -!- calamari has quit (Remote closed the connection).
18:26:46 -!- calamari has joined.
18:34:37 -!- J|x has joined.
18:43:48 -!- jix has quit (Read error: 110 (Connection timed out)).
18:49:00 -!- J|x has changed nick to jix.
18:49:06 -!- jix has left (?).
18:49:11 -!- jix has joined.
18:55:04 <calamari> I put that bit debugger online, dunno if you saw my announcement on that
18:55:23 <calamari> http://kidsquid.com/programs/bf/bf.html
18:55:59 <calamari> I've made some improvements to the bf version that I need to backport to the bit version
18:56:12 -!- calamari has quit ("Leaving").
18:56:15 <{^Raven^}> calamari: have had it running a test program for 5 hours and all is well
19:56:36 -!- J|x has joined.
20:12:06 -!- jix has quit (Read error: 110 (Connection timed out)).
20:18:06 -!- J|x has changed nick to jix.
21:14:02 -!- calamari has joined.
21:15:33 <{^Raven^}> calamari: I have been running your debugger through a test cycle for the last 8 hours and all is well
21:15:34 <calamari> raven: glad to hear it.. sorry it's taking so long to run a program, though :)
21:16:02 <calamari> maybe there should be a fast run button where it just goes for it without all the updating
21:16:47 <calamari> I haven't had a chance to put my array code on the bench and check it out..
21:16:53 <{^Raven^}> maybe one option would run until the next ','
21:17:21 <{^Raven^}> but an occasional window refresh would be good
21:17:40 <calamari> also, I realized my Pass button isn't right.. it stops on ], but it should actually run until the loop is complete
21:18:29 <calamari> so there can be more options :)
21:18:31 <{^Raven^}> Maybe File>SaveInput could be changed to File>SaveOutput as loading input and saving output seems more logical
21:18:45 <calamari> I was looking into making a toolbar for them, but didn't want to get sidetracked
21:19:04 <calamari> do you need to have the output of a program run?
21:19:35 <calamari> I figured that the input is what needed to be saved, for repeated testing, etc
21:19:43 <{^Raven^}> not really and copy/paste is more convenient
21:19:54 <calamari> But, it's easy enough to add a Save Output option, so I will :)
21:19:54 <{^Raven^}> ahh, i see. Yes that does sound betetr
21:20:41 <{^Raven^}> The Java GUI stuff (source code) looks deceptivly simple
21:22:39 <calamari> yeah.. that pretty much sums it up
21:22:52 <calamari> lots of work ent into those lines though, believe me :)
21:27:01 <{^Raven^}> I have been fleshing out my processor design
21:27:25 <calamari> did oyu get past that last bfbasic bug that was stopping you last night?
21:27:37 -!- graue has joined.
21:28:14 <{^Raven^}> no, the bug is too deep in the compiler to workaround :(
21:31:19 <{^Raven^}> the line is originally array(val1) = array(val1) + array(val2)
21:31:51 <{^Raven^}> but it seems to compile to array(val1) = array(val1)
21:38:54 -!- Kmkr has joined.
21:38:56 <calamari> is that what is printed by the debug output ?
21:39:32 <calamari> bbiam.. moving this pterminal to a different computer :)
21:39:36 -!- calamari has quit ("Leaving").
21:40:15 -!- calamari has joined.
21:40:22 <Kmkr> hi.. /whois tells me that i'm Keymaker
21:40:32 <Kmkr> i mean /whois Keymaker
21:41:06 <{^Raven^}> calamari: I have PRINT array(val1) statements around the assignment
21:41:12 <calamari> it'd be nice to be able to use @var's inside the debugger, wouldn't it :)
21:41:48 <calamari> I need to make a list of all this stuff otherwise I'm gonna forget
21:42:20 <{^Raven^}> with BFBASIC compiled to debug output you can see which statement you are in
21:43:13 <{^Raven^}> what you need is the ability to set breakpoints, so you can run a program to the breakpoint
21:44:45 <Kmkr> ZeroOne: when? it must've been something very temporary, i hope. it has worked for me every time i've been there today
21:45:09 <Kmkr> (it's my start page in opera)
21:45:30 <{^Raven^}> compile to debug output, set breakpoint around the code in question, run silently (and quickly) to the breakpoint, and then step through the code at the point of the suspected bug
21:47:45 <calamari> wonder how I can set a breakpoint.. perhaps just a special character in the code, like #
21:48:09 <calamari> since that's the traditional bf debugging symbol
21:48:40 <calamari> actually, that'd be extremely easy
21:48:56 <{^Raven^}> for @vars, add an option to BFBASIC to output out a @var map at the top of the output
21:50:00 <{^Raven^}> etc, the debugger would read these from the source on program load
21:50:06 <Kmkr> btw, what you're talking about?
21:50:20 <calamari> raven: oic, symbolic debugging.. nice :)
21:50:59 <calamari> that's even easier than what I was thinking of doing, so it's good :)
21:51:40 <calamari> keymaker: working on bfdebug, a java swing debugger I've written recently
21:51:49 <calamari> trying to make it more useful :)
21:51:54 <{^Raven^}> kmkr: were talking about a really nice BF debugger in java calamari wrote
21:53:24 <Kmkr> that sounds useful
21:53:35 <Kmkr> sometimes i spend hours hunting some bug
21:53:51 <Kmkr> and mostly it's because of one instruction in wrong place
21:53:51 <calamari> keymaker: http://kidsquid.com/programs/bf/bf.html
21:58:05 -!- graue has quit (Remote closed the connection).
21:58:35 * {^Raven^} has spent days tracking down fencepost errors
22:04:32 <calamari> $varName=cellNumber (how's this for the defines)?
22:04:41 <{^Raven^}> calamari: would it be possible to make [-] an optional special case in Interpreter.java so it does setCell(_mp, 0);
22:05:34 <calamari> and it'll just be # for the breakpoints, placed by the user
22:06:33 <calamari> I can't remember.. are the @var's produced by bfbasic uppercase ?
22:08:22 <calamari> okay, I'll make them case insensitive in the debugger then
22:08:43 <{^Raven^}> how about breakpoints being disabled until the first BF instruction is encountered? It will save false positives if the program has a unix header.
22:09:23 <calamari> would a different breakpoint character be preferred?
22:09:34 -!- graue has joined.
22:10:26 <calamari> okay... I was just trying to avoid adding that extra state, but it can be done :)
22:10:34 -!- graue has quit (Read error: 54 (Connection reset by peer)).
22:11:08 -!- graue has joined.
22:11:15 <{^Raven^}> I'm on a quest to make brainfuck interpreter authors to add that particular usage
22:11:42 <{^Raven^}> but since we're dealing with BFBASIC debug output here it's not much of an issue
22:13:21 <{^Raven^}> graue: i like your anti-(mp3/ogg)-streaming php script
22:14:02 <jix> anti-(mp3/ogg)-streaming php script??
22:15:42 <{^Raven^}> it encourages users to download mp3s before listening to them instead of just streaming them from the server
22:16:06 <jix> i would add itunes too
22:16:21 -!- graue has quit (Remote closed the connection).
22:16:47 -!- graue has joined.
22:17:21 <jix> User-Agent: iTunes/4.8 (Macintosh; N; PPC)
22:17:41 <{^Raven^}> i'm looking for a way to stop storm downloads of music aswell
22:17:56 <jix> storm downloads?
22:18:52 <{^Raven^}> when you have multiple connections to a server each downloading different parts of a file
22:19:56 <jix> tell apache to disallow downloads by file position
22:20:11 <{^Raven^}> multiply that by 40 or so mp3s and you have no bandwidth for a very long time
22:20:36 <{^Raven^}> I need resume enabled though for people with dodgy# connections
22:21:32 <jix> in php is it possible to execute some code if the user disconnects?
22:22:07 -!- Kmkr has quit (Read error: 110 (Connection timed out)).
22:22:53 <jix> you could use a mysql db with a lock table.. if a user starts a download the script puts the ip into the table if the user is done with the download it removes it
22:23:44 <jix> and all ip:s that are older than 24h are removed (if the php script terminates without deleting the entry)
22:24:24 -!- graue has quit (Remote closed the connection).
22:24:29 * jix has to go to bed
22:25:07 -!- jix has quit ("Banned from network").
22:48:40 -!- calamari has quit ("Leaving").
22:49:11 -!- graue has joined.
23:06:50 <BigZaphod> I just finished up another silly language for those who might be interested: http://www.bigzaphod.org/taxi/
23:06:58 -!- graue_ has joined.
23:09:22 -!- graue_ has quit (Remote closed the connection).
23:11:11 -!- graue has quit (Read error: 60 (Operation timed out)).
23:23:59 <{^Raven^}> BigZaphod: That looks seriously freaky :)
23:25:21 -!- graue_ has joined.
23:37:58 -!- graue_ has quit (Remote closed the connection).
23:38:46 -!- graue_ has joined.
23:41:36 -!- graue_ has quit (Remote closed the connection).
00:20:52 -!- BigZaphod has quit.
00:22:44 -!- graue_ has joined.
00:29:13 -!- graue_ has quit (Remote closed the connection).
00:29:59 -!- graue_ has joined.
00:39:23 -!- calamari has joined.
00:40:39 -!- graue_ has quit (Remote closed the connection).
00:41:22 -!- graue_ has joined.
01:17:59 -!- sergacity has joined.
02:08:38 -!- BigZaphod has joined.
02:19:16 -!- calamari has quit ("Leaving").
03:05:47 -!- graue_ has quit (Remote closed the connection).
03:07:02 -!- graue_ has joined.
03:07:15 -!- graue_ has changed nick to graue.
03:23:40 <BigZaphod> echo is pretty easy in taxi: Go to the Post Office: west 1st left, 1st right, 1st left. Pickup a passenger going to the Post Office. Go to Tom's Trims: north. Go to the Post Office: south. Go to the Taxi Garage: north 1st right, 1st left, 1st right.
03:24:05 <graue> there's an esolang called taxi?
04:39:15 <GregorR> That is the greatest thing I have ever seen XD
04:39:30 -!- malaprop has quit ("sleep").
04:57:25 <GregorR> I've made an installer system, and now I'm making a packaging system.
04:57:41 <GregorR> For totally different audiences, but, how can I be so obsessed with installation of packages? Oy.
05:09:13 <graue> I am going to sleep good night
05:09:14 -!- graue has quit.
06:13:27 -!- BigZaphod has quit.
06:20:56 -!- calamari has joined.
06:53:26 -!- BigZaphod has joined.
07:03:37 <cpressey> for my own part i have produced this today: http://catseye.webhop.net/projects/alpaca/eg/braktif/src/braktif.alp
07:04:01 <cpressey> Smallfuck/Brainfuck F-as-a-cellular-automaton
07:18:32 <calamari> is life the simplest turing complete automaton ?
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:35:43 <cpressey> calamari: i can't think of a simpler one :)
08:37:01 <calamari> life is 3x3, right? I wonder if there can be a 2x2
08:38:14 <pgimeno> am I the only one who thinks that Wireworld is simpler than Life?
08:38:33 <pgimeno> not in number of states but anyway
08:39:38 <pgimeno> cpressey: just curious, does the sketch of proof by Minsky use encoded counters as a single integer?
08:40:10 <pgimeno> (re discussion in Talk:Befunge)
08:50:47 <pgimeno> cpressey: nice work the cellular automaton; I still have to figure out how it works though
09:20:15 -!- calamari has quit ("Leaving").
09:24:57 <lament> wireworld makes a lot more sense than Life
09:28:05 <lament> mathworld never actually explains in what sense is the rule 110 automaton "universal".
10:00:28 <mtve> there is also KS-lambda UTM, which has three elements (two bits) like ` is 1, K is 00 and S is 01.
10:01:33 <mtve> http://homepages.cwi.nl/~tromp/cl/cl.html
11:00:00 -!- jix has joined.
11:44:51 -!- hashendgame has joined.
12:59:17 -!- malaprop has joined.
13:05:42 -!- jix has quit ("This computer has gone to sleep").
13:09:37 -!- hashendgame has quit ("Leaving").
15:40:54 -!- graue has joined.
16:20:42 -!- graue has left (?).
16:21:25 -!- jix has joined.
17:15:52 -!- BigZaphod has quit.
18:08:44 <cpressey> pgimeno: yes, he uses prime factorization encoding at various points...
18:14:27 <cpressey> lament: sorry. i assumed calamari was talking about 2d cellular automata...
18:25:27 <cpressey> pgimeno: yeah, i checked - he mentions a 3-register machine and a 5-register machine... he emulates the 3-register machine in a 2-register subtract/jump machine by encoding the 3 registers into one (2^a*3^m*5^n) and using the other as scratch. he then argues that the 5-register machine can be simulated on a 1-register multiply/conditional-divide machine with all five encoded as (2^a*3^b*5^c*7^d*11^e)
18:33:06 <cpressey> of course, in befunge, you can make life easier by storing the data in one register and the program in the other... and you can use a less pathological encoding for the program (e.g. 8 bits per symbol)
18:41:30 <cpressey> lament: actually they do, on http://mathworld.wolfram.com/UniversalCellularAutomaton.html and http://mathworld.wolfram.com/Universality.html
18:42:16 <cpressey> i agree they don't do a good job, though... they neglect to mention any other meanings of universality (e.g. construction-universal)
18:48:33 <lament> cpressey: i don't get those pages
18:49:02 <lament> they say rule 110 can emulate the other automatons
18:49:20 <lament> that's obviously not universality in the Turing sense
18:51:21 <cpressey> "Universal systems are effectively capable of emulating any other system." ?
19:00:30 <cpressey> i suppose if you can avoid the parts of mathworld that sound like free advertising for NKS, it's not _that_ bad...
19:01:31 <lament> i just wish they gave me a free copy of Mathematica
19:03:07 <lindi-> lament: have you used maxima?
19:04:31 <lament> why give me access to Lisp
19:04:33 <lament> i don't want your lisp
19:06:04 -!- BigZaphod has joined.
19:06:47 <cpressey> lindi-: NKS = "A New Kind of Science", wolfram's (monstrous) book
19:06:50 <lindi-> lament: you can do a lot with maxima without even knowing it's written in lisp
19:07:25 <lindi-> lament: that especially applies to wxmaxima, try it, you'll be surprised ;)
19:07:31 -!- calamari has joined.
20:05:18 -!- J|x has joined.
20:10:11 -!- jix has quit (Nick collision from services.).
20:10:12 -!- J|x has changed nick to jix.
20:35:05 -!- guest_2566 has joined.
20:35:17 -!- guest_2566 has changed nick to jimbo00000.
20:38:31 <calamari> yay, help system implemented.. how I just need to write up the html for it :)
20:39:21 <jimbo00000> Hey all, does anyone still have any interest in Befunge93?
20:43:57 <calamari> I haven't really studied befunge much.. I didn't learn of it until after bf, and so I got hooked on the tarpit idea :)
20:45:13 <jimbo00000> well i just made this real neat befunge interpreter in flash (http://jimbomania.com/code/flunger.html), only to find most of the links and mailing lists dead
20:47:00 <calamari> I need to figure out why flash doesn't work.. very annoying
20:47:24 <calamari> I like flash programs.. always look very smooth
20:48:44 <jimbo00000> yea, totally - get that plugin running. the pc leaves behind alpha scaled trails over the code space
20:51:01 <jix> jimbo00000: wow the interpreter is cool
20:52:22 <jix> but the trail is too short in the random-song example
20:52:37 <jimbo00000> hey, thank you very much! you can adjust the trail length with the slider in the lower left
20:52:56 <jimbo00000> up to 100 spaces back - gotta click the handle again if youre restarting
20:53:12 <jix> yes its on 100 but the trail is only 1 char long
20:53:27 <jix> or 2..3 but not 100
20:54:44 <jimbo00000> hmmmm that does not seem correct... this is a brand new thing so bugs may abound
20:54:59 <jix> can you reproduce the bug?
20:55:09 <jimbo00000> maybe try kicking that widget once or twice - no, im getting 100 tyrails over here
20:55:28 <jimbo00000> sometime what happens is flash doesnt register the end of the drag event if you release outside of the movieclip
20:55:31 <jix> a reload did it
20:56:33 <jimbo00000> i'm not 100% sure the g and p instructions work perfectly - does anyone perchance have any diagnostic programs to test it?
20:56:54 <jimbo00000> or maybe some idea on how to write a good one...
21:00:40 <calamari> hmm, I get just a black screen .. is that normal?
21:03:18 <jimbo00000> no, what you should see is a 80x25 textfield labeled "Funge Space"
21:03:37 <jimbo00000> and a stack, and a gray frame that says "Welcome to Flunger"
21:03:49 <calamari> weird... this page worked, so I assume Flash is okay http://www.jengajam.com/r/ultimate-pong
21:04:08 <jix> jimbo00000: hey.. why not write an interactive flash interpreter for: http://esolangs.org/wiki/YABALL
21:05:33 <jimbo00000> oooo kinky - i had thought of making a SNUSP mode too
21:05:47 <jimbo00000> shouldn't be so hard given the existing graphical framework
21:06:06 <jix> but SNUSP isn't written by myself
21:07:38 <jix> Why H and not Harder?
21:07:52 <calamari> jimbo00000: I'm on linux so that's probably what's wrong
21:08:04 <calamari> maybe linux flash it out of date
21:08:32 <jimbo00000> calamari: i compiled it for flash player 7
21:08:58 <jimbo00000> jix: i dunno. what was your inspiration for the language?
21:09:54 <lindi-> calamari: argh. flash is even worse than java at the moment ;)
21:10:01 <calamari> jimbo: do you know of a website with a flash program that prints the flash version number?
21:11:37 <jix> jimbo00000: in Brainfuck [] can be nested.. so one needs "complex" parsing or counting the ] and [s for loops.. i wanted to avoid that
21:13:43 <jimbo00000> so the memory model is like Brainfuck's? a 1D array?
21:14:23 <jix> just the code flow is different
21:14:53 <calamari> jix: I currently know of 3 ways to deal with [], I
21:15:35 <jix> 1: at a ] go back and for every ] count++ for every ] count-- stop at count == 0 start with count=1
21:15:40 <calamari> 1) stack, 2) search for matching [] 3) convert [] to jumps before execution
21:16:06 <jix> 2: do the same thing once for all loops and store them as linked list or whatever
21:16:07 <calamari> 3 is the fastest that I know of.. no stack needed :)
21:16:18 <jix> my nr. 2 is your nr. 3
21:17:18 <jimbo00000> I was thinking of making a button to toggle blocking on input in the interpreter - anyone think that would be practical?
21:17:29 <jimbo00000> what is the procedure if there no input waiting - just push 0?
21:18:02 <jix> push 0 or don't push at all
21:18:20 <jix> i think don't push at all is more flexible
21:18:21 <calamari> jimbo: I don't think I can use the interpreter correctly yet.. the A-Z program just goes around the first row over and over :)
21:19:23 <jimbo00000> Hmmm yea, thats not right. You know, I haven't tested this in linux yet.
21:19:45 <jix> on mac os x it works.. but sometimes there is this trail bug
21:21:01 <calamari> trails seem fine.. 50% looks pretty good
21:21:22 <jix> jimbo00000: are you going to release the source code?
21:21:48 <cpressey> jimbo00000: re befunge-93 example programs to test with: http://catseye.webhop.net/projects/befunge93/eg/
21:23:02 <calamari> I assume the v instruction means go down
21:23:04 <jimbo00000> jix: yea, sure. least i could do - thanks for the awesome languages!
21:23:13 <calamari> I guess that's what's not happening :)
21:23:30 <jimbo00000> all the source is in flash actionscript, very similar to javascript and c
21:28:41 <jimbo00000> cpressey: Thanks for the funges! what happened a couple of months ago, i thought your site went down for good?
21:30:37 <cpressey> jimbo00000: it moved to the current address about 2 years ago
21:32:01 <cpressey> there's also a strange error with the webserver<->subversion thing that i haven't been able to track down, so it's not been the most reliable in the past months
21:32:30 <cpressey> but now i'm restarting the webserver nightly, so it should be "OK"
21:36:09 <cpressey> jimbo00000: btw, thanks for making the interpreter... unfortunately i have no way to test it until i get near a machine that i can use flash on :(
21:43:49 <jimbo00000> Does anyone here ever mess with choon?
21:44:21 <jimbo00000> do anything cool with it? i just found that page today
21:44:49 <pgimeno> http://www.99-bottles-of-beer.net/language-choon-750.html
21:50:14 <jimbo00000> would it be possible to port the interpreter and the wav converter to php, for the integrated web choon experience?
21:59:34 <mtve> jimbo00000: excuse me, what should i do after entering execution mode?
22:00:05 <mtve> oh, i got it, i got it.
22:03:13 -!- graue has joined.
22:05:52 -!- jix has quit ("Banned from network").
22:06:45 <mtve> jimbo00000: it appears 'p' won't hold values with ascii value less than 32, isn't it?
22:07:54 <mtve> it replaces them with symbol "?" (ascii 63).
22:08:31 <jimbo00000> mtve: that sounds correct, yes, and the upper limit is ASCII 126
22:08:49 <jimbo00000> is this correct behavior? i think i saw that javascript funge interpreter do it
22:09:37 <mtve> i doubt it. at least few known programs expect values to be kept intact.
22:10:41 <jimbo00000> hmmm so i should just dump the value there, even if it is unprintable?
22:11:27 <jimbo00000> I'll have to find some hackaround for that, as flash will most likely balk at the unprintables
22:14:43 <jimbo00000> has anyone ever tried to mate choon with funge?
22:14:44 <mtve> yep. it wasn't explicitly told in the spec, but it would be good. and yes, interpreter is very nice.
22:16:01 <jimbo00000> I just had a wild idea - concurrent pcs in a 2d space executing choon, making chords possible
22:18:10 -!- calamari has quit (Read error: 60 (Operation timed out)).
22:20:32 <pgimeno> actually choon is not the kind of language I feel comfortable with
22:22:13 <jimbo00000> I am most attracted to the musical aspect of choon, more so than its syntax
22:28:06 -!- graue has quit.
22:30:36 <pgimeno> I've been looking for an UTM program with two symbols but have been totally unsuccessful. A book by Roger Penrose has a description. Does anyone know of a TM program implementing an UTM?
22:34:21 <cpressey> pgimeno: yes, there are a few in the Minsky book. (it's actually a really nice book, i wish i'd found it a lot earlier...)
22:34:23 <pgimeno> (I have the book, The Emperor's New Mind, but have lent it to someone I might not see again)
22:34:42 <pgimeno> what's the name of the book?
22:34:51 <cpressey> Computation: Finite and Infinite Machines
22:35:10 <pgimeno> the name sounds pretty attractive
22:35:20 <cpressey> i can scan or type in one of the UTM state diagrams if you can't find it
22:35:26 <pgimeno> Minsky's design is... 46 or so states long, right?
22:35:52 <cpressey> :) he was a tarpit fan too.... he has a 4 state x 7 symbol UTM
22:35:56 <pgimeno> (IIRC, for what I have seen googling)
22:36:33 <cpressey> sorry, that's 4 symbols, 7 states
22:36:41 <pgimeno> yeah, the Wikipedia article (or was it the Wolfram one?) has the records
22:36:53 <pgimeno> there's a 2-state one in 18 symbols IIRC
22:38:05 <pgimeno> I've been googling for a while and seen all that
22:38:23 <pgimeno> but I've found no description of a TM program
22:38:58 <cpressey> hrm, so you want one that is 2 symbols, explicitly?
22:39:16 <pgimeno> yeah, for the extended Befunge-93 proof :)
22:40:49 <pgimeno> my idea is to use the two counters as two bit stacks as in part 1 of the counter article
22:40:52 <cpressey> there's one that never erases a symbol once written...
22:41:29 <cpressey> blank and 1, and blank -> 1 but 1 never -> blank
22:41:35 <pgimeno> reminds me a lot of smith :)
22:42:15 <cpressey> anyway, for the b93 proof... if i were to try it i'd probably do the multiply/conditional-divide model, since Befunge has those instructions
22:42:34 <cpressey> so you can use the other for holding the program
22:42:41 <cpressey> which should make things MUCH easier, i'd think
22:42:44 -!- calamari has joined.
22:43:03 <jimbo00000> Gentlemen, it has been a pleasure to be in such esteemed company. Have an excellent evening.
22:43:08 <pgimeno> yeah, but I don't want to use exponential encoding because I'd like to try it with a real machine
22:43:11 -!- jimbo00000 has quit ("Today is a good day to chat.").
22:44:40 <cpressey> you could implement bigints *as* a prime factorization internally - that would make it feasible (i think) - but it would make implementing add/subtract, um, "interesting"... but on the other hand, you don't ever have to *use* add or subtract...
22:45:22 <cpressey> anyway, all the 2-symbol UTMs seem to be conversions from tag systems (which are neat in themselves.)
22:46:26 <pgimeno> my idea is to use the Befunge 80x25 playfield to implement the handling of stacks and the FSM (Turing program), and the two counters as two bit stacks that implement the tape
22:46:57 <pgimeno> the state will be maintained by the program counter, probably
22:47:14 <cpressey> you know, you could almost use 2-symbol brainfuck (brainfuck f/smallfuck)
22:48:05 <cpressey> it's easier to reason about than most of these "proof that such a machine must exist (no explicit construction given though)" things :)
22:50:50 <pgimeno> I suppose that writing a boolfuck/smallfuck/bf F interpreter that uses the two counters as the cells would complete the proof
22:51:08 <lament> hey i like that bignums-as-primes idea
22:55:16 <pgimeno> is it just me or is the wiki down?
23:04:37 <pgimeno> I've just found the EsoLang FAQ :)
23:13:00 <calamari> does anyone have a backup mediawiki installation? I can redirect esolangs.org to point to it
23:16:55 <pgimeno> wooby and malaprop were the ones who offered to set up a mirror
23:17:11 <calamari> I'm downloading mediawiki just for fun
23:17:25 <calamari> I suspect the wiki will come back shortly.. but this is a good test :)
23:18:06 <pgimeno> so you can manipulate the esolangs.org domain? I thought it was wooby who controlled it
23:18:27 <calamari> wooby is in Iraq and he placed it in my care while he is gone
23:19:15 <calamari> I sure wouldn't want to be over there :)
23:20:44 <pgimeno> I just hope he returns in perfect shape
23:21:04 <calamari> as do I.. suprised he didn't tell anyone else
23:22:17 <pgimeno> maybe he thought it was offtopic here or something
23:29:25 -!- BigZaphod has quit.
23:46:55 <calamari> got the @ stuff working in the debugger
23:47:13 <calamari> haven't changed bfbasic yet, though.. so it's not much use :)
23:47:26 <{^Raven^}> hey cool, that debug run is still going from the other day :)
23:48:23 <calamari> what will that give you? a c program that converts bf to c?
23:48:41 <calamari> I could write that in much less than a day ;)
23:49:06 <{^Raven^}> It's just a test run that I've not bothered to terminate...
23:50:41 <{^Raven^}> I have the C version of my emulator 75% finished, I'm writing it as a reference against the future BF version
23:53:13 <calamari> raven: how long till you go to bed? wondering if I want to mess with bfdebug more or release it now
23:54:42 <calamari> it turns out that only mysql 4.1+ can import dumps.. My shell provider is running mysql 4.0 :(
23:55:59 <calamari> afk, going to see if I can get them to install 4.1
23:56:39 -!- Kmkr has joined.
23:56:57 <Kmkr> jimbo00000: really cool befunge interpreter!
23:59:30 <Kmkr> wooby's in iraq? i hope everything goes well.
00:00:19 <Kmkr> for some reason i thought graue controlled the wiki..
00:00:51 <Kmkr> hmm, then what wooby does?
00:01:07 <Kmkr> ah. me see now
00:10:00 <{^Raven^}> i can convert it to an earlier version of SQL but not without losing metadata so no luck here as I don't want to corrupt that
00:12:28 <calamari> I heard I could modify mysql table headers, but I have no clue how to
00:13:18 <{^Raven^}> easy(ish), first remove the instances of ` in SQL commands
00:13:32 <{^Raven^}> and then remove all the CHARSET stuff
00:14:19 <{^Raven^}> you need to remove the charset stuff from the INSERT statements too
00:14:29 <calamari> for 4.1 to 4.0 I need to do this?
00:16:29 <{^Raven^}> for some of it yes, but I recommend against it, you will destroy too much information
00:17:05 <{^Raven^}> do you know any friendly sysadmins who could host it for a while?
00:18:00 <calamari> nope.. well I know some.. but they wouldn't know how to set it up :)
00:19:02 <{^Raven^}> hmmm, it should be pretty simple, create database + account, install mediawiki, import database
00:19:24 <{^Raven^}> my MySQL/PHP can be tough for a newbie to setup
00:21:17 <Kmkr> bigzaphod: really cool language :D
00:27:43 -!- Kmkr has quit ("I've seen this dj vu before..").
00:31:14 <{^Raven^}> calamari: a competent person should be able to set it up remotely given ssh / webmin access
00:33:50 <calamari> raven: afk a minute.. jarring/releasing 1.20
00:41:58 -!- heatsink has joined.
00:47:01 -!- graue has joined.
00:47:29 <calamari> raven: http://kidsquid.com/programs/bf/bf.html
00:49:54 <graue> why would I be having fun with it?
00:50:08 <graue> oh, because it's down
00:51:14 <calamari> I've been trying to set up mediawiki on my webspace, but have 4.0
00:53:00 <calamari> graue: I'd like to request daily dumps when it comes back, because of all the activity.. a week loses a lot
00:56:46 <{^Raven^}> Now if "Now @varname goes to the cell defined by varname (note: it can be derailed with < and >)" does what I think it does that's really cool
00:57:25 <calamari> yeah.. it doesn't just jump to the cell, because that's impossible in normal bf
00:57:43 <calamari> @a>@b will bump you one past actual @b
00:58:42 <{^Raven^}> does this mean that we could theoretically compile a BFBASIC program without parsing it through arrows() and it should still work as long as the varmap is present?
01:00:03 <{^Raven^}> I have thought about that feature, even produced the required version of BFBASIC (last week)
01:01:25 <{^Raven^}> This will allow the integrity of the parser proper to be tested since all the @var stuff would be theoretically perfect!
01:01:34 <calamari> have you tried $ yet? there's a hidden bonus feature :)
01:02:28 <{^Raven^}> Definately, I have added a cvarmap to a short program which is running atm
01:03:36 <{^Raven^}> Would the bonus be a window refresh every thousand or so cycles? I have definitly noticed that
01:05:13 <calamari> nope.. it's the varnames on the memory list
01:05:59 <calamari> I haven't added that quick run stuff yet
01:06:34 <{^Raven^}> That's the first thing I spotted :)
01:07:28 <calamari> oops, I forgot to change the version # in the code
01:10:18 -!- BigZaphod has joined.
01:11:02 <calamari> okay, uploaded the version fixed 1.20, also fixed a small help bug while I was at it
01:11:53 <calamari> (if you closed help and came back, it wouldn't be back to the contents)
01:17:11 <{^Raven^}> I am running this on an extra debug version of a BFBASIC program with all the symbols defined
01:18:01 <{^Raven^}> i can see exactly which statement is currently being executed and what all the CVARS are :)
01:19:38 <calamari> I'd test the array code, but the wiki is down :/
01:20:21 <calamari> the support guy at my isp will try to get 4.1, so that's cool
01:21:12 <{^Raven^}> yeah, the first PRINT came out garbled but I'm using a non-standard BFBASIC atm
01:22:57 <{^Raven^}> calamari: garbled text seems to be my fault
01:29:22 <calamari> raven: I think what what I did with the @vars is called a wimpmode :)
01:31:42 <{^Raven^}> definately not, your debugger is going to be really useful for any brainfuck developer
01:35:16 <{^Raven^}> calamari: http://jonripley.com/~jon/action.png
01:54:03 -!- calamari has quit ("Leaving").
02:04:03 -!- graue_ has joined.
02:04:16 <graue_> why are there two of me?
02:04:47 -!- graue_ has left (?).
02:06:01 -!- calamari has joined.
02:13:18 <{^Raven^}> calamari: feature idea for BF debugger...
02:14:49 <{^Raven^}> calamari: the ability to vertically extend the memory view to show locations 16..31, 32..47, 48..63, etc
02:17:00 <{^Raven^}> *down on the amount of left<>right scrolling and make the debugger more transparant/useful
02:30:29 <calamari> raven: do you mean there would be 48 memory locations going across?
02:34:04 <calamari> that would really slow things down the way I'm currently drawing memory
02:34:18 <calamari> so I should fix the way I'm drawing memory :)
03:06:46 -!- graue has left (?).
03:26:08 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
03:26:20 -!- comet_11 has joined.
03:26:46 -!- comet_11 has changed nick to CXI.
03:35:19 -!- heatsink has quit ("Leaving").
03:37:40 -!- malaprop has quit ("quit").
05:15:12 -!- BigZaphod has quit.
05:29:16 -!- calamari has quit ("Leaving").
06:40:48 -!- calamari has joined.
07:10:34 <calamari> raven: my x(y)=z routine as on the wiki seems to work fine for x(4)=2 and x(0)=2. It uses 3 + 2 * (total # of indices) bytes of memory
07:29:12 <calamari> I've added an explanation of x(y)=z to the wiki page
07:37:32 -!- BigZaphod has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:46:11 -!- tokigun has joined.
09:05:37 -!- calamari has quit ("Leaving").
09:25:32 -!- {^Raven^} has quit (brown.freenode.net irc.freenode.net).
09:25:38 -!- mtve has quit (brown.freenode.net irc.freenode.net).
09:25:38 -!- pgimeno has quit (brown.freenode.net irc.freenode.net).
09:25:38 -!- ZeroOne has quit (brown.freenode.net irc.freenode.net).
09:26:10 -!- tokigun has quit (brown.freenode.net irc.freenode.net).
09:26:12 -!- cmeme has quit (brown.freenode.net irc.freenode.net).
09:26:12 -!- lindi- has quit (brown.freenode.net irc.freenode.net).
09:26:34 -!- tokigun has joined.
09:26:34 -!- cmeme has joined.
09:26:34 -!- lindi- has joined.
09:27:49 -!- ChanServ has quit (brown.freenode.net irc.freenode.net).
09:27:49 -!- fizzie has quit (brown.freenode.net irc.freenode.net).
09:27:49 -!- deltab has quit (brown.freenode.net irc.freenode.net).
09:27:49 -!- puzzlet has quit (brown.freenode.net irc.freenode.net).
09:27:51 -!- cpressey has quit (brown.freenode.net irc.freenode.net).
09:27:54 -!- CXI has quit (brown.freenode.net irc.freenode.net).
09:28:18 -!- puzzlet has joined.
09:28:18 -!- cpressey has joined.
09:29:34 -!- deltab has joined.
09:29:34 -!- fizzie has joined.
09:30:03 -!- CXI has joined.
09:31:20 -!- cpressey has quit (brown.freenode.net irc.freenode.net).
09:31:22 -!- puzzlet has quit (brown.freenode.net irc.freenode.net).
09:31:24 -!- cpressey has joined.
09:31:30 -!- puzzlet has joined.
09:43:31 -!- {^Raven^} has joined.
09:44:16 -!- pgimeno has joined.
09:47:03 -!- ZeroOne_ has joined.
11:29:22 -!- mtve has joined.
11:33:34 -!- ChanServ has joined.
11:33:34 -!- irc.freenode.net has set channel mode: +o ChanServ.
12:00:58 -!- ChanServ has quit (brown.freenode.net irc.freenode.net).
12:00:58 -!- mtve has quit (brown.freenode.net irc.freenode.net).
12:00:58 -!- CXI has quit (brown.freenode.net irc.freenode.net).
12:00:59 -!- fizzie has quit (brown.freenode.net irc.freenode.net).
12:00:59 -!- deltab has quit (brown.freenode.net irc.freenode.net).
12:00:59 -!- pgimeno has quit (brown.freenode.net irc.freenode.net).
12:01:01 -!- cmeme has quit (brown.freenode.net irc.freenode.net).
12:01:01 -!- lindi- has quit (brown.freenode.net irc.freenode.net).
12:01:01 -!- tokigun has quit (brown.freenode.net irc.freenode.net).
12:01:02 -!- ZeroOne_ has quit (brown.freenode.net irc.freenode.net).
12:01:02 -!- puzzlet has quit (brown.freenode.net irc.freenode.net).
12:01:03 -!- BigZaphod has quit (brown.freenode.net irc.freenode.net).
12:01:10 -!- {^Raven^} has quit (brown.freenode.net irc.freenode.net).
12:02:23 -!- ChanServ has joined.
12:02:23 -!- BigZaphod has joined.
12:02:23 -!- tokigun has joined.
12:02:23 -!- cmeme has joined.
12:02:23 -!- lindi- has joined.
12:02:23 -!- deltab has joined.
12:02:23 -!- fizzie has joined.
12:02:23 -!- CXI has joined.
12:02:23 -!- puzzlet has joined.
12:02:23 -!- {^Raven^} has joined.
12:02:23 -!- pgimeno has joined.
12:02:23 -!- ZeroOne_ has joined.
12:02:23 -!- mtve has joined.
12:02:23 -!- irc.freenode.net has set channel mode: +o ChanServ.
12:02:48 -!- CXI has quit (brown.freenode.net irc.freenode.net).
12:02:52 -!- CXI has joined.
13:00:43 -!- malaprop has joined.
13:50:28 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]").
13:59:50 -!- jix has joined.
14:33:35 -!- yrz\werk has joined.
14:34:01 <yrz\werk> for a hypercubical version of bf
14:35:18 <yrz\werk> (perfectly backward compatible)
14:36:24 <pgimeno> is it backward compatible in all directions?
14:37:35 <yrz\werk> is somewhere where i can post specification for the *new* language?
14:37:53 <pgimeno> http://www.esolangs.org/wiki/Main_Page
14:38:08 <yrz\werk> uff, was enough read the topic.
14:38:25 <pgimeno> well, not actually there; go to the Languages list, add it and create a page for it
14:44:20 <yrz\werk> pgimeno: are you english native speaker?
14:45:12 <yrz\werk> uff... anyway... do you take a look on my explication when i finish to edit?
14:47:24 <pgimeno> I'm afraid it will have to wait, as I'm a bit busy at work and eager to go home. Anyway, rest assured that someone (me or whoever finds it) will correct it if it's not clear enough. That's what a wiki is for, collaborative edits :)
14:55:36 <pgimeno> please take a look at other wiki articles to get a feeling of how the articles look like
15:13:40 <pgimeno> you can let others do the work if you like
15:14:09 <pgimeno> anyway it would be nice if the link to the interpreter is in the page
15:29:51 <jix> today in school i tried to write a BF interpreter in ti-89 basic.. but the screen is too small i lost control over my own code... :(
15:37:29 <jix> i'm going to write esolang interpreters for the ti-89/92+ (using ti-gcc because basic is slow)..
15:37:52 <jix> esolang programming at school.. yeah
16:31:09 <yrz\werk> can't i upload a tar.gz on http://esolangs.org/wiki/ ?
16:33:10 <malaprop> No, you have to beg someone with CVS access to put it in the files section for you.
16:44:05 <yrz\werk> malaprop: do you have such access?
16:47:37 <malaprop> No. I have no idea who has access beyond graue.
16:49:42 <yrz\werk> i would upload my hcbf interpreter.
17:22:03 -!- BigZaphod has quit.
17:25:11 -!- yrz\werk has quit (Read error: 110 (Connection timed out)).
17:42:26 -!- CXI has quit (Connection timed out).
17:57:47 -!- BigZaphod has joined.
17:57:52 -!- CXI has joined.
18:11:23 -!- yrz\werk has joined.
18:11:55 -!- comet_11 has joined.
18:12:33 -!- CXI has quit (Nick collision from services.).
18:12:35 -!- comet_11 has changed nick to CXI.
18:12:50 <pgimeno> yrz\werk: I'm back home and have CVS access
18:13:46 <pgimeno> what's the license of the interpreter?
19:10:08 -!- cmeme has quit (Connection reset by peer).
19:10:53 -!- cmeme has joined.
19:20:25 -!- cpressey has quit (Remote closed the connection).
19:20:27 -!- cpressey has joined.
19:30:23 -!- calamari has joined.
19:44:20 <calamari> found a few more bugs in the program
19:44:33 <calamari> adding the *.bf messed up my automatic .b adding
19:45:11 <calamari> there was something else too, but it was minor :)
19:46:30 <calamari> one thing I realized when working on x(y)=z, is it would be REALLY nice to either be able to edit while running, or have a copy that can be edited
19:46:58 <calamari> I kept wanting to add comments or newlines or whatever, but I couldn't
19:47:40 <calamari> not sure of a good way to handle it yet though.. there are keyevents I can catch, but I need to see if copy/paste still works
19:48:33 <calamari> at least we know that the theoretical version of x(y)=z works as expected
19:48:48 <calamari> the question is whether the implementation is correct
19:49:27 <calamari> iirc, it was just doing x(y)=z in a for loop that was crashing
19:49:49 <calamari> so I don't even need to check x=y(z) yet
19:57:48 <{^Raven^}> i have been editing code in between runs, copy and paste works fine, a minor issue is that when the program is loaded the first character of the program is highlighted
19:58:38 <{^Raven^}> meaning if you load some code and say immediately paste in the cvar map you trash the first character
20:00:21 <{^Raven^}> I have noticed a few BFBASIC optimisations that could be done later on and some redundant code that could be removed
20:05:18 -!- J|x has joined.
20:06:10 -!- jix has quit (Nick collision from services.).
20:06:13 -!- J|x has changed nick to jix.
20:32:38 <calamari> raven: still working on your adventure game?
20:33:52 <{^Raven^}> have only been looking at using the BF statement for optimisation
20:37:00 <calamari> raven: oh, I thought you were going to write a 10k game for the 2005 contest
20:38:01 <{^Raven^}> calamari: oh...that one. yes i am still working on the compo game
20:38:30 <calamari> I need to do more research, but haven't had time between other projects
20:39:22 <{^Raven^}> I have 75% research complete, main thing is the puzzles
20:40:06 <calamari> yeah.. mine won't have puzzles in that sense.. it might be disqualified as not text adventure-enough.. dunno :)
20:40:46 <{^Raven^}> puzzle-less IF is still IF, there's quite a lot out there too
20:44:21 <jix> i'm done with my first try
20:44:25 <jix> but it isn't good enough
20:44:43 <jix> its 1.6 or 1.8k (with 2 langpacks (german and english))
20:45:06 <jix> and it isn't written in a classic language
20:51:14 -!- calamari has quit ("Leaving").
20:55:29 <{^Raven^}> calamari: I have found a bug in the FOR code
21:02:30 <jix> i have a new idea for an esolang
21:03:30 -!- yrz\werk has quit (Client Quit).
21:04:02 -!- yrz\werk has joined.
21:07:47 -!- yrz\werk has quit (Client Quit).
21:09:02 -!- yrz\werk has joined.
21:11:46 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
21:12:04 -!- CXI has joined.
21:12:53 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
21:13:13 -!- CXI has joined.
21:26:29 <BigZaphod> trying to implement bf in taxi. brain hurts..
21:51:19 <{^Raven^}> calamari: (when you get back...) I have improved and fixed a bug in the FOR code
21:52:23 * {^Raven^} ponders... Does debugging a program written in a programming language you don't know count as esoteric programming?
21:59:15 <GregorR> But then again, programming in perl is esoteric programming *shrugs*
21:59:51 -!- jimbo00000 has joined.
22:00:41 <jimbo00000> Hey everybody, is there any choon source on the net ouside of the examples on that one page? any at all?
22:03:28 <GregorR> I don't know of any, but that's just me.
22:05:33 <jimbo00000> not that any of this stuff is real mainstream, but google turns up nada
22:06:58 <jimbo00000> ok how about a Befunge93 question: how might one go about testing if a value on the stack is less than a number?
22:07:25 <{^Raven^}> jimno00000: have you tried alltheweb, msn, lycos, altavista et al.?
22:08:07 <lament> i don't think there's any choon stuff.
22:09:11 <jimbo00000> turns up a lot of hits on peoples names, tough to filter out
22:22:05 -!- graue has joined.
22:35:45 <lament> cpressey: about usefulness for computation
22:36:01 <lament> cpressey: i think it has to do with ability to implement algorithms
22:36:36 <lament> cpressey: i can write a smallfuck program to add two numbers
22:36:57 <lament> cpressey: naturally it will only add numbers up to a certain size
22:37:06 <lament> but to increase that size, i wouldn't need to change my program
22:37:14 <lament> just the alloted memory
22:39:12 <lament> can't do that with lookup tables :)
22:40:56 <lament> so i'm making a distinction between "code" and "data" ,for which i will presumably get shot
22:41:17 <lament> although in smallfuck the distinction happens to be clear
22:42:57 <lament> but then of course, even with this amount of handwaving, it's clear that SMETANA isn't useful, either
22:43:26 <lament> or at least that being able to compile smallfuck to it doesn't prove anything
22:48:59 <lament> also consider Wireworld
22:49:13 <lament> i think it's pretty clear that wireworld is useful
22:49:42 <lament> but to implement a turing machine, you need infinite space to put the tape in.
22:49:57 <lament> However, it's very easy to describe how to create that tape
22:50:08 <lament> (it's just repetitions of a simple pattern stretching out to infinity)
22:50:12 <lament> same with Smallfuck and SMETANA
23:20:11 -!- jix has quit ("Banned from network").
23:33:34 <cpressey> i can write a lookup table for adding two numbers
23:34:53 <cpressey> for wireworld, program space == data space, and it's unbounded.
23:35:28 <cpressey> but Smallfuck programs (and tapes) and SMETANA programs are bounded.
23:36:03 <cpressey> if you have a program that isn't bounded, you seriously bend the rules for what makes an algorithm or not
23:36:15 <cpressey> e.g. if my lookup table is unbounded, then it really can add any two integers
23:43:34 <lament> for wireworld, an "unbounded" program would require infinite specification of the initial state...
23:43:51 <lament> unlike Life where you can create stuff
23:45:12 <lament> no, this definitely has to do with algorithms somehow.
23:45:44 <cpressey> but i'm not certain what your point is
23:46:49 <lament> whether a language allows arbitrary storage is really not very interesting.
23:52:39 -!- BigZaphod has quit.
00:56:34 -!- BigZaphod has joined.
01:28:24 <pgimeno> hum, interesting discussion
01:29:05 <pgimeno> I've been thinking about a sensible definition of "useful for computation"
01:29:54 -!- yrz\werk has quit (Client Quit).
01:31:26 -!- malaprop has quit (Read error: 131 (Connection reset by peer)).
01:32:38 -!- malaprop has joined.
01:39:58 -!- pgimeno has quit (Read error: 60 (Operation timed out)).
01:52:07 -!- jimbomania has joined.
01:52:58 <jimbomania> anyone write choon? im trying to figure out a way to get a pattern of ascending thirds within a loop
01:54:29 -!- jimbo0000 has joined.
01:54:37 -!- jimbomania has quit (Client Quit).
01:57:38 -!- pgimeno has joined.
01:58:37 <pgimeno> what part of my discussion has been read?
01:58:52 <jimbo0000> you're the local choonsmith, right?
01:59:30 <jimbo0000> well i was trying to write a looping construct to print ascending minor thirds
02:00:03 <jimbo0000> i tried stepping up the notes to get a few iterations of loop - %AB++++++B.||: :||
02:02:12 <pgimeno> I've never used the = instruction
02:02:28 <pgimeno> my only Choon program was 99bob and all I needed was the correct looping
02:02:40 <jimbo0000> i thought i might be easily able to just use =-1 to get the last note played, and each time transpose up by that amount
02:03:12 <jimbo0000> i can manually plot out notes, but thats no fun
02:04:33 <pgimeno> I'm sorry, I need to rest, I can't make much sense of that right now in this state
02:10:14 -!- graue_ has joined.
02:10:24 -!- graue has quit (Read error: 145 (Connection timed out)).
02:12:53 -!- graue_ has changed nick to graue.
03:48:40 -!- jimbo0000 has quit.
04:19:35 -!- graue has quit.
04:54:49 -!- pgimeno has quit (Read error: 131 (Connection reset by peer)).
04:55:00 -!- pgimeno has joined.
06:22:07 -!- calamari has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:07:52 -!- jix has joined.
08:21:28 -!- jix has quit ("Banned from network").
08:28:54 -!- yrz\werk has joined.
09:28:19 -!- calamari has quit ("Leaving").
12:11:07 -!- puzzlet has quit (Client Quit).
12:37:17 -!- puzzlet has joined.
12:59:02 -!- jix has joined.
13:26:29 -!- puzzlet_ has joined.
13:26:29 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
15:14:46 -!- jimbo00000 has quit ("Today is a good day to chat.").
17:25:24 * jix pushes command-f1
17:34:56 -!- BigZaphod has quit.
17:50:33 -!- jumpi has joined.
17:56:06 -!- pgimeno has quit (Read error: 104 (Connection reset by peer)).
18:08:00 -!- pgimeno has joined.
18:09:50 -!- BigZaphod has joined.
18:29:53 -!- jumpi has quit ("[BX] Time wasted: 5 millenia 5 centuries 1 decades 8 years 0 months").
18:43:40 -!- cmeme has quit (Remote closed the connection).
18:44:28 -!- cmeme has joined.
18:44:46 -!- cmeme has quit (Remote closed the connection).
18:45:33 -!- cmeme has joined.
19:17:46 -!- jimbo0000 has joined.
19:18:15 <jimbo0000> Hey everyone, a lovely day to you all
19:28:24 <jix> it's quiet today
19:30:37 <jimbo0000> does anyone in this room own a psp?
19:38:00 <jimbo0000> the homebrew scene is in the process of exploding - i am very excited
19:38:41 <jix> i did programming for the game-boy advance
19:41:19 <jimbo0000> how did you like it? how mature did those libraries eventually get, especially w respect to graphics?
19:42:24 <jix> oh it was.. c without stdlib and direct accessing memory-mapped registers
19:42:36 <jix> there was a stdlib.. and c++ worked too
19:42:43 <jix> and there were some graphic libs
19:42:47 <jix> but i never used them
19:43:13 <jix> an arm7tdmi 16mhz cpu isn't that fast and the less function calls the more speed
19:44:06 <jix> and memcpy is slow.. so i used DMA (there was one thing that was faster than dma using the load/store 4 registers at once asm instruction)
19:44:40 <jix> it was std gcc + std binutils + newlib
19:44:53 <jix> but with a different link scripts and crt0.s
19:45:13 <jix> and some emulators have gdb support + elf loader build in
19:45:30 <{^Raven^}> LDM/STM (as many registers as possible) in a partially unrolled loop would probably be fastest memcpy
19:45:55 <{^Raven^}> (using writeback to remove the need for ADD ctr,ctr,#x
19:46:00 <jix> DMA can be faster
19:46:12 <jimbo0000> what did you use to get executables onto the device? cable?
19:46:30 <jix> jimbo0000: flashcard and/or multi-boot cable
19:47:01 <jix> first i had to use a windows machine for development & flashing
19:47:06 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
19:47:23 <jix> than i could use mac os x for development (linux build instructions)
19:47:24 -!- CXI has joined.
19:48:00 <jix> and later i could use mac os x for flashing (f2a open source flasher + a osx driver for some usb micro controller)
19:50:30 <jimbo0000> i had a real good time homebrewing on the dreamcast, too bad it was a dead system
19:50:48 <jimbo0000> but the psp - man its gonna be huge
19:51:30 <jix> i would prefer building my own computer (including own cpu (of course (esoteric? ^^))) and programming it
19:52:16 <{^Raven^}> jimbo0000: dreamcast homebrew is still going strong
19:53:04 <jimbo0000> Raven: i havent been checking that often, it seemed more exciting in what i thought of as its heyday around 2 years ago
19:53:38 <jimbo0000> jix: do you think you could build a computer out of wooden gates, a river and a series of small water channels?
19:53:56 <jix> i couldn't
19:54:11 <jix> but.. i could design one.. but not build it
19:54:40 <jix> i thought about water-gates a few years ago
19:55:02 <jix> but i think wood isn't the right material for it
19:55:20 <jimbo0000> i think i saw a slashdot post on it - yeah, but it would have that really old-world natural look and feel :)
19:56:06 <jix> jimbo0000: with wooden marbles and wood.. that would be more "realistic" than wood + water
19:58:22 <jimbo0000> it would probably perform a lot better - i always thought of the water&wood thing as something to do after I tired of the whole world and became a recluse deep in the wilderness
19:59:22 -!- J|x has joined.
19:59:48 -!- jix has quit (Nick collision from services.).
19:59:56 -!- J|x has changed nick to jix.
20:00:04 <jix> what was my last msg?
20:00:58 <{^Raven^}> <jix> jimbo0000: with wooden marbles and wood.. that would be more "realistic" than wood + water
20:01:21 <jix> any replies?
20:01:30 <{^Raven^}> <jimbo0000> it would probably perform a lot better - i always thought of the water&wood thing as something to do after I tired of the whole world and became a recluse deep in the wilderness
20:02:31 * jix has to learn french
20:04:20 * jix hates learning french
20:05:54 * {^Raven^} gave up learning french after leaving school
20:06:16 * jix is going to give up learning french as soon as possible (in one year)
20:15:24 <jix> learned 117 french words today
20:15:58 <jix> trained every word about 6 times
20:16:23 <jix> ok grammar now
20:16:31 <jix> french test tomorrow..
20:16:43 <jix> and i hadn't time to learn earlier...
20:17:19 * {^Raven^} has said. "I have been eaten by my dinner..." at least once
20:18:22 <jix> we hadn't passive constructs yet
20:19:21 <jix> but french is a lot easier than german.. so i'm lucky german is my native language and i don't have to learn it :]
20:19:54 <lament> german is not my native language
20:19:59 <lament> and i still don't have to learn it :D
20:20:12 <jix> lament: yes but you can't speek german i can :p
20:20:39 <lament> who would you speak german with?
20:21:05 <jix> lament: my friends... there are whole irc networks full of german users
20:21:26 <lament> don't your friends know english? :)
20:21:36 <jix> lament: my german friends
20:22:04 <jix> and some of them arn't good at english..
20:22:25 <jix> and some of them are really bad
20:24:13 <jix> oh and i can read the original documents about Konrad Zuses plan-kalkül
20:24:41 <jix> the worlds first structured programming language with functions, variables...
20:25:07 <jix> and i can write plan-kalkül with my keyboard
20:26:35 <jix> but i don't understand the plan-kalkül
20:29:03 <jix> he starts to talk about plangebäude and plangruppen-bezeichnungen without telling me what the hell plangebäude are?
20:29:30 <jix> plangebäude == plan-buildings
20:29:50 <jix> plangruppen-bezeichnungen == plan group discriptions
20:31:47 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
20:32:01 <jix> hmm ok maybe i should just read on
20:44:08 -!- CXI has joined.
20:44:40 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
20:46:13 -!- CXI has joined.
20:47:22 -!- ZeroOne_ has changed nick to ZeroOne.
20:48:53 -!- CXI has changed nick to CXI_hatesxchat.
20:52:42 <jix> jimbo0000: maybe i write a wood-water-gate simmualtor
20:54:45 <jix> i know how to build: a And gate.. a And gate with one inverted input... a Not(repowering) gate (using an And inverted one input gate and a Power line) a Buffer(repowering) gate (using an And gate and a Power line) a Xor gate (Using 2 And inv. input and a Or gate) and a Or gate
20:57:33 <jimbo0000> a simulator... what kind of sim? graphical? physical?
20:57:47 <{^Raven^}> jix: every logic gate can be constructed from NAND gates if you want to get primitive
20:58:08 <jix> {^Raven^}: but i want to save wood
20:58:42 <jix> and Or,And and And with one inverted input are the simplest gates i know (for building them with wood and for water)
21:00:20 <jimbo0000> save wood, good for the environment. is there a way to save water too?
21:00:57 <jix> you only need as much water as you need to fill the whole "circuit"
21:01:19 <jix> and if you save wood and space you save water too
21:01:59 <jimbo0000> so how did you mean a 'simulator'?
21:02:32 <jix> you can see the water flowing in the wooden pipes and the wooden gates moving etc...
21:05:41 <jimbo0000> mmm sounds like it might look nice in 3d
21:05:54 <jix> ok added a 2-bit mux (wood saving)
21:06:56 <jimbo0000> how many degrees of freedom do all these gates have? and whats the topography of the ground and water channels?
21:10:07 <jix> degrees of freedom?
21:10:19 <jimbo0000> well, what kind of moving parts are the gates comprised of, are they just solid pieces that rotate?
21:10:19 <jix> designd a woodsaving RS-Latch
21:10:42 <jimbo0000> and as for the water, i guess it needs some kind of gradient to flow, maybe a slight hill?
21:10:51 <jix> they are pipes and shelves with holes that can move
21:11:40 <jix> jimbo0000: i will include druck(don't know the english word) calculations
21:13:33 <jimbo0000> so these pipes will be closed, with pressure driving the mechanism?
21:13:39 <BigZaphod> fun event: build those wood and water gates in real life on carts with hoses and stuff. then you could do a live-action esolang thing where you code by pushing the carts around and making connections.
21:14:56 <{^Raven^}> maybe start an amish computing group ;)
21:15:22 <BigZaphod> it'd be a great event at an esolangcon. bring swimwear. :)
21:15:59 <{^Raven^}> especially is the patricipants were used to represent bits ;)
21:16:26 <BigZaphod> stdout could be a large firehose and the screen could be the audience.
21:16:51 <jix> but i think the marble approuch is easier to build
21:17:01 <{^Raven^}> of course that would me a long persistance display
21:31:39 -!- CXI_hatesxchat has quit (Read error: 104 (Connection reset by peer)).
21:32:34 -!- comet_11 has joined.
21:42:22 -!- comet_11 has changed nick to CXII.
21:53:52 -!- CXII has changed nick to CXI.
22:11:22 -!- jix has quit (Remote closed the connection).
22:33:47 -!- calamari has joined.
22:41:30 <calamari> I haven't had a chance to look at bfbasic.. working even now
22:42:38 <calamari> yeah.. I do research work at the university, and a paper deadline is approaching quickly
22:43:40 <calamari> there is one upcoming conference in Scotland, but I dunno if I'll have my name on that paper
22:44:17 <{^Raven^}> sounds potentially very cool, can I ask the subject you are researching?
22:46:38 <calamari> sure.. we are working on a package installation tool called sotrk. Right now it runs on a research network called PlanetLab, but we are extending it to work on Vservers, bsdjails, etc
22:47:13 <calamari> Stork shares packages between clients on the machine, reducing disk space usage and possibly memory usage as well
22:47:50 <BigZaphod> Planet Lab.. I tried to get in on that network once, but since I'm not currentl affiliated with any university.. *sigh*
22:47:52 <calamari> It also has a keyfile system to allow anyone to contribute packages
22:48:30 <calamari> I'm not a huge planet lab fan, but hey, I've learned a lot working on this thing :)
22:49:00 <BigZaphod> calamari: well, never used it, but it looked neat. I was working on a p2p app and that seemed liek a great way to test it. although development has stalled as of late.
22:50:11 <calamari> zaphod: the problem with planetlab is that it is continuously overloaded.. but yeah, it's cool in certain ways. I think it's neat how you can appear to have root on a machine when you really dont
22:50:49 <calamari> I think companies can sign up for planetlab, but it costs $
22:51:44 <calamari> hehe, anyways back to work for me
23:18:35 <{^Raven^}> BigZaphod: how long did taxi take to create? That is one twisted language.
23:19:21 <BigZaphod> I've found a few bugs here and there over the last couple days, though. Uploaded a new version (if you're playing with it).
23:22:10 <{^Raven^}> The source code makes for interesting reading, i especially like the error messages
23:22:10 -!- calamari has quit ("bbl").
23:23:11 <BigZaphod> I'm working on a bf interpreter written in taxi..
23:33:09 <BigZaphod> {^Raven^}: have you tried to do anything with it?
23:33:48 <{^Raven^}> have pondered 99 bottles of beer, but as a thought experiment it was not good
23:34:31 <BigZaphod> I think 99 wouldn't be too bad once you dug in and got used to it.
23:35:02 <BigZaphod> lol.. yeah, I've developed a rather heightened sense of left and right now.
23:36:00 <BigZaphod> I have 283 lines of taxi source which manages to read a single line from stdin and break it down into the bf tokens and tests for each symbol correctly.. now I just have to, ya know, make the symbols do stuff.
23:36:17 <{^Raven^}> diagonal directions, hills and valleys would be a suggestion for Taxi++
23:36:48 <{^Raven^}> a BF terp sounds scary, but atm you're probably the only person capable
23:37:56 <BigZaphod> probably atm, yeah. with whirl it is funny because I can hardly do anything with it even though I made it. tokigun is by far the biggest whirl expert I know of.
23:40:31 <BigZaphod> this bf interpreter is quite slow.. does no computation yet but it still manages to take several seconds to process a 50 or 60 character input string. that's on my 1.66ghz powerbook. scary.
23:41:38 <{^Raven^}> your taxi interpreter could pre-parse and compile programs into something faster to interpret
23:43:05 <BigZaphod> no doubt. it half does at the moment. it parses all the commands up front and builds a list with the command code, but the data is kept as strings and everything is looked up while it is running.
23:43:45 <BigZaphod> plus it does all the math for determining left and right at run time as well, which in theory it wouldn't need to.
23:44:20 <{^Raven^}> you could tokenise the strings to single byte values
23:45:02 <{^Raven^}> and precompute destinations before execution
23:45:26 <BigZaphod> yeah that would probably help a lot.
23:46:06 <{^Raven^}> even with brainfuck such things can make a huge difference to execution speed
23:47:01 <BigZaphod> of course if the language was slightly more sane to begin with, that'd help too. ;)
23:48:24 <BigZaphod> one of these days I want to try to make a compiler for one of my languages using http://llvm.cs.uiuc.edu/ or something. never done that before.
23:51:18 <BigZaphod> ( assuming I'm even understanding LLVM correctly :) )
23:52:06 <{^Raven^}> that looks like a very interesting tool chain
23:55:17 <BigZaphod> I read someplace it is quite easy to use for compiling simple languages or something. figured it'd make a perfect tool for a fun esolang someday.
23:55:56 <BigZaphod> somewhere I ran across a sample that implemented a forth variant compiler using LLVM.
23:58:17 <yrz\werk> i didn't post the interpreter yet
23:58:31 <BigZaphod> hypercubes hurt my brain as I always try to visualize them.
23:58:33 <yrz\werk> but i don't know *WHERE* to host the tar.gz
23:58:50 <yrz\werk> BigZaphod: no way to visualize.
23:59:10 <BigZaphod> yrz\werk: my brain refuses to listen to me when I say such things.
23:59:37 <yrz\werk> BigZaphod: will help you if i change it to be 5-n ?