00:00:00 --- log: started forth/01.10.06 01:59:50 --- quit: MrReach () 02:55:42 --- quit: Speuler (hehe) 06:51:27 --- join: edrx (edrx@200.240.18.109) joined #forth 07:33:06 --- join: futhin (thin@h24-66-209-114.cg.shawcable.net) joined #forth 07:33:12 sup all 07:43:05 --- join: Speuler (k@d120073.upc-d.chello.nl) joined #forth 07:43:56 hi gang 07:47:26 hi all 07:50:01 --- quit: Speuler (Ping timeout for Speuler[d120073.upc-d.chello.nl]) 08:04:45 sup edrx 08:05:39 edrx: how's it going with forth? 08:05:47 sloooowly 08:06:00 you new to the lang? 08:06:24 maybe it will gain some momentum again in the next days, as I'll need a language to create some weird data structures 08:07:01 no, but I don't like (and don't understand well) any of the free forth for GNU systems, and I'm writing mine using Lua 08:07:37 why are you writing a new forth? why can't you just use gforth or something to code your forth stuff 08:11:41 I don't like cell-oriented forths, and I already have the machinery for a byte-oriented one (where some instructions are one-byte long, others are two-bytes long...) but it has few words at the moment, and only runs a few demos 08:13:28 cell-oriented is the same thing as byte-oriented.. cell is just an AKA for byte 08:15:33 cell is just another name for byte in forth 08:18:06 hm, oops, I'm using the wrong term, I'm thinking in "cell" as the space needed to store a pointer 08:18:25 in gforth so many things are dword-aligned 08:19:42 and I don't understand its bytecode well, BTW... 08:19:47 hm 08:19:57 why not code your forth in asm? :) 08:20:53 I don't need speed at the moment; ease of debugging is much more important, so the inner interpreter is written in C, and is very extensible... 08:21:10 do you want to take a look at "flua", the forthish language I'm writing? 08:21:21 which OS/distro are you using? 08:21:52 hmm, i've got slackware on a partition, but i'm in windows right now 08:24:03 you would need to install lua (there are instructions at my page, and I'll clean them a bit more) and nasm... then it would be just a matter of unpacking a tgz and typing "make something". 08:24:37 I'll fix a few things and I'll give you an url with instructions next time we meet here. 08:25:41 i dunno 08:25:57 i'm not too interested in it right now.. i'm focused on working on a mud backend 08:26:40 and besides, i sort of believe that all forths should be coded in asm :) 08:26:50 a forth-based mud? 08:27:27 I believe that x86 asm was already evil when x='' and became far too evil when x got >=3 08:27:47 eh? what x? 08:27:55 yes a forth-based mud :) 08:28:57 x in x86 08:29:04 oh right 08:29:11 i thought you were talking something asm specific heh 08:30:10 i'm at your page and there's a link that says "Why users should not exist" 08:30:49 i kind of think that people should be taught a language like forth in school (grade 1 to 12) and then they'll be able to code their own stuff and therefore wouldn't be users 08:31:48 i agree with you completely 08:32:49 and maybe they should have access to good forth-based editors (sort of an emacs with lisp replaced by forth) to make it commonplace to program 08:32:50 it would definitely be interesting and i think that it would be more efficient in the long run.. computers are becoming very important :) 08:34:54 and people are thinking of programming as something quite arcane, even though so many people are learning it due to the spread of GNU systems... but they don't see languages where they have complete control of the machine, where there aren't artificial layers of complexity between them and the machine 08:34:59 yeah.. it would be nice to have a full-fledge os in forth. imagine being able to customize almost any aspect with ease, have higherlevel words developed for allowing ppl to customize anything they desire with a few lines of code 08:35:52 forth can be made into a really easy to code in scripting language with the right kind of highlevel words 08:38:00 i imagine being on irc on a channel, and suddenly i want to split the window in half, and put certain people that i am talking to in one window and the rest in the other window. and maybe do some colorcoding to help me keep track of who is saying what.. and being able to do it in a few lines of code 08:38:17 and then i can throw away that code when i am done 08:39:09 make it so easy to code that the code isn't too precious 08:40:52 edrx: are there any other languages that don't have any artificial layers of complexity between the coder and the machine? 08:43:40 this is one of my plans with my lua-based forth: it will be conveninet to use because besides having the usual forth words and access to the bare metal it will also have access to Lua words, so that it may be easier (for some people) to use lua to write part of the code, as it has some pretty elegant structures... 08:44:54 i just read your tourism page.. i like the tourism idea :) 08:45:26 i've been wondering about extending a mud into something bigger.. 08:45:41 something where there is tourism and productivity 08:45:55 like letting users code new parts? 08:46:08 btw, what do you think about postscript? 08:46:27 all i know about postscript is that it's a rpn language 08:48:00 why do you ask? 08:48:03 I thought that postscript and mud forth had many things in common, so I thought you'd have some opinion about PS... 08:48:15 mud forth? 08:48:28 MUD = Multi-User Dimension 08:48:34 it's a multiplayer game kind of thing.. 08:48:49 i thought it was "multi-user dungeon" 08:49:37 same thing.. but dimension is the more modern term i think.. 08:49:49 I know... there are several MUDs around with forth backends, and some are very well-documented... 08:49:58 because not all muds are about dungeon & dragons 08:50:05 hmm 08:50:07 i didn't know 08:50:23 i'm aware of tinymuck, which has an online programming language called MUF = multi-user forth 08:50:30 it's very forth like 08:50:37 and that's where i first discovered forth :) 08:50:49 maybe that was the one I downloaded and checked the manual 08:50:58 ah, you're pretty new to forth, then? 08:52:01 yup.. very new 08:52:26 I started using forth around 1985 08:52:31 cool 08:52:47 why don't you have more forth stuff up on your page? like programs that you've done? :) 08:52:48 there were some very nice forths for DOS 08:53:09 i've only coded two programs.. one was for MUF and the other was a print out a pyramid of stars :) 08:53:42 because most of my real forth programs were for HS-Forth, that was for DOS and commercial... 08:54:27 besides that I'm still trying to either modify an existing *nix forth or to create my own to get one that I like... 08:55:23 why don't you code your forth in forth? 08:55:36 I started doing that, actually 08:55:52 it's pretty easy to write an assembler in forth.. 08:55:54 then I discovered that I wanted something leaner 08:56:13 and then you can write your basic primitives in asm 08:56:30 take a look at http://angg.twu.net/flua/ 08:56:52 http://angg.twu.net/flua/flua-prims.lua.html , say 08:57:48 now I have a program that takes "flua code" and generates a minimal inner interpreter in C, and a bytecode file, in nasm... 08:58:36 is this supposed to be asm or something? "DUP "," DS[1]=DS[0]; DS++; goto forth;", 08:59:06 unfortunately my page currently doesn't have the engine files, or the nasm-bytecode files... 09:00:08 this is a table in Lua that says how some primitives are implemented in C 09:00:26 o 09:00:28 flua programs can add new primitives on-the-fly 09:00:44 but before the stage where the C code is compiled, of course 09:00:53 i'm not sure if it's a good idea to code forth in any other language besides asm or forth.. 09:01:06 I'm sure it is :) 09:01:13 i don't like bloat 09:01:29 anything that can possibly introduce bloat is inherently evil and i won't touch it 09:01:36 :) 09:01:43 i fear bloat 09:01:55 i fear inefficiency 09:01:57 if you do everything in forth then it takes ages to have something that runs 09:02:07 "fear and bloating" 09:02:16 in silicon valley heh 09:02:21 I fear programmer inneficiency 09:02:26 "fear and bloating in silic valley" 09:02:49 new version of "fear and loathing in las vegas" 09:03:03 i don't believe that the coders time is more valuable than the users time. i think coders should think in terms of how much time they save FOR THE USERS. 09:03:26 do you have other users besides yourself? I don't 09:03:44 the whole point for me to code is to code for users 09:03:50 for the most part 09:03:51 I have for some packages, but not for my forth things 09:04:32 i'm mostly interested in coding for users.. bringing better programs to the users and saving them time and pain 09:04:46 or something that's fun 09:04:48 like the mud 09:04:54 I'm against thinking in terms of users. I believe that ALL GOOD SOFTWARE were written with the mentality that the coders would be among the main users. 09:05:00 lunch time here 09:05:03 have to go 09:05:08 see ya later 09:05:09 i want a fun mud.. even though i'm really coding for myself.. i want people to like it too 09:05:12 see ya later 09:05:16 --- part: edrx left #forth 11:04:59 --- quit: futhin (gottago) 15:48:48 --- join: futhin (thin@h24-66-209-114.cg.shawcable.net) joined #forth 16:04:46 --- quit: futhin (ll) 16:05:53 --- quit: Fare (zelazny.openprojects.net farmer.openprojects.net) 16:06:01 --- join: Fare (Fare.LISPM@samaris.tunes.org) joined #forth 16:22:39 --- topic: set to '' by ChanServ 16:23:47 --- join: MrReach (mrreach@209.181.43.190) joined #forth 16:25:15 --- join: futhin (thin@h24-66-209-114.cg.shawcable.net) joined #forth 16:25:21 4thmuds? 16:25:22 hihi 16:25:38 somebody mentioned there was a mud backend CODED in forth? 16:25:47 tinymuck is coded in C 16:25:56 i tried to find some mud coded in forth 16:26:02 but didn't find anything 16:26:04 oh? that's interesting 16:26:42 i've been lazy all day (and did some other stuff) so i haven't even gotten around to starting the code for the backend :( 16:26:47 hey ... have you sonsidered what objection-orientation might do for your sytem? 16:27:10 hmm.. dunno.. you talking oop? 16:27:15 (been awake less than 10 mins, you can prob tell) 16:27:19 yes, I am 16:27:51 are ou comfortable whith OOP? 16:28:30 hmm 16:28:45 uh, well i am sort of familiar with C++ 16:28:53 i can handle the classes and structs 16:29:05 ok 16:29:15 and i understand the concept of modularity and breaking up the code into modules 16:29:45 in forth, then, it just a matter of understanding whatever implementation your working with 16:29:54 eh? 16:30:01 ah 16:30:08 gfrth has 3 different imles that can be ported to just about any forth 16:30:17 so you are saying different implementations have some oo stuff? 16:30:21 imles? 16:30:42 implementations 16:31:24 yes, Win32 does, gforth does bigforth does 16:31:39 unique oo stuff or ans oo 16:31:50 there is no ans oo 16:31:54 ok 16:32:10 but they will compile on most ANS systems 16:34:04 but what specifically were you going to talk about concerning object-oriented with the forth mud? 16:34:20 you were asking how to make user coded routines safe? yesterday? 16:34:28 yeah 16:34:29 oh, ok 16:34:53 the data encapsulation might provide some advantages 16:35:37 for example, everything about a user might be stored in a single object of type USER 16:35:56 everything about a room might be stored in a ROOM object 16:36:25 which would make a breeze to save them to disk and delete them when they are no longer needed 16:36:28 and reloaded later 16:37:18 delete them from memory, that is 16:37:45 --- join: qless (qless@clgr000977.hs.telusplanet.net) joined #forth 16:37:55 hihi qless 16:38:02 hi qless 16:38:06 hello all 16:38:53 hmm 16:39:10 I'm not saying the mud SHOULD be object oriented 16:39:17 why not? :) 16:39:28 only that you might want to consider its advantages before you start coding 16:41:03 now, as for safe user code .. wanna get into it now? 16:41:16 yes 16:41:28 futhin: restrict to single wordlist ... import common forth words as needed (with ALIAS maybe) 16:41:28 futhin: run in a seperate thread so that a stack underflow only crashes them, not the who system 16:41:33 ok, theres basically two things you have to take care of 16:41:45 yes, that is one of the things 16:42:35 *OR* ... 16:42:57 use a forth that THROWs stack underflow errors, and CATCH it in your main loop 16:43:13 gforth does that, and win32 I think 16:43:38 hmm 16:43:42 --- part: qless left #forth 16:44:33 what questions do you have? 16:44:36 but how do i make sure that people don't run any code that makes executes some machine code and deletes everything or crashes the server.. 16:44:45 ok 16:45:02 bye creating a wordlist for each user 16:45:23 and only putting "safe" words in that wordlist 16:45:28 but they can still do something like : : hack 00101011101010101101001 ; 16:45:44 what good will that do them? 16:45:53 they can't crashe the system with that word 16:46:29 eh.. couldn't they pass some machine language in binary and execute that? 16:46:42 why would you let them do that? 16:46:56 don't let them have EXECUTE then 16:47:05 but then how would they code anything? 16:47:28 or, if you must, write EXCUTE in such a way that it _MUST_ only jump to a word in their wordlist 16:47:53 colon is not dangerous, neither are literals 16:48:09 that's basically what they need to code 16:48:28 hmm 16:49:12 oh, btw, ALIAS looks like this ... ( xt -- -- ) 16:49:33 and is used like this ... ' DUP ALIAS MyDup 16:49:36 could you send me some forth code of yours.. something that i can look at as an example of forth style and how everything is put together 16:49:56 ok, but not this instant 16:50:03 what's your email? 16:50:26 I'll send you my structs package 16:50:49 jbrobey@yahoo.com 16:51:05 why the structs package? 16:51:17 send me something fun ;) 16:51:32 because I use it just about everywhere @:^> 16:51:37 what about dcc? 16:51:48 I can't DCC out because of the firewall 16:51:59 can i dcc you? 16:52:04 yes 16:52:38 hmm.. says unable to resolve your dns.. weird 16:52:57 i expect the mud will be at sourceforge, and so i will use the web to puruse it 16:53:13 eh? 16:53:31 thats because my IP not registered at NIC 16:54:38 when you start coding, and want me to look at something you've writeen ... 16:55:08 I expect you to give me a URL either to the CVS repository at sourceforege, or to a page at your personal site 16:56:49 things you do NOT want the user to have are things like OPEN-FILE and WRITE-FILE 16:57:51 yeah 16:57:56 fetch and store are going to be very difficult, especially store 16:58:13 because they will allow the user to examine the rest of the system 16:58:25 email me already so that i can send you my mud_features.txt or alternatively, i could just copy and paste it to a message window to your 16:58:27 and poke changed bytes back into it 16:58:28 to you 16:58:43 oh, ok, just a sec 16:58:55 I'm mrreach@bigfoot.com 16:58:58 ok 16:59:42 sent 17:01:49 it's kind of weird to me to code backwards in words.. 17:02:00 like the first word is at the bottom.. 17:02:16 like my "main" word is at the bottom.. 17:02:41 : load.code ; 17:02:41 : load.db ; 17:02:41 : main load.db load.code ; 17:03:05 yep 17:03:21 an experienced forth coder looking at a new file will start at the bottom 17:03:36 yeah 17:03:49 it's just a little unsettling to code from the bottom up :) 17:04:04 or do experienced coders start from the top? 17:04:09 do they start with the lowlevel words first? 17:04:15 seems awfully tricky 17:04:36 yes 17:04:51 you seem to be forgetting the design phase of coding 17:04:56 do they start with lowlevel words first? 17:05:00 design from top down 17:05:08 code from bottom up 17:05:34 yeah, but how am i supposed to design it? am i supposed to write down some design thingie or what? 17:05:43 part of coding is also designing.. 17:06:49 ok, my main always has three parts ... 17:07:08 1. a call to the main initialization word 17:07:14 2. the main loop 17:07:26 3. a call to the main cleanup word 17:08:22 hmm 17:08:26 so it might look like : main init BEGIN mainentry UNTIL finish ; 17:08:52 so it might look like : main init BEGIN ' mainentry CATCH (blah) UNTIL finish ; 17:10:33 anytime I write a word that uses a long-term data structure, I make sure the structure (or cain of such structures) is created in init 17:10:46 and deleted (perhaps saved to disk) in finish 17:11:46 um.. am i off to a bad start by doing 17:11:46 : load.code ; 17:11:47 : load.db ; 17:11:47 : main load.db load.code ; 17:11:55 shouldn't i be doing the lowlevelstuff first? 17:12:11 not in the design phase 17:12:34 so you call the code i have so far the design phase? 17:12:40 you should be asking "What capabilities does this program need to start with?" 17:12:57 hmmm ... 17:13:31 yes, load-code seems pretty high-level 17:13:39 yeah.. 17:13:47 or a way of defering thinking about low-level stuff until later 17:13:48 and that's part of the "design phase" ? :) 17:14:27 well, you *DO* need to build some type of structure for testing 17:14:50 why don't you dcc me the file you emailed to me? 17:14:55 it hasn't arrived yet 17:15:54 i tried to dcc you but it didn't work 17:16:04 oh, ok 17:16:20 you should recieve it by now 17:16:24 just got Re: structs 17:16:29 yeah 17:16:33 that was my second send 17:16:42 i guess my 1st one was messed up or something 17:17:26 those are generally the mud features i'm thinking of implementing more or less :) 17:17:49 i'm doing it with a friend, but he's doing the backend in perl and i'm doing the backend in forth 17:18:08 erf! 17:18:45 he doesn't really like forth, so we're going to have the two backends and then we'll decide which is better 17:19:14 i've tried to convince him that forth is good... but he's very skeptical 17:19:46 it's only good if you're comfortable and know how to use it 17:20:23 yeah, well i'm more or less convinced that forth is a very nice language.. better than other languages i know 17:21:10 more versatile, cerrtainly 17:21:39 hmm.. your structs thingie seems a little weird 17:21:49 more versatile, faster, etc? :) 17:22:34 your struct thingie doesn't look like regular forth code heh.. what's with the [IF] [THEN]? 17:23:31 they are ANS words 17:23:36 immediate 17:23:44 for conditional compilation 17:24:00 the notes at the top should be bracketed with them, sory 17:24:49 that is a rather complex bit of code 17:24:56 hmm.. i was expecting something more easier for me to read 17:24:59 i'm not a forth god yet :P 17:25:03 a word that creates creating words 17:25:31 you might want to sit down some afternoon when you have some times 17:25:36 i just wanted a nice and easy to understand piece of modular forth programming that demonstrates good modularizing and factorizing skillz and actually has a main word called main ;) 17:25:55 and read the ANS specification from beginning to end 17:26:11 it will take about 6 hours ... but well worth it 17:26:12 heh 17:26:14 ouch 17:26:27 hmm 17:26:36 i suppose that would be a way 17:31:27 ok, in your particular case 17:32:12 your main loop is going to be looking for characters ready on internet sockets 17:32:45 before it gets there, it will need to set up the chain of users (and maybe a chain of rooms) 17:33:21 then it will need to parse user commands and execute them 17:33:47 so, if I were you, I'd write and test the socket code 17:36:22 how do you make the distinction between "front end" and "back end"??? 17:38:02 well.. i'm a little foggy on that because of my friend.. but it seems that the backend is the command parser, and the db loader. the frontend is the ui stuff and the socket stuff and the code loader (i'm thinking of storing the mud code separate from the mud server.. like the HELP or LOOK commands and the rest of that kind of thing) 17:39:47 ok, so it's not really a distinction that you make 17:40:08 it is imposed by your friend 17:41:28 what is "a social"??? 17:43:22 oh! you might do this for @ and ! ... 17:43:43 when a user logs in, allocate them some memory, maybe 250-500k worth 17:43:55 but their "stuff" in it 17:44:31 then write THEIR version of @ and ! such that it throws an error if they try to access memory outside of that block 17:45:22 hello? 17:48:13 god, looking at your design specs, I'd have written this in TCL 17:49:14 guess that shows where my preferences are 17:50:06 hello? 17:50:08 eh 17:50:09 back 17:50:14 heh 17:50:41 in tcl? :) 17:50:49 a social is an emoticon 17:50:57 it is basically /me in irc 17:51:03 * futhin laughs heartily. 17:51:11 but on the mud you type something like "laugh" 17:51:19 yes, all the socket stuff is already there, and index arrays (with hashing) ... prtected environments, etc 17:51:23 and everyone else sees "futhin laughs heartily" 17:51:31 ok 17:51:33 i want it to be fast 17:51:38 and i want it to be customizable 17:51:43 and i want it to be tight 17:51:51 and fairly simple 17:51:56 TCL can provide all those things 17:51:56 the basic structure 17:52:06 but you've already chosen forth 17:52:22 i don't believe that tcl is bloat free :) 17:52:28 and it's hardly worthwhile for you to learn another language 17:52:38 i fear and loath libraries :) 17:52:44 nope, definately not bloat free 17:53:15 but quick, terse source, and incredibly extendable 17:53:25 like forth in that last regard 17:53:26 i'm a bit of a perfectionist.. i know i'm a freak! :P 17:53:54 that's fine ... I'm not asking you to change your mind 17:53:57 yeah 17:54:01 it was just an offhand comment 17:54:05 yup 17:54:20 plus, this is a project for me to build my forth skillz 17:54:46 then drop the perl friend and get on with writing it 17:54:55 heh 17:55:08 well i'm starting it right now sorta :) 17:55:12 I gave you the toplevel factoring of main 17:55:16 yeah 17:55:30 ------------------------------------------------------------------------------------ 17:55:30 \\ the ui bullshit 17:55:30 : ui.bs ; 17:55:30 ------------------------------------------------------------------------------------ 17:55:30 \ defacto main loop 17:55:30 : mainloop ui.bs; 17:55:32 ------------------------------------------------------------------------------------ 17:55:34 ------------------------------------------------------------------------------------ 17:55:36 \ code some mcode handling stuff 17:55:38 : load.mcode ; 17:55:40 ------------------------------------------------------------------------------------ 17:55:42 \ code db handling stuff 17:55:44 : load.db ; 17:55:46 ------------------------------------------------------------------------------------ 17:55:48 : init load.db load.code ; 17:55:50 : main init BEGIN ' mainloop CATCH (blahblah) UNTIL finish ; 17:55:53 \ where's the parser? 17:56:08 inside of mainloop 17:56:29 i'm trying to figure out how i'm going to deal with the sockets if it's part of the UI.. 17:56:40 duh! they're nto 17:56:41 not 17:57:03 UI is concerned with how to format and present data to the user 17:57:14 it has nothing to do with how to send to the user 17:57:19 yes.. but the mud could be a 1 person game.. 17:57:30 the mud could be a non-internet-multiplayer game :) 17:58:00 right, whether user is at the physical console or on a socket somewhere should be invisible to the UI 17:59:02 define UEMIT and UTYPE to send chars to the user 17:59:03 hmm 17:59:20 wherever the user happens to be 17:59:38 but then where is the socket stuff and where do i turn it off or on? 17:59:52 then build your terminal driver that assumes vt100 and 80x25 18:00:28 sockets is in a forth library 18:00:38 it gets loaded at startup 18:00:57 in init, it sets up a "listener" 18:01:07 in mainloop, listener is checked 18:01:57 when new connection arrives, initialization occures for new connection, and the mainloop starts watching the new connection with all the others 18:02:44 UEMIT and UTYPE would require a "handle" .... and don't care what that handle leads to 18:02:59 might send to socket, might send to local console 18:03:17 hell, might even send to a bloody webpage ... none of their business 18:03:27 hm 18:04:25 or, the handle might be stored 18:04:45 so that you don't have to supply it on the stack to UMEMIT and UTYPE 18:05:10 setting up the socket wouldn't be that smart if the mud was only going to interact with a user on the unix console 18:05:16 remember the buffer handler that KEY CR = IF ... ??? 18:06:07 ok, that would be a commandline switch, right? 18:07:55 try following a single keystroke all the through your mud system 18:08:43 through the telnet prog, your input routines, the command parser, the result, the display formatter, back to their terminal 18:09:28 it should give you some insite about what code needs to be written 18:09:41 eh 18:09:56 hmm 18:10:11 how do you follow the keystroke? 18:11:00 ok 18:11:27 let's say the user 18:11:39 types "laugh" 18:11:53 let's follow the "a" 18:12:25 the telnet sends it down the socket 18:12:33 it arrive at the MUD machine 18:13:21 yor mainloop sees input ready on that socket, gets it, sees it's not a , and appends it to the input buffer for that user 18:13:30 (you follow so far?) 18:13:43 you meant follow the keystroke in the mind 18:13:44 ? 18:13:50 yes 18:13:52 ah :) 18:14:02 i thought you meant like some weird debuging thingie :) 18:14:37 so now that "a" sits in that buffer until the arrives, and then the whole buffer is handed to the command parser 18:15:21 it sees that the command is "laugh" ... and discards any trailing data 18:15:41 then it calls DO_laugh 18:16:32 DO_laugh uses the buffer data to look up the name of the user, and assemble " laughs heartily" 18:17:23 then DO_Laugh calls UTYPE to send to user (perhaps some magic here to make bold color) 18:18:07 UTYPE looks up the user destination, relizes it's on a socket, and uses socket commands to make the result display on the user's screen 18:19:00 then back to the mainloop to look for more arriving characters 18:19:07 did you follow this ok? 18:23:05 hello? 18:30:11 bah 18:43:14 --- nick: MrReach -> MrGone 19:32:37 --- topic: set to '' by ChanServ 19:39:53 heh 19:39:55 sorry 19:39:57 supper 19:42:06 --- nick: MrGone -> MrReach 19:42:11 hi, same here, now 19:42:28 ah 19:42:28 heh 19:42:56 i don't have sound on my comp so.. sometimes i don't notice anything for awhile heh 19:43:59 yeah i follow 19:44:44 probably better to have DO_Laugh call SomeInBetween which might insert ansi stuff, and then calls UTYPE 19:45:55 ok 19:46:45 hmm 19:46:58 i still have to give thought to how i'm going to handle the mud code 19:47:08 i was thinking that the server would load the db and the mud code separately 19:47:14 but i dunno.. is that a good thing? 19:47:18 naw 19:47:33 keep data on disk until neeeded 19:47:49 hmm 19:51:09 when 19:51:14 a user logs in 19:51:26 load user info, and info of all objects he carries 19:51:43 load info on room he's in, if not already loaded 19:52:14 hmm.. and the room is loaded too 19:52:14 when he moves to another room, save vacated room (if he changed it), then unload it from memory 19:52:44 if he drops or consumes an object, save it and delete it from memory 19:53:23 boy oh boy, i gotta make a lotta words that handle those thingies :) 19:54:08 oo might help there 19:54:25 how so? 19:54:40 ok, each object has "location" 19:55:03 suppose there's a character, with a backpack, in a room 19:55:15 there is a banana in that backpack 19:55:39 banana(location) = backpackID 19:55:54 noo, i was talking about words that handle the memory, loading objects into memory, etc 19:56:04 backpackID is unique among all backpacks 19:56:11 ah! ok 19:56:18 use slurp and spew 19:56:33 hand them the object data 19:56:44 then the only complication is the naming of files 19:57:09 gotta go for a sec 19:57:17 picking up some groceries 19:57:18 heh 19:57:23 ok 19:57:32 drive carefully 19:59:02 --- nick: MrReach -> MrGone 20:34:21 i'll talk to you later.. i probably should put down some more code and then i'll most likely to ask more questions, so talk to you later :) 20:34:26 --- quit: futhin (byebye) 23:47:50 --- nick: MrGone -> MrReach 23:59:59 --- log: ended forth/01.10.06