←2005-06-04 2005-06-05 2005-06-06→ ↑2005 ↑all
00:05:16 <jix> i've designed turing-complete language with only 5 instructions
00:05:32 <lament> do tell.
00:05:40 <jix> wait.. i can reduce it by one
00:06:30 <jix> it's name is XUML
00:06:45 <lament> that's a start.
00:07:08 <jix> it has 4 instructions: X = flip bit value
00:07:27 <jix> U = User interact (takes argument)
00:08:01 <jix> hmm wait
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:20:24 <lament> *regad
00:20:26 <lament> *regard :)
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:12 <graue> hm?
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:40 <graue> enqueues 255
00:28:44 <lament> okay
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:14 <graue> that is insane
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:32:05 <jix> hehe
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:50:45 <jix> ...
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:55:45 <kipple> include I mean
00:55:46 <jix> oh right
00:57:33 <kipple> languages whose input is not in the form of a character stream is perhaps a bit verbose ;)
01:07:10 <pgimeno> non-textual?
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:15:34 <pgimeno> yes
01:15:43 <kipple> good
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:24 <kipple> agreed
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:21 <graue> separated how?
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:21:45 <kipple> anybody disagree?
01:22:40 <pgimeno> er
01:22:44 <pgimeno> I was editing
01:23:05 <kipple> ok. let me know when you're done then
01:24:42 <pgimeno> done
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:12 <kipple> I'd say implemented
01:41:29 <pgimeno> me too, plus explain the situation in the text
01:41:33 <jix> fuzzy logic!
01:41:35 <kipple> yes
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:08 <graue> true
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:49:22 <kipple> yeah
01:50:01 <kipple> though it is a bit special
01:51:11 <pgimeno> actually it's ascii
01:51:27 <pgimeno> er, iso8859-1
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:52:50 <kipple> I do!
01:53:00 <pgimeno> then go ahead :)
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:01 <graue> hm
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:30 <graue> good night
01:56:33 <kipple> nite
01:56:34 -!- graue has quit ("Leaving").
01:57:52 <pgimeno> I'm not for categorizing language level
01:57:59 <kipple> why not?
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
01:59:34 <pgimeno> or was it var'aq ?
01:59:50 * pgimeno adds a stub
02:00:13 <kipple> I also think we should have a category for strongly metaphored languages (Chef, Shakespeare, ZOMBIE)
02:00:26 <pgimeno> ugh
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:08 <pgimeno> yuck
02:03:15 <pgimeno> you need an optimizing compiler
02:03:28 <jix> yes
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:17:06 <jix> g'nite
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:39:30 <GregorR> Xchat on WinDOS.
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:34:26 <jix> moin
11:58:30 <jix> XUML parser done
12:33:58 <sp3tt_> XUML?
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:38:41 <sp3tt_> What is XUML?
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 {}...)
12:43:44 <pgimeno> moin
13:44:31 * pgimeno pages GregorR
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:57:13 <pgimeno> U = 01010101b
13:57:46 <jix> hehe
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:28 <jix> cu
14:10:31 -!- jix has quit ("Banned from network").
14:34:48 -!- graue has joined.
14:36:21 <pgimeno> hi graue
14:37:53 <pgimeno> any clue of what kind of storage does [] use?
14:47:18 <pgimeno> I mean [] a.k.a. Brackets
14:57:08 <graue> doesn't it say on the website?
14:59:13 <pgimeno> it's too brief
15:02:42 <graue> does it have an interpreter or spec or anything?
15:03:40 <pgimeno> yes
15:03:49 <graue> then that should tell you
15:03:50 <pgimeno> interpreter
15:03:53 <pgimeno> no spec
15:03:53 <graue> someone needs to add clunk: http://esoteric.sange.fi/essie2/download/clunk/
15:11:20 <wooby> interesting
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:29:13 <CXI> haha
15:29:18 <CXI> worse, VB
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:41:25 <pgimeno> thanks
15:42:28 <pgimeno> hum, then what?
15:43:26 <pgimeno> "You have not specified a target page or user to perform this function on."
15:43:48 <CXI> hmm
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:25 <pgimeno> found it
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:46 <pgimeno> oops, gtg, ttyl
15:56:52 <CXI> alrighty, seeya
16:48:13 <pgimeno> re
16:49:12 * CXI waves
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:49:45 <pgimeno> k
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:51:53 <CXI> yeah
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:04 <pgimeno> is it user-given?
16:54:10 <CXI> yeah
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:55:38 <pgimeno> yuck :)
16:56:18 <pgimeno> still, it's easy to fix to adapt to these needs
17:04:47 <sp3tt_> G does what?
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:13 <sp3tt_> Ah.
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:10:11 <sp3tt_> Thanks.
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:13:29 <pgimeno> hehe
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:14:44 <CXI> I won't
17:15:08 <pgimeno> *phew*
17:15:16 <CXI> I'm thinking maybe gnu regex
17:15:28 <CXI> is perl regex that different?
17:15:35 <pgimeno> Posix REs would be good
17:15:50 <pgimeno> POSIX EREs that is
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:19:51 <CXI> hmm
17:21:28 <CXI> what are \1 \2 \3 called anyway? back-replacements?
17:22:37 <pgimeno> back references IIRC
17:23:00 <pgimeno> but only when used within a RE
17:23:04 <CXI> yeah
17:23:20 <pgimeno> i.e. not in the RHS
17:23:24 <CXI> ah...
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:00 <pgimeno> s/patter/pattern/
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:12 <CXI> er
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:17:15 <sp3tt> qdegl?
18:26:26 -!- graue has joined.
18:27:59 <pgimeno> puzzlet: around?
18:28:10 <puzzlet> behind you
18:28:29 <pgimeno> heh
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:29 <puzzlet> ah, i forgot
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:35:48 <puzzlet> which one?
18:35:59 <pgimeno> any of the buttons
18:40:02 <puzzlet> ah now i get it
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:42:56 <cpressey> {{}} is a template
18:42:59 <cpressey> [[]] is a link
18:43:04 <pgimeno> oh, ok
18:43:07 <pgimeno> thanks
18:43:07 <cpressey> so {{}} brings in the text from another article
18:43:12 <cpressey> np
18:43:18 <puzzlet> ah, it will work that way
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:11:30 <pgimeno> that's not the problem
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:17:19 <pgimeno> er... define "good"
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:25:26 <cpressey> erlang and lua
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:09 <cpressey> at least, imo
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:26 <CXI> speed
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:05 <cpressey> for TC
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
19:49:11 <cpressey> that's just a guess though
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:18:38 <cpressey> hmmm
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:19:51 <cpressey> maybe if it was a deque
20:20:20 <cpressey> (then you could go "left" and "right" like in bf or a TM)
20:25:08 <cpressey> oh
20:25:09 <cpressey> hmm
20:25:11 <graue> my initial idea was a deque, someone in here said it could be done with just a queue
20:25:24 <cpressey> you might be right
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:30 <cpressey> but it was only an idea
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?
20:57:03 <sp3tt> More than bf*
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:20:48 <pgimeno> ok, thanks
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:03:38 <GregorR> Hey all
22:04:07 <pgimeno> hi GregorR
22:04:24 <GregorR> How goes?
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:03 <pgimeno> oh ok :)
22:05:29 <pgimeno> is it based on something at all?
22:06:17 <GregorR> Nope
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:08:56 <GregorR> Well, lesse ...
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:09:41 <GregorR> Plus, it does 8-D
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:54:19 <heatsink> oh yeah
22:54:31 <heatsink> yea, I like moldau vltava too
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:29 <kipple> haha
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:49:01 <kipple> I saw it. nice
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
←2005-06-04 2005-06-05 2005-06-06→ ↑2005 ↑all