←2006-10-12 2006-10-13 2006-10-14→ ↑2006 ↑all
00:00:11 <pikhq> Boolfuck. . . Gah!
00:00:16 <Razor-X> :P
00:00:28 <Razor-X> The character 64: >>>>>+;
00:00:44 <Razor-X> Without optimization, of course.
00:01:13 <pikhq> Again: Gah!
00:02:10 <pikhq> ;+;+;;;;;; would actually be the appropriate code, BTW.
00:02:59 <Razor-X> Oh, duh.
00:03:25 <Razor-X> I was thinking of it modifying one byte at a time.
00:03:31 <Razor-X> Hey! Idea!
00:03:37 <pikhq> Yeah?
00:04:07 <Razor-X> A BF-derivative. Extensions to BF that allow you to work on bits, and output the current byte.
00:04:26 <Razor-X> Hmmm... current byte would be pretty... freeform though.
00:04:51 <GregorR-L> egobch --easy-io
00:04:53 <GregorR-L> (IIRC)
00:05:03 <GregorR-L> (The flag may be something else :P )
00:05:14 <Razor-X> bch?
00:05:22 <GregorR-L> BitChanger
00:05:43 <GregorR-L> --easy-io adds . and , which output the byte
00:05:50 <GregorR-L> Erm, output and input :P
00:05:56 <Razor-X> Drat. Thought of already.
00:06:03 <oerjan> but with boolfuck there is no constant improvement. unlike bignum brainfuck where you can improve 137 to +>>+++[-<+[-<++>]<[->++<]>+>]<
00:06:17 <Razor-X> Byte using artificial byte divisions?
00:17:26 -!- kipple_ has quit (Read error: 110 (Connection timed out)).
00:17:49 -!- Eidolos has quit (Read error: 110 (Connection timed out)).
00:17:51 * pikhq mutters about his peers being somewhat less intelligent than him
00:18:08 <pikhq> When bored, they do. . . Watch TV? Go to parties? Like I know.
00:18:21 <pikhq> When bored, *I* design a programming language and write a compiler for it.
00:18:22 <pikhq> :)
00:18:42 <GregorR-L> Go write an interpreter for http://www.codu.org/plof/
00:19:37 <oerjan> pikhq: in the C part for left, right and goto you don't set ::current, something i think might bite you with _goto current.
00:19:56 <pikhq> oerjan: Thanks.
00:20:11 <pikhq> GregorR-L: No thanks.
00:20:17 <pikhq> I'd rather do a real Lisp. :p
00:20:37 <GregorR-L> Plof and lisp aren't particularly similar.
00:21:33 <pikhq> Fixed and up on server.
00:22:00 <pikhq> GregorR-L: Yeah. . . Lisp is worth learning. :p
00:22:27 <GregorR-L> But not worth using ;)
00:22:52 <pikhq> Razor-X: Care to do the honors?
00:23:01 * pikhq hands Razor-X some rusty knife blades
00:23:04 <GregorR-L> Oh boy, I can extend Emacs ... AND NOTHING ELSE
00:23:04 <GregorR-L> :P
00:23:40 <Razor-X> Hmmm?
00:23:48 <pikhq> GregorR-L: In other news, Emacs has everything needed for a real OS but a window manager.
00:23:59 <GregorR-L> I'm well aware.
00:24:01 <lament> pikhq: so?
00:24:05 <GregorR-L> And it's sad. Terribly, terribly sad.
00:24:05 <pikhq> And that's probably going in the next release.
00:24:09 <lament> pikhq: so does os x. I'd rather use os x.
00:24:35 <pikhq> lament: I'd rather not give up my freedom, thanks.
00:24:43 <GregorR-L> I'd rather use GNU/Linux.
00:25:05 <GregorR-L> But it would be interesting to make a minimal microkernel and then implement Emacs as a kernel-level interface :P
00:25:14 <GregorR-L> Making Emacs /literally/ your operating system.
00:25:25 <pikhq> Indeed, it would be interesting.
00:25:39 <pikhq> Kernel level Elisp interpreter. ;)
00:26:05 <Razor-X> So BFM is written in partly C partly TCL?
00:26:44 <pikhq> Razor-X: No, it's all in Tcl. He's referring to the bits that implement the C target.
00:27:38 <Razor-X> BFM compiles to C?
00:28:03 <oerjan> pikhq: i don't think you have fixed the bug
00:28:04 <pikhq> It's one of the target languages.
00:28:45 <pikhq> oerjan: Curses, you're right.
00:29:07 <oerjan> i would suggest doing a split of at into _at, like with goto.
00:29:34 <oerjan> then you can just use calls to at in all the places.
00:29:54 <pikhq> oerjan: Would probably be cleaner.
00:30:19 <pikhq> oerjan: New tarball posted.
00:30:30 <pikhq> Will need to clean up the source a lot sometime later.
00:31:11 -!- GregorR-L has quit (Read error: 104 (Connection reset by peer)).
00:31:21 <Razor-X> But shouldn't BF be the only target of BFM?
00:31:30 <Razor-X> Or is this a BF->C compiler?
00:31:42 <pikhq> It's a BFM->C compiler.
00:31:53 -!- GregorR-L has joined.
00:31:58 <Razor-X> ... Can't see why, but can't see why not either :D
00:32:17 <pikhq> "Why?" "Why not?" is the whole concept behind it.
00:32:44 <GregorR-L> Just like Perl!
00:32:56 <pikhq> Soon as I fix bfmc's stdlib up a bit, I'll ship BFM with two sets of macros: one generic, one which is just a wrapper for the underlying C. . .
00:33:08 <Razor-X> Do you have a specification of BFM done?
00:33:28 <pikhq> *Had*.
00:33:38 <Razor-X> What happened?
00:33:50 <pikhq> BFM evolved faster than the spec.
00:34:06 <GregorR-L> Somebody set BFM up the bomb.
00:34:49 <Razor-X> Care to revise the spec?
00:35:10 <pikhq> Not at the moment. . .
00:35:43 <oerjan> pikhq: you have to change right and left as well. and the current should still be ::current, i think.
00:36:04 <Razor-X> Then I guess I shall see if I can read TCL.
00:36:08 <Razor-X> Where's the tarball?
00:36:18 <pikhq> http://pikhq.nonlogic.org/bfm.tar.bz2
00:37:11 <pikhq> oerjan: Fixed.
00:37:54 <pikhq> Razor-X: If you want some example code, feel free to ask.
00:41:41 <oerjan> pikhq: one more time, with _feeling_ :)
00:42:11 <pikhq> oerjan: ??
00:42:59 <Razor-X> What's array?
00:44:33 <Razor-X> Can you declary variables?
00:44:41 <Razor-X> *declare
00:44:48 <pikhq> Razor-X: Um. . . A command that keeps coming up at random that I though I had played with, realised was broken, and removed long ago?
00:44:55 <pikhq> @ variable location
00:45:02 <pikhq> Declaration of a variable.
00:45:21 <Razor-X> Is there any dedicated variable space?
00:45:36 <pikhq> The whole Brainfuck array. . .
00:45:57 <pikhq> You specify each variable's location when you declare it.
00:46:22 <Razor-X> So variables exist at the location of the pointer when you declare?
00:46:27 <pikhq> Yeah.
00:46:33 <pikhq> Err.
00:46:39 <oerjan> pikhq: you misspelled it
00:46:49 <pikhq> They exist at the location you specify.
00:46:54 <Razor-X> Oh.
00:46:56 <Razor-X> You aren't going to abstract variables completely?
00:47:01 <pikhq> Nope.
00:47:17 <pikhq> Like I said: fairly low level stuff.
00:48:31 <Razor-X> For efficiency's sake, I would think a dedicated variable space is more effecient though...
00:49:12 <pikhq> I fail to see how.
00:50:24 <Razor-X> I guess.
00:50:39 <pikhq> Unless you think [<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>-] is more efficient than {<+>-]. :p
00:52:24 <oerjan> pikhq: current, that is
00:52:56 <pikhq> I'll fix in $minutes.
01:00:46 <Razor-X> pikhq: So, how 'bout my proposal?
01:01:22 <Razor-X> I wanna try and write a ByteChanger interpreter in ASM, and then I'll port BF to ASM. Can you extend portions of BFM to compile to ByteChanger? Like stdcons?
01:01:38 <Razor-X> Or, heck, we'll write stdcons directly in ByteChanger.
01:08:11 <pikhq> Razor-X: Please, no.
01:08:23 <pikhq> BTW, I don't have stdcons.bfm written at all. XD
01:08:44 * oerjan peers out guiltily ;)
01:12:32 <Razor-X> Pfft. Fine. I'll patch it myself then :P
01:46:38 -!- GregorR-L has quit ("Leaving").
02:35:49 -!- bsmntbombdood has quit (Read error: 145 (Connection timed out)).
03:07:19 -!- bsmntbombdood has joined.
03:20:28 -!- calamari has joined.
03:27:47 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)).
03:38:21 -!- bsmntbombdood has joined.
03:39:11 -!- GregorR-L has joined.
03:43:14 -!- CakeProphet has quit (Read error: 113 (No route to host)).
04:10:42 -!- bsmntbom1dood has joined.
04:16:06 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)).
04:16:55 -!- theblue has joined.
04:31:35 -!- theblue has quit (Read error: 148 (No route to host)).
05:02:19 -!- Eidolos has joined.
05:12:45 -!- bsmntbombdood has joined.
05:18:01 -!- bsmntbom1dood has quit (Read error: 110 (Connection timed out)).
05:45:28 -!- bsmntbombdood has quit (Read error: 104 (Connection reset by peer)).
05:49:54 -!- Arrogant has joined.
06:06:13 -!- oerjan has quit ("Leaving").
06:24:19 -!- Sgeo has quit (Remote closed the connection).
06:29:24 -!- Asztal has joined.
06:29:26 -!- Asztal has quit (Client Quit).
06:31:19 -!- bsmntbombdood has joined.
06:42:25 -!- CXI has joined.
07:34:37 -!- calamari has quit ("Leaving").
07:57:20 -!- GregorR-L has quit ("Leaving").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:01:25 -!- GregorR-W has quit (Remote closed the connection).
08:02:16 -!- GregorR-W has joined.
08:26:44 -!- Arrogant_ has joined.
08:29:45 -!- Arrogant has quit (Read error: 110 (Connection timed out)).
10:39:16 -!- Arrogant_ has quit ("Leaving").
11:24:05 -!- bsmntbombdood has quit (Read error: 104 (Connection reset by peer)).
12:40:21 -!- bsmntbombdood has joined.
13:16:41 * SimonRC goes to lunch
13:21:07 -!- jix has joined.
14:42:54 -!- calamari has joined.
15:19:12 -!- tgwizard has joined.
15:26:44 -!- calamari has quit ("Leaving").
15:28:05 -!- kipple_ has joined.
15:30:22 -!- pikhq has quit (Read error: 104 (Connection reset by peer)).
15:40:17 -!- pikhq has joined.
16:07:01 -!- RodgerTh1Great has joined.
16:12:33 -!- RodgerTheGreat has quit (Read error: 110 (Connection timed out)).
17:34:16 -!- RodgerTh1Great has changed nick to RodgerTheGreat.
18:57:02 -!- Asztal has joined.
21:01:52 -!- Asztal has quit ("Chatzilla 0.9.72-rdmsoft [XULRunner 1.8.1b2/0000000000]").
21:49:19 -!- wooby has quit.
22:05:16 -!- |wez| has joined.
22:08:35 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
22:11:57 -!- Sgeo has joined.
22:43:30 -!- oerjan has joined.
22:46:13 -!- GregorR-L has joined.
22:46:19 -!- GregorR-W has quit ("Chatzilla 0.9.75 [Firefox 1.5.0.6/0000000000]").
23:28:27 -!- ihope has joined.
23:28:34 -!- calamari has joined.
23:29:36 <ihope> http://esoteric.voxelperfect.net/wiki/Main_page <- I don't feel like switching to Firefox to type this in.
23:30:14 <oerjan> what about it?
23:30:41 <ihope> I wanted to go there :-P
23:32:01 <ihope> Now, we need more quantum programming languages.
23:33:24 <RodgerTheGreat> I just got ahold of a weird old BASIC-powered alphasmart-type-thing.
23:33:34 * RodgerTheGreat feels an urge to write a BF interpreter.
23:33:43 <ihope> No!
23:33:51 <calamari> hi
23:33:52 <ihope> You need to write an UNLAMBDA interpreter!
23:33:56 <RodgerTheGreat> hm
23:34:31 <pikhq> Write a BF interpreter.
23:34:35 <calamari> how much memory does it have ?
23:34:43 <pikhq> Then, if you're crazy, write a BFM interpreter.
23:34:44 <RodgerTheGreat> 32K, plus the ROM.
23:34:51 <calamari> cool
23:34:59 <ihope> And add a command that puts out a ? function for the current character.
23:35:02 <RodgerTheGreat> even better- it's Z80-based, and I have POKE and CALL!
23:35:13 <oerjan> indeed. i never got around to writing Unlambda in Befunge or BF, so...
23:35:27 <calamari> does it have a keyboard?
23:35:49 <RodgerTheGreat> it pretty much *is* a keyboard, plus a little four-line LCD display.
23:36:27 <RodgerTheGreat> http://www.8bit-micro.com/laser.htm <- this is the thing
23:37:39 <RodgerTheGreat> I need to get a basic memory-map worked out before I can really have fun with POKE. Fortunately, I have PEEK.
23:38:04 <ihope> Peek peek peek!
23:38:15 <RodgerTheGreat> I'll whip up a little ascii/hex editor, and see if I can find my bearings.
23:38:47 <ihope> RodgerTheGreat: wait, writing all this on the alphasmart thing?
23:39:06 <RodgerTheGreat> nothing is quite as fun as stepping manually through memory with a jury-rigged memory viewer coded in BASIC
23:39:11 <RodgerTheGreat> oh, hell no.
23:39:18 <RodgerTheGreat> I'm IRCing from my mac.
23:39:43 <RodgerTheGreat> are you insane? It won't have an IRC client... until I code one. ^_^
23:39:46 <calamari> come on.. where is your network stack coded in bf?
23:39:58 <RodgerTheGreat> naturally, I'll have to build my own network interface for it as well.
23:40:08 -!- tgwizard has quit ("Leaving").
23:40:24 <calamari> interface it with a usb memory stick
23:41:37 <RodgerTheGreat> the unit has an interesting ROM-cartrige interface slot I may play with later- it might be possible to do some bit-bashing and get R/W on it, allowing things like that.
23:41:59 <RodgerTheGreat> otherwise, I have a serial port that shouldn't be too hard to interface with.
23:42:01 <calamari> RodgerTheGreat: this is what I want to wire onto an ipod: http://www.brolinembedded.se/projects/keyboard/keyboard_advance.jpg
23:42:17 <calamari> yeah, that serial port is the way to go
23:42:19 <RodgerTheGreat> ooh. that would be sweet.
23:42:56 <calamari> yeah.. would certainly improve typing speed over the standard interface
23:43:02 <RodgerTheGreat> I think I'll see about trying to interface the serial port with the serial port on one of my spare palms, and then I can use the palm as an external storage unit.
23:44:25 <RodgerTheGreat> first: memory map. then, I'll see about the serial interface, and then I'll take a crack at coding a proper BF environment in Z80 asm.
23:44:32 <RodgerTheGreat> my weekends are booked for a month.
23:47:51 <RodgerTheGreat> :D
23:48:22 <RodgerTheGreat> tiny BASIC interactive systems make me insanely happy
23:48:32 <RodgerTheGreat> Best. OS. ever.
23:49:51 <calamari> sounds like you'd like an ibm pc then
23:50:13 <RodgerTheGreat> well, you have to load BASIC from a disk on a PC.
23:50:25 <RodgerTheGreat> I'm trying to get ahold of a C64.
23:50:32 <RodgerTheGreat> an apple ][ would be fun as well.
23:51:41 <calamari> didn't the ibm have basica in a rom ?
23:51:58 <RodgerTheGreat> hm. I don't *think* so...
23:52:03 <calamari> pretty sure it did
23:52:12 <calamari> and it'd load into it if you don't have a disk
23:52:38 * calamari checks wikipedia
23:53:05 <RodgerTheGreat> "BASICA allows use of the ROM-resident BASIC included with early models of IBM's PC while DOS is loaded " <- sounds like you're right.
23:53:29 <calamari> The original PC had a version of Microsoft BASIC ?IBM Cassette BASIC? in ROM.
23:53:36 <calamari> quote from the IBM PC article
23:53:40 <calamari> hehe
23:54:01 <calamari> not quite as portable tho
23:54:12 <RodgerTheGreat> well, this explains why the "BASICA" command never did anything in DOS- it only works if you have a ROM with BASIC on it already.
23:54:25 <calamari> yeah, otherwise you need gwbasic
23:54:31 <RodgerTheGreat> or QBASIC.
23:54:54 <calamari> there was no qbasic
23:55:07 <calamari> at least during that time frame
23:55:42 <calamari> gwbasic is still handy, because it's small and fits better on a boot disk
23:56:16 <RodgerTheGreat> yeah, agreed.
23:56:59 <RodgerTheGreat> does it ever bother you to see some of the languages passed off as BASIC these days? VisualBASIC and BlitzBASIC have almost nothing in common with the true language.
23:58:53 <calamari> hmm.. speaking of the "true" language.. I emailed Kurtz who co-wrote it one day asking about it, and got a reply
23:59:08 <calamari> so that was pretty neat
23:59:14 <RodgerTheGreat> woah, cool.
23:59:35 <calamari> anyhow, in the "true" version there were only double precision values
←2006-10-12 2006-10-13 2006-10-14→ ↑2006 ↑all