00:03:20 -!- ivan` has joined.
00:05:34 <calamari> okay, mplayer is my friend.. encoded an mp3 for /dev/dsp :)
00:06:14 <calamari> reading that /dev/audio uses 1 bit per sample, trying that :)
00:10:49 <calamari> it compresses 12-16 bit into 8 bit (logarithmic)
00:11:01 <calamari> might sound better, gotta find the right combination of settings
00:11:24 <calamari> actually.. hmm I could do 1 bit.. 0 or 255 to dsp :P
00:11:58 <calamari> wonder if audio can be dithered like image data
00:35:09 <ihope_> Dither white noise with pink noise to get light pink noise?
00:39:22 <calamari> GregorR: does egobf read the entire program before running it?
00:39:57 <GregorR-W> calamari: Yes. It parses it into an intermediate representation.
00:40:11 <calamari> so this 300mb program is probably a tad too large
00:40:29 <GregorR-W> Is it failing or just taking a long time?
00:40:45 <GregorR-W> Then yeah, that 300MB program is probably a tad too large ;)
00:46:07 <calamari> was a bug in my conversion program
00:46:18 <calamari> much smaller files now, can use egobfi8
00:46:34 <calamari> just played 15 seconds of audio
00:47:12 <calamari> that is just a really lame +++++.-----. algorithm
00:47:35 <GregorR-W> Oh, but since it's audio, and forming a wave, that algorithm is actually fairly OK.
00:48:29 <calamari> here is the magical incantation for mplayer:
00:48:33 <calamari> mplayer filename.mp3 -ao pcm:nowaveheader:file=output.dsp -srate 8000 -af-adv force=1 -af channels=1,format=u8
00:49:30 <calamari> then you can convert output.dsp to a bf program and enjoy
00:49:39 <GregorR-W> Audio out to raw wave format with no header into the file output.dsp at the rate 8kHz with some weird feature forced, one channel, uncompressed 8-bit
00:50:16 <pikhq> Yeah. That's the default setup for /dev/dsp.
00:50:36 <pikhq> Anything more advanced requires more capabilities than Brainfuck has.
00:51:20 <GregorR-W> Oh, you mean if you want to change what format /dev/dsp is using before writing to it?
00:51:40 <calamari> GregorR: the weird feature is to set highest quality vs fast output
00:52:31 <calamari> I just got what you said about the wave and algorithm.. good point :)
00:53:13 <calamari> and looking at the output proves you correct.. it's pretty decent
00:53:16 <pikhq> GregorR-W: Care to explain using <stdio.h> from BF? :p
00:53:44 <GregorR-W> pikhq: So long as you only want printf and scanf :P
01:00:30 <calamari> this 6m 19s song is 22,315,587 bytes of bf
01:05:00 <pikhq> The question I have is how much smaller it would be in BFZ.
01:06:34 <pikhq> http://pikhq.nonlogic.org/bfz.tar.gz
01:06:45 <pikhq> No; it's a compression program for Brainfuck. . .
01:07:08 <pikhq> (the above tarball contains my BFM implementation, and not the one I submitted to the Esolang contest)
01:09:12 <calamari> heh, never mind, time seems to keep climbing
01:09:34 <pikhq> My BFM implementation should be much more concise once I get around to creating a program to do the shortest 2-cell versions of various constants. . .
01:09:37 <calamari> image streaming bf audio.. hehe
01:11:51 <pikhq> . . . Speaking of BFM, I should probably try and clean that up some more.
01:12:09 <pikhq> Maybe get a simple installation system for it.
01:12:37 <calamari> http://kidsquid.com/Moby - Go.bf
01:14:04 <pikhq> We've got ourselves a new audio standard!
01:14:07 * pikhq is listening to it
01:22:01 <calamari> if sopmeone can figure out the mplayer settings for mulaw, then it might sound better
01:22:30 -!- Hierofant has joined.
01:23:07 <calamari> GregorR: you probably wouldn't enjoy that song since you like country or whatever :)
01:24:13 <GregorR-W> Many things older than a hundred years or so.
01:26:13 <ihope_> GregorR-W likes the letters E and T.
01:26:18 <ihope_> He uses them all the time.
01:27:35 -!- GregorR-W has quit ("Chatzilla 0.9.75 [Firefox 1.5.0.6/0000000000]").
01:27:47 <ihope_> NOOO! I didn't mean to kill him!
01:28:00 <calamari> ihope_: what did that mean anyhow? :)
01:28:24 <ihope_> GregorR uses E and T a lot, doesn't he?
01:30:36 <pikhq> calamari: Yes. . . But BFZ requires only a Brainfuck interpreter to compress and decompress.
01:30:58 <calamari> I'm pretty sure you could decompress bz2 with a bf program
01:31:18 <pikhq> Do *you* want to be the one to write that?
01:31:33 <calamari> no, I'llk leave it as an exercise for the reader
01:31:51 <pikhq> BFZ, on the other hand, is already written in Brainfuck.
01:32:39 <calamari> seems strange that the result is so large
01:32:53 <pikhq> It's RLE'ing +, -, < and >.
01:33:03 <calamari> there are only 8 symbols, so it should be able to be compressed to 3/8 size
01:33:43 <pikhq> Yes, but I just didn't bother. . .
01:33:55 <calamari> and with this, ther are only 3 symbols
01:33:57 <pikhq> The format was made for the Esolangs contest.
01:34:06 <pikhq> I wanted something *simple* to write. ;)
01:34:11 <calamari> and in a certain structure at that
01:34:37 <calamari> but if we're doing unltimate compression or whatever, I could write a bf program that duplicates my audio2bf.c prog
01:34:56 <pikhq> Care to give me the source to that?
01:35:01 <pikhq> I'm willing to give it a shot. ;)
01:35:39 <calamari> should be trivial to implement this in bf
01:35:44 <pikhq> Although I'll do it in BFM, because I'm a little bit lazy ATM.
01:35:47 <calamari> wonder why I didn't think of doing it hehe
01:36:15 -!- ivan` has quit (" Want to be different? HydraIRC -> http://www.hydrairc.com <-").
01:36:15 <pikhq> Of course, BFM is Brainfuck + variables + macros, so it's not much higher level. ;)
01:38:20 <calamari> http://kidsquid.com/files/bf/audio2bf.c
01:39:09 <calamari> it was a quick hack, as you can tell
01:39:32 <calamari> gotta go do homework, have fun!
01:39:36 -!- calamari has quit ("Leaving").
01:44:43 <Hierofant> I just discovered esoteric languages
01:46:39 <pikhq> I give up on implementing greater than and less than. :p
01:50:48 * ihope_ saturates pikhq's eyebrows
01:54:04 <pikhq> Never mind. Found it.
02:05:41 <pikhq> If only I had previously written the needed macros.
02:28:29 * pikhq still loves how he wrote BFM. . .
02:28:49 <pikhq> A parser? Who needs to write that? Tcl does the job for me. :p
02:29:25 <pikhq> A macro system for Brainfuck.
02:29:52 <pikhq> http://pikhq.nonlogic.org/bfm.tar.bz2 Current tarball.
02:29:56 <Hierofant> sorry my h==f macro wasnt installed
02:30:16 <pikhq> I'll make another tarball soon as I bother cleaning up my current source tree.
02:30:33 <pikhq> macro h {char} {f char}? :p
02:33:07 <pikhq> BTW, I've not tested all of the macros in stdlib, so I can make no guarantee about their correctness. . .
03:07:14 -!- kipple_ has quit (Read error: 110 (Connection timed out)).
03:35:41 <ihope_> See how non-kipple drives out kipple?
04:07:20 -!- CakeProphet has quit (Read error: 104 (Connection reset by peer)).
04:08:42 -!- CakeProphet has joined.
04:08:45 -!- ivan` has joined.
04:09:27 -!- Razor-X` has changed nick to Razor-X.
04:09:27 -!- ivan` has quit (Client Quit).
04:10:27 -!- CakeProphet has quit (Read error: 104 (Connection reset by peer)).
04:10:33 <pikhq> Razor-X: You're back, I think.
04:10:36 <Razor-X> GregorR: Where can I grab the most recent tarball of RawIRC?
04:11:31 -!- CakeProphet has joined.
04:11:33 -!- CakeProphet has quit (Read error: 104 (Connection reset by peer)).
04:12:38 -!- CakeProphet has joined.
04:13:22 * pikhq lubs BFM some more
04:13:59 <pikhq> Speaking of which, I now have a proper compression program for my contest entry. . .
04:15:02 -!- CakeProphet has quit (Connection reset by peer).
04:15:55 * Hierofant reads fuckfuck source, laughs like 12 year old
04:16:10 -!- CakeProphet has joined.
04:16:19 -!- Hierofant has left (?).
04:16:25 <CakeProphet> God damn... what's up with my IRC connection?
04:19:44 -!- ihope_ has quit (Read error: 110 (Connection timed out)).
04:27:46 <GregorR> Razor-X: http://www.codu.org/rawirc.c
04:27:50 <GregorR> No tarball, just a single C file.
04:30:30 <Razor-X> I'm going to write an Ncurses port, mmmkay?
04:30:38 <Razor-X> And try to get it to compile on Windows too.
04:56:44 <GregorR> It should compile on Windows as-is.
04:56:56 <GregorR> But ncurses? What a waste.
05:16:08 -!- ivan` has joined.
05:16:30 -!- Arrogant has joined.
05:31:01 -!- ivan` has quit (Read error: 104 (Connection reset by peer)).
05:35:45 -!- dbc has joined.
06:33:54 -!- _jol_ has joined.
06:42:11 -!- EgoBot has joined.
06:42:11 <EgoBot> cannot read elfstream /home/gregor/esoteric/egobot/egobot/daemons/.EgoBot
06:43:34 <EgoBot> 2 EgoBot: daemon cat reload
06:44:08 <GregorR> !daemon EgoBot +[.++++++++++[>++++++>++++++++>+++<<<-]>-.++.>----.<++++++.++++++.-.>>-.[-]<[-]<[-]<[-]+>+[>,[>+>+<<-]>>---------->+<[>-<[-]]>[<<<<->>>>.-]<[-]<.[-]<<]<]
06:44:14 <GregorR> !daemon EgoBot bf +[.++++++++++[>++++++>++++++++>+++<<<-]>-.++.>----.<++++++.++++++.-.>>-.[-]<[-]<[-]<[-]+>+[>,[>+>+<<-]>>---------->+<[>-<[-]]>[<<<<->>>>.-]<[-]<.[-]<<]<]
06:44:22 <EgoBot> 1 GregorR: daemon EgoBot bf
06:44:26 <EgoBot> 2 EgoBot: daemon cat reload
06:45:28 <pikhq> !cat .sniarb stea toBogE!
06:54:15 -!- _jol_ has quit ("leaving").
07:10:29 -!- RodgerTheGreat has changed nick to RodgerTheZZzzz.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:00:26 -!- calamari has joined.
08:22:26 <Razor-X> GregorR: Good job being standardized *cough* assuming 80 columns *cough*.
08:27:05 <Razor-X> You know, I'll be doing similar things to you. Using Ncurses doesen't mean using panels, because I don't think Chicken has any bindings for things like termios.h and signal.h.
08:29:07 <GregorR> Yeah, being standardized. OH WAIT
08:30:18 -!- Arrogant has quit ("Leaving").
08:32:50 -!- calamari has quit ("Leaving").
09:35:56 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
10:18:42 -!- jix has joined.
10:29:27 -!- jix has quit (niven.freenode.net irc.freenode.net).
10:35:44 -!- jix has joined.
10:37:39 -!- kipple_ has joined.
11:07:51 -!- _jol_ has joined.
11:39:59 -!- _jol_ has quit (Read error: 110 (Connection timed out)).
12:30:51 -!- ihope_ has joined.
13:20:54 -!- GreyKnight has joined.
14:15:46 -!- smokecfh has joined.
15:20:06 -!- sparr_ has quit (Read error: 110 (Connection timed out)).
15:24:18 -!- sparr_ has joined.
15:59:57 -!- RodgerTheZZzzz has changed nick to RodgerTheGreat.
17:07:55 -!- _jol_ has joined.
17:12:50 -!- _jol_ has quit (Client Quit).
17:21:37 -!- GreyKnight has quit ("brb").
18:00:13 -!- Sgeo has joined.
18:19:39 -!- GreyKnight has joined.
18:34:52 -!- _jol_ has joined.
18:38:42 -!- jix has quit ("This computer has gone to sleep").
18:41:30 -!- calamari has joined.
18:57:18 -!- CakeProphet has quit ("haaaaaaaaaa").
19:02:21 -!- _jol_ has quit ("temci lo no citka").
19:29:13 <calamari> haven't quite cracked /dev/audio yet.. but none of the mulaw recordings seem to work on it
19:29:44 <calamari> the /dev/dsp recordings play, but with a staticky sound
19:32:41 <calamari> guess I spoke too son.. just found something
19:32:54 <calamari> /usr/src/linux/drivers/sound/ulaw.h
19:33:32 <calamari> doesn't look like I gain anything by using ulaw
19:34:05 <calamari> so I guess /dev/dsp is really superior
19:35:23 <pikhq> If only one could figure out how to do higher bit rates/sampling rates from /dev/dsp.
19:36:09 -!- Hierofant has joined.
19:46:05 -!- Hierofant has left (?).
19:49:15 <GreyKnight> !learn ideas Rings of protection from shapechangers should be immune to being polymorphed
19:57:56 <ihope_> You know, I oughta actually write that parody generator thing.
19:59:02 <Razor-X> I just realized I've never used Ncurses in a situation where input from another source gets printed on the screen without the user's consent.
20:00:36 <Razor-X> Kinda equivalent to ``This sucks'' or something like that.
20:01:22 * pikhq mutters about being the only BFM user. . .
20:02:03 <ihope_> Or maybe I should say 嫌なことわね? or something like that.
20:02:33 <pikhq> while foo {go;fuck;yourself}
20:02:38 <Razor-X> If you want to distinguish between ? and ? be my guest :P.
20:03:15 <Razor-X> Foo excecutes these actions in order: Go (to unspecified location), F*ck (something unspecified), yourself (ERR).
20:04:07 <Razor-X> I'm just making the point that you shouldn't have seperated the actions via semicolons.
20:06:07 <pikhq> Maybe I should rewrite that, though.
20:06:56 <pikhq> In psuedo-BFM. Whee. . .
20:08:58 <pikhq> Still in my loop. :p
20:10:08 <pikhq> Now you've killed the whole program. Including your bit. . .
20:10:22 <pikhq> while true {idiot}
20:13:43 <pikhq> It's compiled into Brainfuck.
20:13:55 <GreyKnight> <pikhq> Now you've killed the whole program. Including your bit. . .
20:14:04 <ihope_> fix (goFuckYourself >>)
20:14:12 <ihope_> Something like that, eh?
20:15:00 <Razor-X> I'd watch all of your escapades with self-sex, but I have a date with a manpage :P.
20:15:43 <Razor-X> Nah. Just muckin' with Ncurses routines.
20:28:33 -!- calamari has quit ("Leaving").
20:30:59 <ihope_> Let's make a language where all infinite loops are undetectable.
20:31:27 <Razor-X> So they keep going until your computer runs out of memory?
20:31:47 <GreyKnight> how about one that drops into an infinite loop at random points? ;-)
20:37:34 <ihope_> I'll call it Hyperfuck.
20:40:11 <Razor-X> Since everyone loves using the word f*ck so much :P.
20:41:01 <ihope_> Infinite loop programs would exist in the language, but it'd be impossible to tell which ones they are.
20:41:13 <ihope_> So there's no "the following is an infinite loop:".
20:42:45 <ihope_> That wouldn't be an infinite loop.
20:42:55 <GreyKnight> What about a language called Fandango that randomly scribbles over memory with every instruction?
20:44:39 <ihope_> '''Fandango''' is an esolang by GreyKnight. Every instruction is a single character, and every printable ASCII character is an instruction. All instructions randomize memory.
20:45:45 <ihope_> '''Undefined''' is an esolang by [[User:Ihope127]]. All programs have undefined behavior.
20:47:15 <ihope_> That wouldn't be an infinite loop either.
20:50:35 <pikhq> . . . Why wouldn't that be an infinite loop?
20:50:53 <pikhq> Because it risks stopping at the heat death of the universe?
20:52:31 <ihope_> Nope. Since it's possible to prove that executing [] is an infinite loop, it's simply skipped.
21:02:25 -!- CakeProphet has joined.
21:09:59 <pikhq> But that would be against the Brainfuck spec.
21:12:11 <ihope_> I didn't say this was BF.
21:12:50 <pikhq> + /might/ be an infinite loop.
21:12:54 <pikhq> But, it might not be. :p
21:14:59 <ihope_> + isn't an infinite loop :-)
21:15:22 <pikhq> Then what *is* an infinite loop?
21:16:03 <ihope_> No, [] is never an infinite loop.
21:16:23 <ihope_> Infinite loops exist, but all of them are undetectable.
21:17:10 <ihope_> [] while the cell is zero does nothing, and [] while the cell is not zero is skipped because if it were executed, it would cause an infinite loop.
21:17:37 <pikhq> ihope_: Give an example of an infinite loop.
21:17:57 <ihope_> All infinite loops are undetectable.
21:18:02 <pikhq> Then you're not Turing complete; sorry.
21:18:12 <ihope_> I didn't say they didn't exist.
21:18:40 <pikhq> Just that one can't make an algorithm using one that is sure to work.
21:21:12 <pikhq> Not in his language.
21:21:13 <ihope_> [><] is the same as [].
21:21:29 <CakeProphet> But [><] looks like an angry face... thus.. much cooler
21:21:58 <ihope_> The only things you can say here are "it isn't an infinite loop" and "as far as I know, it might be an infinite loop".
21:22:25 -!- calamari has joined.
21:22:36 <pikhq> calamari: I surrender.
21:23:36 <pikhq> I'm not writing audio2brainfuck.b
21:23:52 <EgoBot> help ps kill i eof flush show ls bf_txtgen usertrig daemon undaemon
21:23:53 <fizzie> What would audio2brainfuck.b do?
21:23:53 <calamari> I'll show you the ultra-compressed version right now then :)
21:23:54 <EgoBot> 1l 2l adjust axo bch bf{8,[16],32,64} funge93 fyb fybs glass glypho kipple lambda lazyk linguine malbolge pbrain qbf rail rhotor sadol sceql trigger udage01 unlambda whirl
21:24:31 <calamari> ^^^ ultra-compressed version ;)
21:25:12 * ihope_ divides a deck of cards into three equal parts
21:25:14 <pikhq> calamari: I highly doubt that would make valid Brainfuck code from a raw PCM file. . .
21:25:59 <calamari> one problem that we didn't really discuss yesterday: eof
21:26:04 <pikhq> That would be audio2brainfuck.b. . .
21:26:24 <calamari> audio files use 0-255 so there is no way to be 100% certain you are at eof
21:27:21 <fizzie> But isn't audio2brainfuck just text2brainfuck applied to different kinds of bytes?
21:28:00 <pikhq> I still surrender.
21:28:35 <pikhq> Yes, they do. We've argued about it before. -_-'
21:29:11 <ihope_> What do you call ..., then?
21:31:09 <GreyKnight> apparently Chicago MoS recommends "..." inside a sentence and ". . ." for omissions between sentences
21:31:41 <CakeProphet> . . . looks stupid... therefore ... is correct.
21:33:24 <GreyKnight> it's the standard legal citation style in the US
21:33:26 <ihope_> I guess I agree with the Chicago guys, then.
21:33:42 <CakeProphet> Chicago MoS just sort of makes sense most of the time.
21:33:52 <CakeProphet> I don't really care about official silly grammar crap though.. so.
21:34:08 <GreyKnight> ihope_: well, the spaced-ellipsis is only for omissions *between* sentences
21:34:55 <pikhq> Fine. I'll use the appropriate HTML entity from now on.
21:35:25 <GreyKnight> actually, apparently Chicago recommends either that distinction-making approach *or* using "..." globally.
21:45:19 -!- EgoBot has quit (Read error: 104 (Connection reset by peer)).
21:46:00 <fizzie> ". . ." might look more sensible with a variable-width font.
21:46:09 <fizzie> With a fixed-width font it's utterly ugley.
21:47:30 <ihope_> I'm using a variable-width font, and I still find "..." nicer...
21:48:23 <ihope_> This doesn't look right⋯
21:52:33 <Razor-X> English has official grammar?
21:52:33 <Razor-X> *Cough* *Splutter* *Choke* *Die*
21:53:36 <GreyKnight> they disagree with each other, naturally
22:10:09 <Razor-X> . . . does look pretty awful on a fixed width font.
22:39:07 <pikhq> Razor-X: English has a few people saying "This is the most holy way to do it!", and the rest of the world ignoring them. ;)
22:42:58 <ihope_> My keyboard is set to Spanish.
22:43:14 <ihope_> I think it{s better than this US'international stuff.
22:43:26 <ihope_> But everything{s in a different place.
22:43:36 <calamari> let's see the problems: 1) ain't 2) double negative 3) no subject 4) sentence isn't capitalized 5) no period 6) contraction
22:43:39 -!- GregorR has quit (Read error: 110 (Connection timed out)).
22:44:30 <ihope_> Contractions are improper grammar?
22:45:13 <ihope_> Hey, I'd use contractions wherever possible.
22:45:25 <pikhq> 7) There is no real authority on what English grammar is, so it is, in effect, defined by what people who speak English use.
22:45:45 <ihope_> Saying stuff like "contractions're" and... well, yeah.
22:46:15 <pikhq> Contractions're becoming part of English grammer.
22:46:43 <pikhq> And double negatives aren't ungrammatical.
22:46:48 <GreyKnight> pikhq: having said that, there are occasions when people deserve to be stabbed in the face
22:47:12 <pikhq> GreyKnight: Because they're not even using what the speakers of the language use, of course.
22:47:16 <calamari> and if you can invent a way to do that over the internet, you'll be rich ;)
22:48:00 <pikhq> GreyKnight: Create the RFC for the Violence Over IP protocol.
23:14:37 -!- ihope__ has joined.
23:16:44 -!- ihope__ has changed nick to ihope.
23:17:35 <Razor-X> pikhq: You mean, like American measurement?
23:18:05 <Razor-X> 'Though I hear the UK is even worse off.
23:23:02 -!- jix has joined.
23:23:03 <GreyKnight> the UK is trying to get everything over to metric
23:23:22 <GreyKnight> I think roadsigns are about the last thing to go
23:31:55 -!- ihope_ has quit (Connection timed out).
23:52:51 -!- GregorR has joined.
23:56:16 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").