00:08:05 <GregorR> I find it hard to believe that Bitxtreme is turing complete ;)
00:08:39 <kipple> I find it hard to even understand how it is supposed to work.... :)
00:12:34 <kipple> so, how did the ORK Kipple interpreter go? any progress?
00:14:26 <GregorR> It reads it in, but has issues parsing.
00:14:50 <GregorR> Powerful and unbelievably, mind-blowingly stupid.
00:15:50 <GregorR> Besides ... hypothetically, any turing complete language COULD interpret kipple (with much pain), and ORK is turing complete...
00:16:22 <kipple> yes, I didn't ask if it was *possible*. only if it was doable
00:16:50 <kipple> that is, not extremely hard... :)
00:17:50 <kipple> so, do you intperpret the source directly, or tokenize?
00:18:28 <GregorR> I'm getting chunks with meanings, then walking through and interpreting the ones that are command chunks.
00:34:20 <GregorR> Based on bitxtreme, I present unitxtreme:
00:34:27 <GregorR> It works just the same but the bits are unary.
00:34:42 <GregorR> So you can only have one command, and it can only have one value.
00:34:49 <GregorR> There is only one register and only one memory location.
00:35:10 <GregorR> The command is 0, and it sets the value of the current memory location to 0.
00:43:01 <kipple> the ork compiler doesn't handle Windows EOLs
00:43:15 <kipple> not much of a problem, but I thought you should know
00:43:41 <GregorR> Am I expected to care if it works on Windows?
00:43:59 <kipple> as I said, no big deal
00:44:09 <GregorR> Hmm, I thought cin was set to some sort of translation mode normally >_>
00:44:19 <GregorR> Mayhaps I'll fix that sometime.
01:15:11 <kipple> is ORK case sensitive?
01:17:04 <GregorR> It wouldn't be unnecessarily grammatically correct if it wasn't 8-D
01:18:49 <GregorR> Right now the compiler lets you get away with some things that it ought not, but it does insist upon proper capitalization.
01:38:21 <kipple> when I pass an object as an arg to a function, how do I reference the objects variables?
01:50:55 <GregorR> I never put that in the spec, did I?
01:51:20 <GregorR> If it was a foo that had a bar which was a number:
01:51:53 <GregorR> Actually, I think that might be screwed up ...
01:53:06 <GregorR> OK, I'm going to fix that and post a new version some time tonight 8-D
01:53:10 <GregorR> But that's how it should work.
01:53:59 <kipple> gotta go to bed anyways.
02:27:01 -!- puzzlet has joined.
02:44:27 -!- kipple has quit (Read error: 110 (Connection timed out)).
04:49:53 -!- Keymaker has joined.
04:51:27 <Keymaker> you should probably change '(FIXME: work on the description)' to something, though
04:51:36 <Keymaker> i don't yet see very well how it works
04:51:40 <Keymaker> but i wanna get coding!!!!!!!!!!
04:51:49 <Keymaker> 1 bit memory size is really cool
04:52:01 <Keymaker> i've planned making a brainfuck variation with that
04:52:08 <Keymaker> although it's done couple of times already
04:52:19 <Keymaker> but i want to make programs for that kind of memory cell range
04:52:43 <Keymaker> maybe you could make some simple sample program there, for example how to print 'Hi' ?
04:56:49 <Keymaker> and how to do loops? i need more info!
05:01:49 -!- calamari has joined.
05:04:29 <GregorR> pgimeno: Am I confused, or is there a maximum of two instructions, and hence it's impossible to do anything useful.
05:04:35 <GregorR> (This being because the program pointer is a bit)
05:14:01 <Keymaker> probably there is array of those bits
05:14:16 <Keymaker> at least i can see no other way this being turing-complete
05:15:23 <GregorR> I get the feeling that it's more of ajoke than pgimeno has let on ;)
05:15:32 <GregorR> Oh no! (/me just read your bit about beating 2L ;) )
05:15:36 <Keymaker> NOOOOOOOOOOOOOOOOOOO!!!!!!!!!!!!!!!!!!!!!
05:16:16 <Keymaker> but if you read on we found one solution how to use just one instruction
05:16:26 <Keymaker> pgimeno got if from some game :)
05:16:51 <Keymaker> with that would be possible/necessary to make self modificating programs
05:17:54 * GregorR just saw what you're saying.
05:18:13 <Keymaker> 16:13:21 <pgimeno> regarding the discussion about making a 2D language where direction changes are expressed by just one symbol... ever played KBlackBox?
05:18:13 <GregorR> A 90-degree turn would do one thing, a 180-degree turn another, a 270-degree turn yet another.
05:19:25 <GregorR> And the turns would be pushed back when the program pointer hit them, a la Sokoban.
05:20:02 <Keymaker> it really interesting what kind of languages are possible
05:20:12 <GregorR> I need a moment to process whether that would work or not...
05:20:22 <GregorR> Ah, here's a problem: how do you do program logic?
05:20:55 <Keymaker> blame pgimeno, not my idea! *flees away*
05:21:06 <GregorR> Now this is stuck in my head.
05:21:50 <Keymaker> then we succeeded to trap someone's mind to do the actual work and let us bask in the actual glory. :)
05:22:28 <GregorR> When it's released as "Gregor Richards presents: 1L! (Some concepts may have been partially attributed to some abstract work by Keymaker and pgimeno)" You'll think differently ;)
05:23:52 <GregorR> I'm still not positive if it would work, BUT
05:24:10 <GregorR> 1) Straight-on = if. If the cell is non-zero, do NOT turn, but go through
05:24:29 <GregorR> 2) Right turn = op. Same ops as in 2L, same overloading
05:24:38 <GregorR> 3) Left turn = opless turn
05:24:47 <GregorR> If you stack two +s, they can't be pushed
05:25:16 <Keymaker> is there language called Sokoban as well?
05:26:35 <GregorR> It would be quite difficult to handle the if-not case, because you would be back where you came from ... pushing blocks would help, but loops would still be difficult...
05:27:07 <Keymaker> i think this language is too bizarre for me
05:27:12 <GregorR> HEY! DING AGAIN! Gregor's on a roll!
05:27:22 <Keymaker> at least i wouldn't have the nervers :)
05:27:29 <calamari> GregorR: see the wierd language
05:27:31 <GregorR> Straight-on divides the program pointer - it will continue going in the same direction, but will be offset.
05:27:39 <GregorR> calamari: I don't count that ;)
05:27:45 <GregorR> calamari: Since an angle is an op.
05:27:50 <GregorR> calamari: So it actually has several.
05:28:23 <GregorR> It's an interesting and esoteric language, yes ...
05:28:27 <GregorR> But still has more ops than the winz0r
05:28:34 <calamari> if you're counting turns, then that's an angle too :)
05:28:59 <GregorR> Damn, you're totally right.
05:29:06 <GregorR> + placed differently would be a different op.
05:29:21 <calamari> but... who cares? have fun with it :)
05:29:24 <GregorR> I'm OK overloading by direction (obviously) ...
05:29:37 <GregorR> It's not my original idea :-P
05:29:45 <GregorR> So I could drop it at any time!
05:30:12 <Keymaker> better to do that, it's too evil
05:30:33 <GregorR> Pff, I can implement this from the 2L code base in a matter of minutes. Might as well.
05:30:57 <calamari> how about frequency analysis of the "wave" to determine opcodes? hehe
05:31:27 <Keymaker> what the programs should look like?
05:31:30 <GregorR> I was thinking that it would be nice to have a BF-ish language, but, the operations would do insanely complex algorithms, making it incredibly difficult to do simple addition, etc ;)
05:31:55 <calamari> keymaker: probably big sine waves :)
05:32:11 <Keymaker> but what they would look like in the source code?
05:32:33 <calamari> oh.. let the programmer choose
05:32:42 <calamari> whitespace vs whatever they like
05:39:19 <Keymaker> well, see you much later.. 8+ hours
05:39:27 -!- Keymaker has quit ("Freedom!").
05:44:25 <GregorR> OMFG, this language is stupid
05:54:04 <calamari> go write some Malbolge and you'll feel better
05:57:56 <GregorR> 1L is seriously more stupid than Malbolge :-P
05:57:59 <calamari> that question about what character to use must have been kicking around in my subconscious
05:58:46 <calamari> the interpreter/compiler could figure out the language as it went along
05:58:57 <calamari> based on context (if there is enough context)
05:59:12 <GregorR> Some languages are quite difficult to tell apart.
05:59:24 * GregorR is unsure what you're talking about btw ;)
05:59:44 <calamari> for example if we're going with C, for example
06:00:34 <calamari> actually, neither.. since it doesn't fit either pattern
06:01:39 <GregorR> I actually meant that I don't know what you're referring to about that question about what character to use ... I'll go read the log ;)
06:01:40 <calamari> ASM would be better for this, since a lot of old ASM's used 3 character mnemonics
06:01:47 <GregorR> (/me doesn't even remember yesterday)
06:02:11 <calamari> GregorR: oh.. we were talking for a minute about figuring out the opcode based on frequency analysis
06:02:28 <calamari> and someone asked what character would be used for the drawing
06:02:33 <GregorR> OHHHHHHHH, right right right
06:04:09 <calamari> one language I've always wanted to write is one in which it isn't possible to have a syntax error or runtime error because of the way the code was written (for example mismatched brackets in BF)
06:04:42 <calamari> therefore any file would represent a valid program
06:04:54 <GregorR> You can't have syntax errors in many 2D languages, since no characters need to match.
06:06:17 <calamari> although, maybe its impossible as well, becauseif I made it so that the program couldn't crash it woulkdn't be turing complete, right?
06:07:05 <GregorR> I don't see why not........?
06:07:53 <GregorR> Turing complete just means it can solve any mathematical problem. So long as there's some means of quitting at the end, it doesn't need to "crash" per se.
06:08:08 <GregorR> It could just have a quit operator.
06:09:46 <GregorR> Perfect example: AFAIK, 2L is turing complete (it has every BF operator), however, it has not syntax errors and cannot crash, only exit gracefully.
06:10:42 <GregorR> That's not how loops work in 2L - it's two dimensional, so a loop is just a series of ifs that have been drawn in a circle.
06:10:59 <GregorR> I should have said "It has a means to do every BF operator," since it only has two operators.
06:20:59 -!- calamari has quit ("Leaving").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
09:57:02 <pgimeno> <calamari> one language I've always wanted to write is one in which it isn't possible to have a syntax error or runtime error because of the way the code was written (for example mismatched brackets in BF)
09:57:59 <pgimeno> http://ling.ucsd.edu/~barker/Iota/
09:58:17 <pgimeno> it uses the Functional paradigm
11:52:56 -!- kipple has joined.
15:43:22 -!- Keymaker has joined.
16:03:03 <GregorR> That was a truly exciting conversation ;)
16:03:50 <Keymaker> sorry.. i tried to open some topic
16:04:11 <Keymaker> btw, is there any other word for 'invent'? i'm tired using that one
16:04:54 <GregorR> Lesse what thesaurus.com says 8-D
16:05:27 <GregorR> Or the quaint "make" of course.
16:05:47 <GregorR> Synonyms: ad-lib, author, bear, coin, come upon, compose, conceive, contrive, cook up, design, devise, discover, dream up, envision, execute, fake, fashion, find, forge, form, formulate, frame, hatch, imagine, improve, improvise, inaugurate, initiate, jam, knock off, make, make up, mint, originate, plan, produce, project, shuck, think up, toss off, turn out, wing it
16:06:05 <GregorR> About 60% of those are terribly synonyms :-P
16:07:41 <Keymaker> but there are some worth of using
16:08:07 <Keymaker> now i just hope i can remember those when i knock off something next time
16:08:36 <GregorR> I'm not sure that one works out of a few contexts ...
16:08:50 <GregorR> Since it also means kill in a few contexts *shrugs*
16:10:00 <lindi-> GregorR: 'excogitate' seems to be missing from the list :)
16:10:01 <GregorR> Synonyms: author, compose, conceive, contrive, cook up, design, devise, dream up, envision, fashion, forge, form, formulate, initiate, make, make up, originate, plan, produce, think up, turn out
16:10:14 <GregorR> lindi-: That was just what www.thesaurus.com said :-P
16:10:23 <GregorR> There's a list of basically non-contextual synonyms.
16:10:42 <lindi-> GregorR: use libre dictionary at http://wordnet.princeton.edu/
16:11:21 <GregorR> Oh wow, that's infinitely better.
16:11:55 <lindi-> GregorR: yes, and you can include it on your own page or sell the results if you want
16:12:31 <GregorR> Keymaker: $25 for this synonym list.
16:12:54 <GregorR> Just kidding of course, though I don't yet know how to fenagle this page right.
16:13:31 <GregorR> GTG to school, see you all later.
16:16:59 <lindi-> they seem to have changed page layout a bit do you like http://wordnet.princeton.edu/contact more than http://wordnet.princeton.edu/cgi-bin/faqview.cgi ?
16:20:49 -!- Keymaker has quit ("Freedom!").
17:42:56 -!- Keymaker has joined.
17:57:38 <Keymaker> pgimeno!!!! tell more about bitxtreme
18:05:30 <Keymaker> i finally got my first gas mask
18:05:34 <Keymaker> that i bought from internet :)
18:06:02 <pgimeno> good in case you suffer an anthrax attack
18:06:18 <Keymaker> maybe i should wear it everywhere
18:06:38 <Keymaker> it's actually because of one club that is gasmask-only
18:07:06 <Keymaker> seriously, i have no need for it
18:07:20 <Keymaker> but i like their (gasmaks) look
18:07:40 <Keymaker> so i decided to start collecting those
18:08:33 <pgimeno> well, I just have a dust mask
18:11:08 <Keymaker> http://194.251.244.158/auctionimages/0/d6/517d898f68d5f8435c9a3d8122343-orig.jpg
18:11:38 <Keymaker> (note that i'm not into any military stuff, just gas masks)
18:11:51 <Keymaker> (that i don't even concern military)
18:13:30 <pgimeno> yeah, I guess there's a 50% chance that someone wearing it would have been confused by an alien by the time it was made
18:15:05 <Keymaker> mmh. my fingers smell that gas mask rubber.. better go wash them :)
18:16:07 <Keymaker> is bitxtreme really turing complete or is it just some joke language?
18:16:21 <pgimeno> you can judge better after the update
18:19:00 <pgimeno> there it is (still not finished)
18:21:38 <KnX> pgimeno : is it possible to get it too ?
18:22:05 <Keymaker> http://www.formauri.es/personal/pgimeno/prog/esoteric/Bitxtreme.php
18:24:18 <Keymaker> "To avoid confusion with other kinds of files the standard source file extension is TXT (for Bitxtreme), which is rarely used."
18:24:43 <pgimeno> that's actually just an advance of my next (huge!) site update... I needed to make room for my Malbolge findings and for GregorR's files and a reorganization was needed before it was too late. Reorganizing means also adding new content, and so it goes and goes...
18:32:33 <Keymaker> the programs are probably written with characters '0' and '1'?
18:32:47 <Keymaker> or do i have to use hex editor?
18:33:20 <KnX> hexedit i think
18:33:41 <Keymaker> writing the source is gettin' annoying on that case
18:33:47 <kipple> just write a tool to translate
18:34:07 <kipple> write it in BF or something:)
18:34:15 <Keymaker> i was just typing that as well :)
18:34:27 <kipple> great minds think alike....
18:35:23 <kipple> " then PC is increased by two, modulo 2"
18:35:36 <kipple> this does not make much sense to me. is it a joke?
18:37:48 <KnX> 2 modulo 2 = 0 :)
18:38:04 <KnX> i think it's a joke
18:38:09 <kipple> but then again the whole lang seems to be a joke :)
18:38:48 <kipple> as the PC is only one bit, there are only four possible programs (which are the four samples listed)
18:38:52 <Keymaker> (i haven't left yet for a minute)
18:39:13 <Keymaker> but probably with those everything can be done
18:39:20 <Keymaker> and the input and output was some bizarre
18:42:09 <kipple> " there is one single instruction: subtract and branch if negative"
18:42:19 <kipple> haha, the registers can never be negative :D
18:42:48 <Keymaker> but notice that is talking about OISC
18:43:06 <Keymaker> it's talking about this as well
18:46:32 <KnX> " If the result is negative (the bits are in two's complement representation)"
18:47:02 <KnX> don't understand it very well , i'm not native english speaker
18:47:15 <Keymaker> i don't understand it either, i just guessed :)
18:47:59 <KnX> does it mean that is A = 0 and P = 1 , then the result is "temporarily" negative ?
18:47:59 <Keymaker> if i recognize the word 'complement' i guess it would change something like '01001' to '10110'
18:48:48 <kipple> it's not meant to make sense.
18:54:35 -!- Keymaker has quit ("Freedom!").
19:54:43 <pgimeno> it is indeed a joke... I thought it was obvious enough after the last changes
19:55:52 <pgimeno> doh, I have to leave again, later
21:49:38 <pgimeno> btw, a two's complement 1-bit number can only represent 0 and -1
22:53:00 <kipple> Good joke. I didn't notice it at a first glance. Only when I sat down and tried to understand it did I get it... :)
22:54:12 <pgimeno> thanks! I'm adding the last bits; the interpreter is online but I'm fixing the links which are broken.
22:56:34 -!- GregorR-L has joined.
22:56:38 <kipple> " It has the memory limited to 2 bits for space reasons"
22:56:48 <kipple> reminds me of mod_bf :)
22:57:48 <kipple> have you seen the apache module mod_bf?
22:58:07 <kipple> it's a BF mod for Apache
22:58:35 <kipple> it has an array size of 100 because more is a "waste of memory" :D
22:59:12 <kipple> I thought of it when I read the BitXtreme spec
22:59:26 <kipple> http://modbf.sourceforge.net/
22:59:41 <kipple> has been dead for more than four years...
23:00:49 <pgimeno> I'm afraid the 1.0 project was abandoned
23:01:22 <kipple> I once thought of doing a web-scripting lang with bf
23:01:34 <kipple> like PHP with inline HTML, but only BF as code :D
23:03:21 <GregorR-L> GAAAAAAAAAAAAAH! I hate either ORK or Kipple (haven't decided which yet :-P )
23:04:18 <GregorR-L> I'm just having a lot of problems writing this in ORK :-P
23:04:27 <GregorR-L> The code keeps multiplying and multiplying >_>
23:05:49 <pgimeno> damn, my server doesn't allow download of .py files
23:06:10 <kipple> just rename it .py.txt or something
23:06:35 <pgimeno> not even that I guess, GregorR-L... it returns an Internal Server Error
23:06:58 <kipple> it probably has a python interpreter...
23:10:03 -!- KnX has quit (Remote closed the connection).
23:11:18 <kipple> does the file start with a line like #!/bin/python or something
23:11:38 <kipple> try renaming it to HTML
23:12:07 <pgimeno> as .txt it works but of course that would be confused with a Bitxtreme source file
23:12:21 <kipple> I could host the file for you if nothing else works
23:12:29 <kipple> that is really bizarre
23:13:02 <pgimeno> that will save bandwidth too ;)
23:13:04 <kipple> so bitxtreme.txt works but not bitxtreme.py.txt?
23:13:47 <kipple> haha, I love the fact that examples.zip is 562 bytes
23:14:55 * kipple thinks pgimeno was nuts in the first place (evidence: http://www.formauri.es/personal/pgimeno/prog/esoteric/Bitxtreme.php )
23:15:15 <pgimeno> all that's left to do is zipping it
23:26:07 <kipple> though the source files a 4 times the size they need to be. curse these whole bytes requirements :)
23:26:36 <kipple> I propose a new archive format for bitxtreme programs to save precious bandwith:
23:26:55 <kipple> bit 0: Header. This bit is always set to 1 to identify the file as a bitxtreme archive
23:27:03 <kipple> bit 1: Meta-info: place your meta information here.
23:27:11 <kipple> bit 2 - (2n+2): each program stored sequentially, each starting immediately after the previous
23:27:21 <kipple> the last bits of the file is padded with zeroes to make a whole number of bytes.
23:27:55 <pgimeno> actually, that format was chosen in order to make it possible to write a quine
23:30:05 <pgimeno> "then PC is increased by two, modulo 2" - I thought that made clear enough that either I'm kidding or I'm a complete nerd (or both)
23:30:46 <pgimeno> anyway, thanks everybody for your feedback which has helped improving the spec
23:32:57 <kipple> I thought it was a typo at first
23:33:19 <kipple> until I noticed that the PC is 1-bit
23:35:37 <kipple> so Gregor, any chance of an updated ORK soon?
23:38:18 <kipple> and now object variables can be referenced as expected?
23:39:04 <pgimeno> uhm, I think I've missed some discussion about ORK
23:39:17 <GregorR-L> There was an issue with variable reference.
23:39:27 <GregorR-L> You couldn't reference variables of objects passed as parameters.
23:40:04 <pgimeno> do you have an interpreter already, or just the compiler?
23:40:52 <GregorR-L> I don't think I want to try at an interpreter :-P
23:41:41 <pgimeno> btw GregorR-L: http://www.formauri.es/personal/pgimeno/prog/esoteric/ <- not still complete but now it's ready for expansion
23:43:49 <GregorR-L> BTW, my last name is "Richards" so the ownership form is " Richards' "
23:44:01 <GregorR-L> Because English makes a whooooooooole lot of sense.
23:49:08 -!- calamari has joined.