←2005-07-18 2005-07-19 2005-07-20→ ↑2005 ↑all
00:06:08 <jix> i wrote a crappy ping less sub-minmal befunge irc bot that prints hello msgs with the nick reversed...
00:06:22 <jix> i'm going to test it
00:06:27 -!- fungebot has joined.
00:06:27 -!- fungebot has quit (Remote closed the connection).
00:06:32 <jix> urgh
00:06:39 -!- fungebot has joined.
00:06:39 <fungebot> Hello tobegnuf:
00:06:45 -!- jix has left (?).
00:06:49 -!- jix has joined.
00:06:50 <fungebot> Hello xij
00:07:32 <jix> anyone else want's to test it?
00:09:07 <jix> no one..
00:09:21 <fungebot> Hello xij
00:09:25 <jix> muhahaha
00:09:37 <jix> JOIN
00:09:38 <fungebot> Hello xij
00:09:53 <jix> as i said crappy and sub-minimal
00:10:28 <fungebot> Hello xij
00:11:12 <jix> tomorrow i'm going to write a better bot
00:11:35 <{^Raven^}> jix: what would the bot di
00:11:39 <{^Raven^}> *do
00:11:52 <jix> {^Raven^}: the better bot?
00:11:59 <{^Raven^}> jix: yeah
00:12:44 <jix> i thought about a little rpn calculator
00:13:22 <jix> or something else usable
00:13:41 <jix> {^Raven^}: try to say JOIN
00:13:41 <fungebot> Hello xij
00:14:18 <{^Raven^}> JOIN
00:14:18 <fungebot> Hello }^nevaR^{
00:14:40 -!- jimbo000 has quit (Read error: 60 (Operation timed out)).
00:14:44 <jix> ok it has no problems with nicks that are not jix
00:15:31 -!- fungebot has quit (Remote closed the connection).
00:15:38 <jix> good nite
00:16:33 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
00:17:00 <{^Raven^}> Hmmm...for a temporary hack we could all use palindromic nicks :)
00:37:53 -!- GregorR has changed nick to GregogerG.
00:38:59 <GregogerG> JOINIOJ
00:39:04 <GregogerG> (Sadly, the bot is nae here)
00:39:22 -!- GregogerG has changed nick to GregorR.
00:48:01 <lament> is the bot written in befunge?
00:57:41 -!- heatsink has joined.
01:03:37 -!- BigZaphod has joined.
01:47:34 * {^Raven^} toddles off to bed
01:49:23 <heatsink> toodles
01:50:59 -!- graue has joined.
02:42:29 -!- BigZaphod has quit.
02:51:02 -!- kipple___ has quit (Read error: 60 (Operation timed out)).
03:40:10 -!- BigZaphod has joined.
04:31:06 -!- heatsink has quit ("Leaving").
04:32:06 -!- yrz_ has quit (Read error: 110 (Connection timed out)).
04:48:40 -!- malaprop has quit ("quit").
05:30:59 -!- BigZaphod has quit.
06:15:30 -!- BigZaphod has joined.
06:39:24 -!- graue has quit ("Donate a manual typewriter to ME for your only hope for a future!").
06:39:45 <GregorR> BWAHAHAHA
06:40:00 -!- BigZaphod has quit.
06:56:31 -!- comet_11 has joined.
06:57:26 -!- comet_11 has quit (Client Quit).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
10:32:44 -!- jix has joined.
10:33:09 <jix> moin
10:34:35 -!- yrz has joined.
11:20:28 -!- kipple___ has joined.
11:45:05 -!- comet_11 has joined.
11:45:39 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
12:17:42 * jix is doing a BIG server cleanup
12:31:07 <{^Raven^}> jix: rm -rf / perchance?
12:31:27 * {^Raven^} warns everybody not to actually type that as a root user
12:32:13 <jix> nah just deinstalled all optional packages using ssh
12:32:21 <jix> did you know that ssh is an optional package??
14:03:17 * {^Raven^} saved about 4Gb clearing the package cache alone
14:11:06 <GregorR> Don't type that as ANY user, it'll still recurse and delete all your files.
14:11:38 <GregorR> (Just all of that user's files, not ALL the files though)
14:30:02 <jix> the wiki is down!
15:02:00 -!- malaprop has joined.
15:09:21 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
15:09:46 -!- jix has joined.
15:16:41 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
16:29:28 -!- fungebob has joined.
16:41:41 * yrz canzone che parla di una betoniera
17:14:57 -!- fungebob has quit (Read error: 110 (Connection timed out)).
17:25:12 <GregorR> Hmm, how can I write a programming language that actually causes physical pain to program in.
17:25:37 <GregorR> A language that must, for example, be written in the blood that gushes when you tear off a fingernail.
17:33:36 -!- jix has joined.
17:35:02 <jix> /back
17:50:54 <jix> i'm writing fungebot2
17:55:58 -!- graue has joined.
17:57:23 -!- BigZaphod has joined.
18:10:01 -!- _graue_ has joined.
18:30:24 -!- yrz_ has joined.
18:35:58 -!- graue has quit (Read error: 110 (Connection timed out)).
18:36:37 -!- _graue_ has changed nick to graue.
18:43:19 * GregorR watches graue do the majestic dance of the not-registered-through-NickServ :)
18:46:35 <graue> I am registered through NickServ, I just didn't remember/care about being able to use its kill feature
18:47:13 <GregorR> Ah, hehe :)
18:47:37 <graue> what would 2L look like if all spaces were treated like +s, and all printing characters like *s, with no nop command?
18:49:36 <GregorR> I've been trying to determine if it could work with no nop.
18:49:44 -!- yrz has quit (Read error: 110 (Connection timed out)).
18:49:47 <GregorR> Unfortunately, I think you've got me there, it's clearly a 3L.
18:50:22 <graue> we could call the new nopless language 1L
18:50:38 <GregorR> lol
18:51:04 <graue> think about it though, spaces are turns and only *s can actually be executed
18:51:15 <graue> you'd have to do a bunch of crazy stuff to get anything useful to happen
18:51:18 <GregorR> I'm almost positive it would be non-Turing-complete, whereas 2L is presumably Turing complete.
18:51:30 <graue> not TC, eh?
18:51:37 <graue> what leads you to conclude that?
18:51:51 <GregorR> Hmm, lemme see if I can verbalize my logic ...
18:52:17 <GregorR> You couldn't loop, because getting to the beginning of the loop would involve precisely undoing everything you did.
18:52:35 <graue> not necessarily
18:52:41 <graue> going one way, you could increment a variable
18:52:50 <graue> going the other way, you could decrement a throwaway cell you weren't using
18:53:05 <graue> "unbalanced" loops like [->+] would not be possible though
18:53:11 <graue> are those required for TC?
18:53:45 <GregorR> Hmmm ...
18:54:00 <GregorR> The problem with having a throwaway cell is that you select a cell by walking up or down.l
18:54:35 <GregorR> So you would hit the same "throwaway cell" every loop, and couldn't use it as an incre/decrementor.
18:54:39 <GregorR> I think >_>
18:54:57 <GregorR> Hmm, /me is mentally formulating ...
18:55:44 <graue> that's a good point, whatever cell you're working on at any given time would correspond to the line you're on
18:56:17 <graue> which I guess is definitely un-TC: to use an unbounded amount of memory would require an unboundedly long program
18:56:17 <GregorR> And I believe the value would correspond to the column.
18:56:25 <GregorR> Well, not quite, but in a sense.
18:56:36 <GregorR> Err, that line was to my own comment.
18:56:42 <graue> yes
18:57:13 <graue> I'm thinking of possible variations
18:57:21 <graue> what if, after a turn, the next command is treated as a nop?
18:57:45 <GregorR> So a turn becomes sort of a turn-n-jump
18:58:06 <GregorR> Well, anyway, I'm at work, so I'm going to go back to working :P
18:58:21 <graue> say, what happens in 2L if you do this:
18:58:21 <graue> +
18:58:22 <graue> >>>>+
18:58:22 <graue> +
18:58:28 <graue> where > is the direction of the code pointer
18:59:52 <cpressey> http://en.wikipedia.org/wiki/Black_Box_%28game%29
19:00:03 <cpressey> (sorry, that's neither here nor there, but 2L sort of reminds me of it)
19:00:47 <graue> it's not clear from the 2L description whether, in that case I mentioned, the code pointer turns around and comes back out, or whether it skips through the upper or lower +
19:00:59 -!- calamari has joined.
19:02:16 <GregorR> It turns around and comes back.
19:02:33 <GregorR> Because it turns either right or left, then interprets the + in that direction and turns the same direction again.
19:02:53 <graue> ok, thanks for the clarification
20:01:39 -!- _graue_ has joined.
20:02:30 -!- _graue_ has quit (Client Quit).
20:07:26 -!- yrz has joined.
20:23:57 -!- yrz_ has quit (Read error: 110 (Connection timed out)).
20:29:35 -!- graue has quit (Read error: 110 (Connection timed out)).
21:21:58 -!- graue has joined.
21:22:06 <graue> have any complete programs been written in 2L?
21:22:33 <graue> I ask so that I can test my interpreter; the site at www.befunge.org is down
21:27:51 <GregorR> One moment, I can put them all into some accessable place.
21:28:17 <pgimeno> hm, it would be a good idea to upload it to the svn repository
21:28:22 <GregorR> Actually, I've only ever written one 8-D
21:29:11 <GregorR> http://www.codu.org/HelloWorld.2l
21:29:41 <GregorR> I don't have an account, but I'd be glad to add it if I had one, or somebody else can add it if they please.
21:30:00 <GregorR> Oh wait, I should probably upload it first :P
21:30:45 <GregorR> OK, it's up.
21:31:48 <graue> wow, that's a pretty damn long hello world
21:33:01 <GregorR> 8-D
21:33:07 <GregorR> It's certainly not optimal.
21:33:44 <GregorR> I didn't reuse, so it's nasty, but it works.
21:43:15 <jix> GregorR: ok you have to write an all uppercase language now..
21:44:55 -!- calamari_ has joined.
21:46:38 <calamari_> non-wrapping versions are up http://esoteric.voxelperfect.net/wiki/Brainfuck_constants
21:48:16 <calamari_> is 255 optimal?
21:49:20 <calamari_> hmm, seem to be missing nonwrapping 2 cell for 255
21:50:06 <jix> calamari_: it makes no sense to include the + only constants imho
21:50:11 <pgimeno> I'd remove the (n,1) non-wrapping version
21:50:13 <pgimeno> heh
21:51:34 <calamari_> I was trying to be complete about it
21:52:00 <calamari_> seems weird including the wrapping 1 cell without including the nonwrapping
21:53:09 <pgimeno> indeed, sorry, I mean the (n,1)
21:53:17 <pgimeno> either wrapping or non-wrapping
21:54:09 <calamari_> well, you can remove it if you'd like, I suppose.. but maybe start a talk thread about it
21:54:10 <graue> calamari_, are you going to share your program?
21:54:18 <jix> calamari: or add line breaks ..
21:54:28 <calamari_> graue: I'd like to.. but I protest the difficult wiki uploading
21:55:01 <jix> calamari_: image uploading is very easy
21:55:07 <jix> is file uploading different?
21:55:17 <calamari_> jix: so I should save my code as an image? :)
21:55:25 <GregorR> lol, the wiki battle never ends on #esoteric does it?
21:55:35 <GregorR> calamari: (re)write it in piet ;)
21:55:46 <graue> calamari_, email it to me and I'll add it to svn
21:55:52 <graue> mailto:graue@oceanbase.org
21:57:12 <graue> I protest that the Brainfuck constants page now scrolls horizontally :(
21:57:38 <calamari_> graue: may I ask why code uploads are disallowed?
21:57:53 <graue> I didn't know they were disallowed
21:58:07 <graue> does it check the file type?
21:58:30 <calamari_> well, if code uploads are allowed, why the separate file repository?
21:58:46 <graue> for organization purposes
21:58:55 <graue> a program like yours could go in brainfuck/util/
21:59:20 <calamari_> oh, so mediawiki has no concept of directories
21:59:41 <graue> yeah, its upload system is really just designed for sounds and images
21:59:47 <graue> maybe only images
22:00:10 <calamari_> perhaps it can be repaired with a plugin
22:00:35 <graue> perhaps the file repository works fine already?
22:01:08 <calamari_> nah..
22:01:31 <calamari_> if a plugin could be written to atach an upload to a certain page, would you allow it?
22:03:53 -!- calamari has quit (Read error: 110 (Connection timed out)).
22:04:00 -!- calamari_ has changed nick to calamari.
22:04:11 <graue> if by upload you mean "file on the file repository", then perhaps, if it wasn't too much of a hassle to install
22:05:18 <calamari> graue: I mean, for example, if I upload my file while in the page xyz, it'd be in directory /xyz, so that all xyz-related programs are stored together. Then, it would also appear as a downloadable file on page xyz
22:06:21 <graue> then no, I see no reason to store files in two separate places.
22:06:50 <calamari> sure.. so scrap the old file repository
22:07:03 <calamari> the files can be moved to the new structure
22:07:43 <jix> i think a file manager for media wiki would be cool
22:08:00 <jix> there are special pages for viewing them like a normal directory structure
22:08:28 <jix> and a wiki page can include things like [[Directory:/brainfuck]] for listing all brainfuck files
22:08:30 <calamari> jix: wouldn't it be cooler to go to the befunge page and have a list of files you can download, right on that page?
22:08:56 <jix> or [[File:/brainfuck/a_kewl_interpreter.tar.bz2]] for direct downloads
22:09:24 <calamari> that
22:09:25 <calamari> 'd work
22:09:32 <jix> calamari: yes but i think having a normal directory structure is good too for just browsing some files
22:09:48 <calamari> how would files be uploaded easily?
22:09:59 <jix> calamari: browser upload?
22:10:08 <calamari> on the Special: pages I would hope?
22:10:14 <jix> yes
22:10:27 <jix> i'm going to try writing such a plugin
22:10:32 <calamari> what do you think, graue? does this sound reasonable?
22:10:37 <jix> i've holidays and a lot of time
22:12:57 <calamari> jix: that'd be really cool. thanks
22:13:14 <jix> mediawiki is php?
22:13:18 <GregorR> Yup
22:13:22 <jix> urgh
22:13:27 <GregorR> lol
22:13:33 <GregorR> Maybe I'll go write it for Giki XD
22:13:41 <jix> Giki?
22:13:55 <GregorR> Why do I even try?
22:14:02 <GregorR> http://giki.sourceforge.net/
22:14:51 <GregorR> Hmm, I get the feeling that my letting on my PHP skill just volunteered me to writing this plugin ...
22:15:37 <jix> i don't like php
22:15:56 <jix> but i know it so there shouldn't be a problem
22:16:09 <GregorR> Lesse, if I remember right you're a ruby guy, right?
22:16:21 <jix> yes
22:16:45 <GregorR> OK, I can respect that. If you disliked PHP but prefered perl, I would have to blacklist you from my knowledge ;)
22:17:15 <jix> i first learned RealBasic (my first programming language with ca. 10 years)
22:17:25 <jix> than i learned Perl (and it was better than RealBasic)
22:17:37 <jix> than i learned PHP ( and it was better than Perl)
22:18:19 <jix> then i learned C (and it was like: urgh? i don't want to care about memory and that lowlevel stuff!)
22:18:39 <GregorR> lol, poor C doesn't get any respect any more :P
22:18:53 <calamari> too many people using gets ;)
22:19:09 <GregorR> True
22:19:29 <jix> i'm using c... but if you only used gc:ed languages and then learn c..
22:19:38 <jix> c is a great language
22:19:45 <jix> (ruby is implemented in c so it has to be great ;)
22:20:02 <GregorR> Heheh
22:20:07 <calamari> asm > c ;)
22:20:14 <GregorR> Machine code > ASM
22:20:16 <jix> oh and afaik the argument c isn't turingcomplete because of sizeof(void*) is wrong!
22:20:25 <jix> if c runs on a machine with infinte integers
22:20:30 <GregorR> That's implementation specific, for one.
22:20:41 <jix> sizeof(void*) can be infinite too
22:22:08 <calamari> the integer size doesn't need to be infinite.. just access an inifinite number of them from disk, etc.
22:22:54 <GregorR> Aslo a very good point.
22:23:32 <jix> calamari: afaik the c documentation says sizeof has to return an integer
22:23:38 <jix> oh from disk
22:23:57 <calamari> it'd depend on if there were any rules about the implementation of file i/o
22:23:58 <jix> 1. read 2. think 3. write
22:24:31 <jix> i always reverse the list
22:26:22 <graue> I don't think that's correct
22:26:31 <graue> you cannot create an unbounded number of files in C
22:27:35 <jix> graue: would such a wiki file system work for the esolang wiki?
22:27:45 <graue> you can create a lot, no doubt, but the filename has to be in a char array, so as long as there is a limit on variables in memory (which we've already established, thanks to sizeof having to return a finite number), there is a limit on how many files can be used
22:28:04 <graue> jix: I'd rather keep it simple
22:28:10 <graue> MediaWiki barely works as it is
22:28:34 <jix> graue: you could access a InfiniteMemory pci device
22:28:41 <graue> also one of the reasons we rejected putting files on the wiki is that they may be subject to copyrights
22:28:45 <jix> or a Brainfuck device using usb!
22:28:50 <calamari> graue: doesn't seem that complicated to me
22:28:52 <graue> jix: not with standard C
22:29:16 <calamari> graue: it'd just be entendning the existing Special:Upload(s?) page to allow directories
22:29:30 <jix> graue: of course, i assume the pci libs of your system are written in c
22:29:37 <calamari> graue: then the files would be linked just like normal, but with directory path too
22:29:54 <graue> calamari: that's a big extension to "just" make
22:30:07 <graue> jix: you probably need some assembly to talk to the hardware
22:30:26 <calamari> graue: why are you so stuck on the repository? it is useless
22:30:28 <jix> graue: on the gba you don't
22:30:38 <graue> jix: ok, so the GBA is Turing-complete?
22:30:43 <graue> that proves nothing about C
22:31:03 <pgimeno> on unix-like systems everything is a file, no assembly
22:31:07 <graue> if you want to prove C turing complete, you have to stick to what C provides
22:31:20 <graue> pgimeno: all unix-like systems require some assembly in the kernel to talk to the hardware
22:31:23 <jix> graue: c provides reads and writes to memory
22:31:48 <graue> C also leaves undefined what happens if that isn't memory you allocated yourself, or got with the & operator
22:32:16 <jix> and memory mapped device communication isn't something undoable
22:32:23 <jix> un-doable
22:32:24 <graue> but that's not C
22:32:27 <jix> not undo-able
22:32:30 <graue> that's a particular programming environment
22:32:31 <pgimeno> my point is: if the infinite tape device is already given by the OS then C can be TC
22:32:48 <graue> pgimeno, yes, but that's not C, that's the OS's programming environment
22:33:03 <jix> graue: just define sizeof(int) == infinite
22:33:14 <jix> and sizeof(void*) == sizeof(int)
22:33:15 <graue> jix: the standard doesn't allow that
22:33:20 <jix> graue: it does
22:33:36 <graue> I'm pretty sure it doesn't, but if you can cite where it does go ahead
22:33:47 <jix> at least i didn't found a word/sentence/paragraph that disallows that
22:34:10 <jix> (i looked at the c99 standard)
22:34:26 <graue> The sizeof operator yields the size (in bytes) of its operand, which may be an expression or the parenthesized name of a type. The size is determined from the type of the operand. The result is an integer. ... its type (an unsigned integer type) is size_t, defined in the <stddef.h> header.
22:34:31 <graue> http://dev.unicals.com/papers/c99-draft.html#
22:34:59 <jix> where does it say that integers are finite
22:35:26 <pgimeno> what would sizeof(int) return otherwise?
22:35:32 <jix> infinity
22:35:48 <jix> if sizeof(size_t) is infinity where is the problem
22:35:58 <GregorR> However, I think it ultimately comes down to this: The C language itself does not define sizeof(void *), and so the C LANGUAGE is Turing complete, since the LANGUAGE doesn't place any limits
22:35:59 <jix> than size_t is able to store infinty
22:36:10 <jix> ack
22:36:19 <graue> GregorR, you're missing the point
22:36:34 <graue> if the C language itself says sizeof(void *) cannot be infinite, then the C language is not Turing-complete
22:37:03 <jix> graue: where does it says that
22:37:06 <graue> it doesn't matter if sizeof(void *) is A(20, 19) where A() is Ackermann's function, that's still finite
22:37:09 <graue> jix: I said "if"
22:37:26 <jix> yes but it doesn't
22:37:51 <pgimeno> well, "infinite" is not an integer
22:38:00 <graue> good point
22:39:19 <pgimeno> not in the mathematical sense, but it could be part of the domain of a C integer... the question is if the standard would disallow that
22:39:47 <GregorR> If sizeof(void *) was infinite, you'd have infinite space to store sizeof(void *) :)
22:39:59 <graue> what's (inf & 1) where inf is an integer variable holding infinity?
22:40:36 <pgimeno> probably & is illegal when applied to that value
22:40:38 <jix> there are infinte ways to store infinity
22:40:42 <graue> since the standard doesn't define "integer" so far as I know, there's no reason to believe they aren't using the common definition
22:40:50 <graue> & is illegal? the standard doesn't say so
22:41:02 <jix> inf & 1 could be 1 or 0
22:41:08 <pgimeno> emphasis in "to that value"
22:41:10 <GregorR> Why wouldn't inf & 1 be 1? That seems most logical.
22:41:19 <GregorR> Infinite many on bits & 1 = 1
22:41:33 <graue> maybe infinity is 1 followed by infinite zeroes?
22:41:42 <graue> (in binary or decimal or whatever base you desire)
22:41:58 <jix> or 1 is followed by a never repeating random sequence?
22:42:08 <graue> yes
22:42:22 <jix> but & isn't illegal with any of that infinities
22:42:29 <GregorR> OK, this conversation is getting a bit to esoteric for me (hahaha), I'm going back to work :P
22:42:44 <pgimeno> heh
22:43:57 <{^Raven^}> graue: any number that can be expressed is finite, an infinite number cannot be expressed numerically hence the infinity symbol
22:44:19 <pgimeno> I wonder if the standard says/assumes sizeof(type) must return a numerical value
22:45:23 <jix> oh wait
22:45:24 <graue> it does, I quoted it
22:45:26 <graue> above
22:45:31 <jix> sizeof(void*) == 1
22:45:32 <graue> the sizeof operator returns a size_t
22:45:38 <jix> but a byte is infinity large
22:45:44 <graue> which is an unsigned integer value
22:45:57 <GregorR> I thought C needed to have a byte as 8 bits?
22:46:17 <jix> GregorR: does it?
22:46:22 <{^Raven^}> no, a byte can be any number of bits wide, it is implementation dependant
22:46:40 <graue> A byte is composed of a contiguous sequence of bits, the number of which is implementation-defined. The least significant bit is called the low-order bit; the most significant bit is called the high-order bit.
22:46:48 <graue> an infinitely large byte could not have a high-order bit
22:47:20 <jix> why couldn't it
22:47:26 <{^Raven^}> graue: that's a metaphysical question
22:47:27 <jix> it's 2^Infinity
22:47:34 <pgimeno> infinity is definitely not an integer; I thought that the sentence about sizeof() meant an int
22:47:43 * GregorR takes out one of his hairs and tears it asunder.
22:47:45 <graue> it did indeed
22:47:53 <jix> pgimeno: sizeoff(void*) == 1 no problem
22:48:07 <jix> but that 1 byte has infinite bits
22:48:20 <pgimeno> what's the value of the high-order bit of a byte, then?
22:48:31 <jix> 2^Infinity
22:48:32 <pgimeno> how do you determine it, I mean
22:48:56 <jix> do i have to determine it? the standard just says its called high-order bit
22:48:57 <GregorR> Within C, I think you would have to do some logic on (unsigned) 0 - 1
22:49:11 <GregorR> But for that matter, what is (unsigned) 0 - 1
22:49:16 <graue> you don't need the zero, - is a unary operator, just do (unsigned)-1
22:49:21 <{^Raven^}> we can define the number of bits in that byte using the lowest order of magnitude of infinity (Aleph Zero)
22:49:30 <GregorR> Err, right graue that makes more sense.
22:50:06 <graue> I think pgimeno nailed it already, no definition of "integer" in common use allows for the possibility of infinity
22:50:47 <jix> graue: c doesn't say that the sign is the high-order bit
22:50:51 <pgimeno> anyway jix is right: if a byte can be infinite and an int is 1 byte long then sizeof(int)=1
22:51:12 <graue> yeah, but then CHAR_BIT is infinity
22:51:32 <pgimeno> yuck
22:52:25 <pgimeno> I'll stick to Noll's calc instead of C when I need a TC C-like language :)
22:52:49 <jix> c is too implementation specific..
22:53:08 <jix> i have to do more useful things.. (like searching an esoteric language for writing an irc bot)
22:54:44 <jix> {^Raven^}: are BFBasic arrays stable now?
22:55:06 <pgimeno> mmmh... use Thue? :)
22:55:19 <calamari> jix: there may still be some bugs
22:55:20 <pgimeno> it's good managing strings
22:55:33 <jix> pgimeno: the input output system of Thue is a bit weak
22:55:50 <jix> calamari: the last time i checked it it was near unusable
22:55:53 <{^Raven^}> jix: not in 1.50rc2, but they work very well in version 1.30 (on calamari's site)
22:57:22 <jix> does bf-basic works with 8bit bf xor 16bit bf?
22:57:30 <jix> or both
22:57:38 <calamari> 8-bit
22:57:47 <jix> and bf-asm?
22:57:48 <graue> what happens with a 2L program when it goes off the right or bottom of the program? does it just loop forever?
22:57:51 <calamari> 16-bit
22:58:23 <graue> I notice only going off the top or left is defined as ending the program
22:58:35 <calamari> actually I think bfasm can use any number of bits >= 16
22:58:44 <calamari> let me check that tho :)
22:59:22 <GregorR> graue: In my minds view of a 2L program, it goes infinitely right and down.
22:59:33 <GregorR> Clearly that is implementation specific - in my 2Li, it'll just crash 8-D
22:59:51 <calamari> yeah, according to what I wrote in the specs, you can use anything 16-bits and over with bfasm
22:59:58 <GregorR> So yes, if you went off the right or bottom end of a 2L program it would quit - but there is no right or bottom end of a 2L program.
23:00:28 <GregorR> (Actually, I might have cought it and done somethign strange with it in my 2Li...)
23:01:00 <{^Raven^}> calamari: jix: it's best to use an interpreter that does [-] in one operation otherwise you will be waiting a long time for any -[-] type operations to complete
23:02:16 <calamari> jix: the bfi.c I included in bfasm handles [-] and should be able to run any 16-bit bfasm program
23:02:32 <jix> its included in bfbasic too
23:02:38 <calamari> there are certainly faster interpreters tho :)
23:06:24 <graue> GregorR: if the active memory cell is TL1 and I run into a +, does it turn left or right? what is the value at TL1 assumed to be?
23:08:34 <GregorR> 0 at all times if I remember properly.
23:08:57 <GregorR> When you're done, I'll have some spec-upgrading to do XD
23:09:45 <GregorR> (BTW, yes, I verified, it's 0 at all times)
23:12:58 -!- BigZaphod has quit.
23:14:10 <graue> my interpreter ends if it goes off the right or bottom of the program, so I guess it isn't compliant
23:14:26 <graue> (it defines "bottom" as the last line, and "right" as "beyond the last character on the longest line")
23:14:39 <GregorR> The standard is "undefined"
23:14:44 <graue> fair enough
23:14:46 <GregorR> Or more specifically "the result is undefined"
23:15:19 <graue> I'm trying to write a program that prints a capital A, but I can't figure out how to do it
23:16:58 -!- comet_11 has changed nick to CXI.
23:18:24 <jix> the irc msg dispatcher is done 70%
23:18:39 <calamari> jix: whatcha writing it in?
23:18:46 <jix> BFBASIC
23:18:48 <calamari> cool
23:19:30 <graue> oh there, I did it
23:22:11 <graue> I'm still interested in making a 1L
23:23:00 <GregorR> graue: Is your interpreter working slash can I see it?
23:23:23 <graue> it's on another computer, I'd have to reboot several times to get it over here to send to you (long story)
23:23:33 <graue> it seems to be working; my A program works
23:23:58 <graue> I made it by just modifying my Archway2 interpreter a little bit: http://www.esolangs.org/files/archway/impl/archway2.c
23:24:03 <GregorR> What language is it in?
23:24:05 <graue> C
23:24:06 <GregorR> Oh, C.
23:24:16 <GregorR> But there's already a 2L in C ;)
23:24:28 <jix> please privmsg me
23:24:31 <graue> I rewrote some of run() and that was it
23:25:27 <graue> does your 2L in C support arbitrarily large amounts of code and data, limited only by the C implementation and the memory available to the interpreter?
23:25:43 <graue> and does it do so in a roughly efficient manner?
23:25:55 <graue> and allow for individual lines to be arbitrarily long as well?
23:26:00 <GregorR> Burn :)
23:26:21 <GregorR> No, mine is quite teh sukk.
23:26:32 <graue> also, splint gives only 6 warnings on mine :)
23:27:42 <GregorR> But do you have a 2Lc? :)
23:27:56 <GregorR> That produces code so ugly it makes you want to vomit with rage?
23:29:24 -!- jix2 has joined.
23:29:50 <jix> mah the xchat raw log is wrong!
23:30:09 <GregorR> There was some talk of making a 1L that worked by having a different angle of incidence for turns (If it was in the left corner, it turned right and did an op, if it was in the right corner, it turned left and did no op)
23:30:15 <jix2> that's me using netcat (like telnet but not for shells)
23:30:35 <GregorR> netcat rocks
23:30:47 <jix2> it does
23:30:57 <GregorR> But I think it was decided that A) angle of incidence would make it like two commands and B) ... there was some other issue ...
23:31:05 <jix2> it's the best irc client!
23:31:10 <GregorR> Are you using netcat classic or GNU netcat?
23:31:31 <jix> the man page says nothing about GNU
23:31:44 <jix> and afaik the gnu netcat command is netcat my netcat command is nc
23:32:14 <GregorR> Both correct.
23:32:22 <GregorR> GNU netcat is better IMHO
23:32:40 <jix> but mac os x comes with the other netcat
23:33:10 <GregorR> Ah :)
23:33:25 <jix> i miss nc -lp port -some_letter command for starting a server on port port tunneling stdin and stdout of command through it
23:34:25 <GregorR> I thought netcat classic supported that ...
23:34:36 <GregorR> I guess I haven't actually used it in quite a while XD
23:36:50 <graue> how about a 1L based on P'', with only commands equivalent to +< and >?
23:37:00 <graue> in the other two directions, spaces could be nops
23:38:11 <graue> or, a third command could be [.<]<[,<] which would eliminate the need for TL0 and TL1, and the fourth direction could be a nop
23:38:19 <GregorR> Link to info on P''?
23:38:34 <graue> http://www.esolangs.org/wiki/P%27%27
23:39:30 <graue> essentially, it's Brainfuck with no I/O, and with a +< command, and without the commands that can be derived from other commands
23:40:40 <GregorR> Hmm, THAT many commands can be derived?
23:41:31 <graue> from +< > [ and ], and if wrapping around with incrementation is allowed, then yes, +, <, and - can be derived
23:41:52 <GregorR> Ahhh, of course, wrapping.
23:41:55 <GregorR> That didn't occur to me.
23:42:16 <GregorR> So in 8-bit, to get 255, you'd have to do (+<)(>) 255 times
23:42:24 <graue> yes
23:42:47 <graue> of course, that doesn't require wrapping, and would work for more than 8-bit
23:43:15 <GregorR> Yes, that was quite certainly the worst possible example 8-D
23:46:51 -!- BigZaphod has joined.
23:48:12 <GregorR> You know graue, I'm starting to believe XD
23:48:16 <GregorR> It just might work.
23:48:38 <GregorR> A single BF command might map to a 50x50 block of unreadable mess ......
23:48:41 <GregorR> But it may work.
23:54:21 <jix> i need a fast, very fast brainfuck compiler
23:54:48 <{^Raven^}> jix: 8-bit or 16-bit?
23:54:53 <jix> 8-bit
23:56:50 <{^Raven^}> jix: http://jonripley.com/i-fiction/games/LostKingdomBF.zip
23:57:13 <{^Raven^}> there's a very fast portable one inside bftools
23:58:06 <jix> and a compiler?
23:59:06 <{^Raven^}> ah, that's an interpreter. what do you need to compile BF to?
23:59:38 <jix> to c to ppc and pc
23:59:55 <GregorR> Do you mean that the compilation has to be fast or the compiled code has to be optimal?
←2005-07-18 2005-07-19 2005-07-20→ ↑2005 ↑all