←2007-04-07 2007-04-08 2007-04-09→ ↑2007 ↑all
00:10:12 <Pikhq> Someone care to link to the logs?
00:10:23 <Pikhq> Ah. In topic.
00:38:23 -!- jix__ has changed nick to jix.
00:48:40 <bsmntbombdood> yes!
00:48:46 <oerjan> maybe.
00:48:48 <bsmntbombdood> my FOOS interpreter works
00:52:15 <bsmntbombdood> http://bsmntbombdood.mooo.com/FOOS.tgz
00:52:19 <bsmntbombdood> run main.py for a repl
00:52:44 <GregorR> I dun wrote something in Smalltalk zomg 8-D
00:54:31 -!- sebbu2 has quit ("@+").
00:58:26 -!- calamari has joined.
01:02:58 <bsmntbombdood> "Hello, world" print
01:03:05 <bsmntbombdood> the hello world
01:06:48 <bsmntbombdood> or
01:07:50 <bsmntbombdood> @'print-hello [" world" "hello" @swap + print] @object %inherit add-method done create print-hello
01:11:00 * Pikhq is currently working on creating an incredibly modular distro. . .
01:11:52 <GregorR> Pikhq: http://www.nongnu.org/sps/
01:12:44 <GregorR> Pikhq: (Or better:) http://savannah.nongnu.org/projects/sps/
01:13:43 <Pikhq> My thoughts involve something like Slax's .mo files for packages, except that each file would be able to auto-install dependencies. . .
01:13:54 <Pikhq> The core OS would include:
01:13:55 <Pikhq> Linux
01:13:57 <Pikhq> Busybox
01:14:04 <Pikhq> Package manager (in .sh)
01:14:09 <Pikhq> Nothing else.
01:15:24 <ihope> What's Busybox?
01:15:38 <bsmntbombdood> everything in /bin, in one executable
01:15:56 <Pikhq> Basically, the core system is about. . . Nothing.
01:16:29 <GregorR> Pikhq: Seriously, click my link above ... it's a packaging system I wrote that could aid you greatly.
01:16:39 <ihope> Interesting.
01:16:49 <Pikhq> GregorR: Describe it; the page doesn't detail much.
01:17:52 <GregorR> Pikhq: Heh. Each package is installed to /sps/<name>/<version>. In /bin there is only a bunch of symlinks to a special tool which runs the appropriate program. To do so, it checks the user's environment for overrides and such. So, any user can have in their environment whatever selection of programs and libraries they please, and whatever version they please, simply by modifying one file.
01:18:40 <ihope> Oh, and how modular is Busybox?
01:18:43 <GregorR> Installing a package onto the system is as simple as extracting it, installing a package into an environment is as simple as echo bash >> ~/.spsenv (or whatever I named that file)
01:19:00 <Pikhq> ihope: It's a single package.
01:19:04 <GregorR> ihope: What aspect of busybox?
01:19:06 <Pikhq> Thus, it's the core module.
01:19:32 <ihope> GregorR: well, Busybox is an executable and a bunch of symbolic links, right?
01:19:38 <GregorR> ihope: Yes.
01:19:41 <Sukoshi> So it's a global repository of packages?
01:20:00 <ihope> And the symbolic links don't carry much information, so most of BusyBox is in that one executable.
01:20:04 <Pikhq> GregorR: I *love* that idea.
01:20:11 <ihope> So how does one go about changing the functionality of that one executable?
01:20:18 <Pikhq> ihope: Recompile.
01:20:24 <GregorR> Pikhq: So do I, that's why I wrote it - but I let it languish. If you're interested, I'll revive it. I figure it would help with the design you're talking about.
01:20:28 <Pikhq> Thus why it's the core of the system.
01:20:46 <Pikhq> GregorR: I'm *very* interested.
01:20:46 <Sukoshi> What's it written in?
01:20:55 <Pikhq> C
01:20:56 <Sukoshi> It sounds a *lot* like Klik.
01:20:59 <Pikhq> Err.
01:21:01 <GregorR> Unfortunately, I wrote it in perl >_> ... I was unenlightened at the time <_<
01:21:03 <Pikhq> Busybox, that is.
01:21:09 <GregorR> Sukoshi: And it's not even the least like Klik ...
01:21:37 <Sukoshi> Well, other than the fact that Klik keeps its stuff in a local sandwhich.
01:22:09 <Sukoshi> GregorR knows Perl? Ewww.
01:22:23 <Pikhq> I *wish* it was written in a compilable language, making things easier to set up, though.
01:22:34 <Pikhq> As-is, the core system would have to include 3 packages:
01:22:35 <GregorR> Pikhq: If I revive it, I will almost certainly rewrite it in C.
01:22:38 <Sukoshi> We can rewrite it.
01:22:41 <GregorR> I don't know why I wrote it in Perl :P
01:22:43 <Pikhq> busybox
01:22:47 <GregorR> It was a bad, bad choice ^^
01:22:48 <Pikhq> linux-core
01:22:54 <Pikhq> perl-core
01:22:55 <Sukoshi> Is there any dependancy tracking?
01:22:57 <Pikhq> Err. 4.
01:23:03 <Pikhq> sps
01:23:14 <GregorR> Sukoshi: SPS isn't that part of the packaging system.
01:23:21 <GregorR> Sukoshi: OH! (rewind)
01:23:22 <GregorR> Sukoshi: Yes.
01:23:30 <GregorR> Sukoshi: But not in terms of installation, SPS doesn't do installs :)
01:23:32 -!- calamari has quit ("Leaving").
01:23:41 <GregorR> Sukoshi: But if you add a tool to your environment, it adds all of its dependencies as well.
01:23:50 <Sukoshi> GregorR: Ah... so similar to the Slackware package manager?
01:23:59 <Pikhq> GregorR: Does it automagically download the dependencies as well?
01:24:19 <Sukoshi> Dependancy tracking is annoying to implement.
01:24:21 <GregorR> Pikhq: It doesn't do anything regarding installation, only use. I intended for the installation/dependency grabbing/whatever portion to be a differnet tool.
01:24:25 <GregorR> *different
01:24:37 <GregorR> A tool I never wrote ;)
01:24:44 <Pikhq> GregorR: Try to make it easy to have SPS automagically call that tool, then.
01:24:51 <Sukoshi> In fact, I propose a small shift of SPS's focus.
01:24:56 <GregorR> Sukoshi: Oh?
01:25:09 <Sukoshi> Make it manage many versions of one application.
01:25:18 <Sukoshi> Like, Firefox 1 and Firefox 2 for example.
01:25:20 <Sukoshi> Sounds ideal.
01:25:22 <GregorR> Sukoshi: That's what it does.
01:25:34 <Sukoshi> GregorR: But I thought it was a *total* package manager...
01:25:37 <Pikhq> It sounds *almost* like installation would be as simple as drag-drop, but dependency grabbing would require an external tool.
01:25:45 <GregorR> Pikhq: Egg-zactly.
01:25:54 <GregorR> Sukoshi: SPS packages are installed to /sps/<name>/<version>
01:25:58 <Sukoshi> Who needs dependency tracking?
01:26:04 <Sukoshi> Dependencies are for nubs :P
01:26:04 <Pikhq> Well, my dependency idea is simple. . .
01:26:06 <GregorR> Sukoshi: So you can have any number of versions of the same package installed.
01:26:17 <GregorR> Sukoshi: And choose which one to use by specifying it in your .spsenv file.
01:26:17 <Sukoshi> GregorR: Nifty.
01:26:39 <GregorR> I'll rewrite it in C this week.
01:26:47 <GregorR> Can't this weekend, too dern much homework >_>
01:26:51 <Pikhq> Make each package have an on-install script, which checks for appropriate versions of dependencies, and installs them.
01:27:20 <bsmntbombdood> just like every other package manager...
01:27:36 <Pikhq> bsmntbombdood: Not quite.
01:28:07 <Pikhq> Unless your package manager involves "copy package into /sps/ to install", that is.
01:28:39 <GregorR> Heh
01:28:45 <Pikhq> That bit is a very, very Hurdish idea.
01:29:01 <GregorR> SPS represents a part of the package manager that doesn't exist in conventional package management ...
01:29:01 <Pikhq> (seriously, that *is* the Hurd package manager)
01:29:13 <GregorR> Realistically, you could set dpkg, rpm, whatever on top of it.
01:29:35 <lament> what does sps stand for?
01:29:38 <Pikhq> Right *now*, I'm thinking of just having a *very* simple package manager.
01:29:45 <GregorR> lament: The Segregated Packages System
01:30:01 <GregorR> Because it segregates the packages :P
01:30:06 <Pikhq> I'll probably just build a script-based package manager for now. . .
01:31:11 <Sukoshi> Let's make the package system modular.
01:31:16 * GregorR leaves to do homezvork.
01:31:21 <GregorR> *fwoom*
01:31:33 <Sukoshi> So if you're a hard-line Slacker (like me), you don't bother with that dependency tracking guffaw that these youngsters cook up.
01:31:58 <Pikhq> ATM, I think my package manager will consist of a installer script which calls the script to install a specific package. . .
01:32:35 <Pikhq> Sukoshi: My *current* dependency manager consists of "each package just automagically downloads and installs what it needs". . .
01:33:21 <Sukoshi> Errr.
01:33:35 <Pikhq> Not quite what you want, but I'm just wanting a temporary solution ATM.
01:33:40 <Sukoshi> Are we reinventing portage?
01:33:45 <Pikhq> Um. . .
01:33:47 <Pikhq> Actually, yeah.
01:33:54 <Sukoshi> Yeah....
01:34:08 <Pikhq> Binary portage. . .
01:34:30 <Pikhq> Sorry; I'm too much of a Gentoo man for my own good.
01:34:38 <Sukoshi> You very rarely see novel ideas in package management nowadays.
01:34:56 <Pikhq> I'd argue that's because a lot of good ones have already been made.
01:36:13 <Sukoshi> I'm not disagreeing there.
01:36:27 <Sukoshi> PPDF may switch from ObjC.
01:36:32 <Sukoshi> Seeing that libFoundation is refusing to compile :D
01:38:24 <Pikhq> I'm also thinking about making the core system run in RAM, and have UnionFS be used to merge in either an RW or RO root partition. . .
01:38:46 <Sukoshi> UnionFS?
01:39:10 <Pikhq> It's used in LiveCDs to allow one to combine an RW and RO filesystem into one. . .
01:39:11 <bsmntbombdood> Sukoshi: That's because libFoundation doesn't compile
01:39:15 <bsmntbombdood> it's just headers
01:39:33 <Sukoshi> bsmntbombdood: No, it has makefiles.
01:39:55 <Pikhq> In Knoppix, it merges a ramdisk and the root FS on CD to allow one to write to the filesystem even though the core system is on a RO media.
01:40:07 <Sukoshi> bsmntbombdood: Friendly person at #objc tells me to use GnuStep.
01:40:39 <Sukoshi> You're implementing a LiveCD, Pikhq ?
01:40:40 <bsmntbombdood> sure
01:41:03 <bsmntbombdood> I couldn't get gnustep figured out though
01:41:04 <Pikhq> Sukoshi: No, just something which is easy to make into a LiveCD.
01:41:14 <Pikhq> By merit of the core system just being an initrd.img.
01:41:32 <Pikhq> . . . Which merges itself with another filesystem.
01:42:25 <Sukoshi> I've been feeling pricked of late to try a versioning FS.
01:42:30 <Sukoshi> At least for my source directories.
01:43:04 <Pikhq> Hmm. . .
01:43:25 <bsmntbombdood> that would be cool
01:44:35 <bsmntbombdood> I've got gnu step, but I can't find the right headers
01:45:59 <Sukoshi> I'm about to SVN it now.
01:47:48 <bsmntbombdood> oh darn, i'm almost out of disk space
01:48:29 <Sukoshi> I was tempted to make a bad your-mom joke.
01:48:35 <Sukoshi> But I didn't :P
01:49:47 <Pikhq> Your MOM didn't!
01:50:46 <Sukoshi> I just lost in corniness :D
01:50:55 <Sukoshi> Wow. GNUStep is huge.
01:51:05 <Sukoshi> Anyways, bsmntbombdood.
01:51:18 <Sukoshi> We're not implementing PS unless you can give me a good argument to.
01:51:19 <bsmntbombdood> turns out I had the wrong gnustep package
01:51:24 <Sukoshi> Do you want to know why?
01:51:52 <Sukoshi> If you do, I suggest you grab the GS source and take a look at the amount of files in src/ .
01:51:57 <Sukoshi> :)
01:51:58 <bsmntbombdood> heh
01:52:25 <Sukoshi> Have you looked over the PDF Reference?
01:52:37 <bsmntbombdood> No
01:52:40 <bsmntbombdood> link?
01:52:43 <Sukoshi> (Use the reference from '01 (the second newest), the newest adds BS like animation that nobody uses.)
01:53:19 <Sukoshi> http://www.adobe.com/devnet/pdf/pdfs/PDFReference16.pdf <-- Fifth, which I suggest we implment first and http://www.adobe.com/devnet/acrobat/pdfs/pdf_reference.pdf <-- Sixth.
01:53:37 <Sukoshi> 1.6 Reference is 8 MB.
01:53:47 <Sukoshi> 1.7 Reference is 31 MB.
01:53:53 <Sukoshi> Choose wisely, my friend :)
01:54:26 <bsmntbombdood> O.o
01:54:52 <Sukoshi> 1.7 == 6th ed., 1.6 == 5th ed. Don't ask me why.
01:54:53 <bsmntbombdood> only 1236 pages...
01:55:05 <Sukoshi> Yeah but it's pretty light reading actually.
01:55:13 <Sukoshi> Skim over the syntax, the objects, and such.
01:55:44 <Sukoshi> .... And SVN is still pulling stuff from GNUStep.
01:55:52 <Sukoshi> Oh. Just finished.
01:56:12 <bsmntbombdood> Do you know any objc?
01:56:32 <Sukoshi> I've been spending the morning reading Apple's introduction to Object Oriented Programming.
01:56:46 * bsmntbombdood knows nothing
01:56:51 <Sukoshi> I have to say, it addresses one of my biggest problems with OOP.
01:57:01 <bsmntbombdood> which is?
01:57:16 <Sukoshi> When to use a class over a struct and functions.
01:57:35 <bsmntbombdood> Same thing
01:57:37 <Sukoshi> In a language like Java, the choice is moot, because *everything* is a class, but when you have a choice it gets a bit tricky.
01:58:16 <Sukoshi> ObjC is not much actually. Just a thin veneer over C and is very C-like.
01:59:11 <bsmntbombdood> How does objc fix that problem?
01:59:25 <Sukoshi> It doesen't as much as the document gives you a general guideline.
02:00:17 <Sukoshi> They say that only use OOP when you either A) Need the design to be modular B) Have a reason to hide the implementation C) Want to encapsulate code with a set interface.
02:00:42 <Sukoshi> But you should read the ObjC concept of the dynamic runtime. A very nifty idea.
02:00:52 <bsmntbombdood> well, if you have a bunch of functions that all take the same struct, that's an object
02:01:12 <Sukoshi> But the syntax to use the struct and objects is not the same.
02:01:31 <bsmntbombdood> I'm reading apple's "the objective-c programming language"
02:01:37 <Sukoshi> The main reason I wanna use OOP for this project is that OOP gives the advantage of syntactically thorough encapsulated state.
02:01:52 <Sukoshi> We're reading the same book :)
02:02:45 <Sukoshi> I also want to seperate certain components cleanly so that replacements can be coded if needed.
02:02:49 <bsmntbombdood> gotta love free ebooks
02:02:54 <Sukoshi> Heh.
02:03:17 <Sukoshi> The graphics system is the main seperate component. We might also want to seperate parts of the rendering engine and such.
02:03:30 <Sukoshi> Now. Which portion do you think we should write first?
02:03:55 <bsmntbombdood> I don't know anything about the pdf format, but i'm going to say parser
02:06:46 <Sukoshi> That's going to be the easiest.
02:07:00 <Sukoshi> It's very similar to Forth.
02:07:19 <Sukoshi> Since it's all pseudo-RPN, there's very little to tokenize.
02:08:30 <Sukoshi> Take a look at internal page 48 in the 5th ed. PDF standard.
02:08:35 <Sukoshi> Skim from there down.
02:09:17 <bsmntbombdood> LZW?
02:10:16 <bsmntbombdood> I have to go
02:10:35 <Sukoshi> As in, PDF Viewer page.
02:10:36 <Sukoshi> Garrr.
02:10:51 <bsmntbombdood> bout 2hrs
02:11:06 <Sukoshi> I'll take leave myself in a bit, and won't be back on 'till 9.
02:11:14 <Sukoshi> I may be doing homework at that time too, so bleh.
02:11:18 <Sukoshi> 9 being 3 hours from now.
02:11:28 <bsmntbombdood> you do too much homework
02:11:42 <Sukoshi> I have to cram all of electricity in a month, you know.
02:12:09 <Sukoshi> I started without knowing an Amp from a Watt, and I've gotten about half the college semester done in 2.5 weeks.
02:12:23 <Sukoshi> Now I have to finish up magnetism and start on AP practice tests.
02:13:15 <Sukoshi> ObjC is actually pretty esoteric in some ways. Probably due to SmallTalk.
02:13:24 <Sukoshi> This channel needs some large OCaML project too :)
02:17:32 * Pikhq has his i386 Debian chroot up to use as a modlinux host. . .
02:23:28 <Sukoshi> I forget, do you enjoy functional programming Pikhq ?
02:24:01 <Pikhq> Sukoshi: Meh.
02:24:11 <Pikhq> I'm more of an imperative thinker.
02:25:29 <Sukoshi> That just means you haven't found the Right Language (TM).
02:25:49 <Sukoshi> OCaML is supposedly good for imperative thinkers too. I dunno, haven't tried it meself.
02:26:04 * Pikhq gets kernel 2.6.16.46
02:28:04 <Pikhq> I've grown fond of Plof. . .
02:28:19 <Sukoshi> I'm waiting for Plof to mature :)
02:28:33 <Sukoshi> Is Plof compiled?
02:30:02 <Pikhq> It's interpreted ATM.
02:37:03 <CakeProphet> ...I killed my RAM with a 301327046 byte string. :)
02:39:38 <Sukoshi> Dear god why would you allocate that much?
02:39:51 <CakeProphet> >>> x = "hahaha".replace("", "hu").replace("", "hu")
02:39:53 <CakeProphet> >>> x
02:39:54 <CakeProphet> 'huhhuuhuhhuhhuuhuahuhhuuhuhhuhhuuhuahuhhuuhuhhuhhuuhuahuhhuuhu'
02:39:56 <CakeProphet> >>> x = x.replace("", "hu");x = x.replace("", "hu"); x = x.replace("", "hu");x = x.replace("", "hu");x = x.replace("", "hu");x = x.replace("", "hu");x = x.replace("", "hu");x = x.replace("", "hu");x = x.replace("", "hu");x = x.replace("", "hu");x = x.replace("", "hu");x = x.replace("", "hu");x = x.replace("", "hu");x = x.replace("", "hu");
02:39:57 <CakeProphet> >>> x
02:39:59 <CakeProphet> Traceback (most recent call last):
02:40:00 <CakeProphet> File "<pyshell#8>", line 1, in <module>
02:40:02 <CakeProphet> x
02:40:03 <CakeProphet> MemoryError
02:40:05 <CakeProphet> >>> len(x)
02:40:06 <CakeProphet> 301327046
02:40:08 <CakeProphet> that's why.
02:40:26 <Sukoshi> Yay weird unchecked languages.
02:40:28 <CakeProphet> ....my computer is running as if it got kicked in the balls.
02:41:24 <CakeProphet> apparently there are thousands of empty strings between the characters of a string.... HOW THOUGHT-PROVOKING
02:41:46 <CakeProphet> >>> "" in "Everything"
02:41:47 <CakeProphet> True
02:42:30 <CakeProphet> >>> "" in ""
02:42:31 <CakeProphet> True
02:42:36 <CakeProphet> THE EMPTY STRING IS INSIDE ITSELF.
02:43:21 <Sukoshi> Oh noes?
02:44:20 <ihope> Isn't everything inside itself?
02:44:42 <CakeProphet> ...oh, yeah
02:44:58 <CakeProphet> a list a sublist of itself...
02:45:08 <ihope> Also: x.replace("", x)
02:45:46 <CakeProphet> hehehehe... it's like a tree
02:46:00 <CakeProphet> >>> x = "Hello, World!"
02:46:02 <CakeProphet> >>> x = x.replace("", x)
02:46:03 <CakeProphet> >>> x
02:46:04 <CakeProphet> 'Hello, World!HHello, World!eHello, World!lHello, World!lHello, World!oHello, World!,Hello, World! Hello, World!WHello, World!oHello, World!rHello, World!lHello, World!dHello, World!!Hello, World!'
02:48:01 <Pikhq> Mmkay, just need to build Busybox to have my core system up. . .
02:48:29 <Pikhq> Will take a lot more work to get a build environment, at which point I'll try to make everything be self-hosted. . .
02:48:52 <Sukoshi> What's the point of the project?
02:50:31 <Pikhq> To create a distro that I like.
02:50:50 <Pikhq> Really, it's basically called "I'm bored".
02:50:50 <ihope> Pff, distro. Why not create a whole operating system?
02:50:51 <ihope> :-P
02:51:00 <Pikhq> ihope: Lazy.
02:51:06 <Pikhq> Whoo.
02:51:11 <Pikhq> I've got the core binaries.
02:51:15 <ihope> Say, where are you going to host this distro?
02:51:27 <Pikhq> I'll probably use my nonlogic account.
02:51:41 <ihope> nonlogic?
02:51:46 <Pikhq> Yeah.
02:51:49 <Pikhq> nonlogic.org
02:51:58 <ihope> Interesting.
02:52:33 <ihope> Wasn't there a nonlogic IRC channel somewhere once?
02:53:10 <Pikhq> ##nonlogic
02:53:19 <Pikhq> On Freenode.
02:55:07 * CakeProphet has plans for an operating system.
02:55:21 <CakeProphet> ...will probably be years before I ever start though... I've got ideas brewing.
02:55:27 <bsmntbombdood> #awos
02:56:01 <ihope> CakeProphet: you too?
02:56:21 <bsmntbombdood> not that it's going anywhere
02:56:22 <Sukoshi> Who owns nonlogic?
02:56:35 <ihope> What's AWOS, now?
02:56:48 <Sukoshi> AW ... it's an OS.
02:56:49 <Pikhq> Sukoshi: The *paying* members of nonlogic own it.
02:56:59 <Sukoshi> Pikhq: Who are they?
02:57:03 <bsmntbombdood> ihope: an os
02:57:10 <Pikhq> Sukoshi: I can't remember the full list. . .
02:57:11 <ihope> Another one?
02:57:25 <bsmntbombdood> ihope: its creator wants to turn it into "the universal operating system"
02:57:28 <CakeProphet> ihope, I DARE SAY WE SHOULD COMBINE OUR EFFORTS
02:57:37 <CakeProphet> bsmntbombdood, they sound crazy.
02:57:37 <Pikhq> Quite a few people on nonlogic have paid, so are allowed to vote on all issues for the nonprofit.
02:57:38 <ihope> CakeProphet: I was just about to say that.
02:57:51 <Pikhq> (I *think* that's the general gist of the nonprofit charter)
02:57:53 <bsmntbombdood> what's nonlogic?
02:58:06 <Pikhq> Free shell server/web host.
02:58:07 <bsmntbombdood> CakeProphet: yeah
02:58:08 <CakeProphet> ihope, ...hail Discordia much?
02:58:14 <ihope> It's going to be called YAOS and all the source code is going to be public domain and it's going to implement the principle of least authority. Right?
02:58:19 <ihope> CakeProphet: ...wait?
02:58:21 <ihope> Erm.
02:58:22 <Sukoshi> Did you pay for Nonlogic also, Pikhq ?
02:58:24 <ihope> CakeProphet: ...what?
02:58:33 <ihope> bsmntbombdood: universal operating system, eh?
02:58:52 <Pikhq> Sukoshi: I've not.
02:58:59 <bsmntbombdood> runs windows and linux binaries natively
02:59:08 <bsmntbombdood> s/runs/planned to run/
02:59:12 <Pikhq> The payment is just to be a voting member. . . Joining costs nothing.
02:59:27 <ihope> bsmntbombdood: Linux binaries, sure, but isn't Windows Wine's job?
02:59:48 <CakeProphet> ihope, Discordianism. I'd like to make a Discordian OS... either that or an anti-Discordian OS. Either erisean or anerisean... or indifferent to both persuasions. or at least incorporating something similar - or another such combination of any of those factors.
02:59:50 <CakeProphet> BEAUTIFUL.
03:00:01 <bsmntbombdood> ihope: ask him
03:00:09 <ihope> CakeProphet: can you define "discordian" and "erisean" for me?
03:00:19 <ihope> bsmntbombdood: who's "him"?
03:00:28 <Sukoshi> So you're ready to stard devving bsmntbombdood?
03:00:32 <bsmntbombdood> ihope: AWOSDev
03:00:36 <Sukoshi> I seem to have lost over half the keys for this keyboard.
03:00:52 <Sukoshi> Where could they have gone, gah.
03:00:54 <CakeProphet> ihope, nope... but you can define it yourself if you like. But don't.
03:01:05 <ihope> Why shouldn't I?
03:01:41 <CakeProphet> then we're getting to New Age bullshit - "DISCORDIANISM IS WHATEVER YOU DEFINE IT TO BE" ...and we all know what New Age does to things.
03:01:53 <CakeProphet> ...it PROPELS IT INTO THE AGE OF AQUARIUS... which is a no-no.
03:02:04 <ihope> You're getting weird.
03:02:17 * oerjan will propel things into the age of Aquarius for food.
03:03:18 <CakeProphet> ihope, http://principiadiscordia.com/book/1.php
03:03:45 <CakeProphet> read that... or just read some of it if you're time is short.
03:03:48 <CakeProphet> ....haha, midget time.
03:04:27 <ihope> I'm not time is short!
03:04:39 <Sukoshi> Oh no, I have them.
03:04:56 <Sukoshi> It turns out that some of the keys markings dissolved to the point where the masquerade other keys.
03:05:13 <Sukoshi> I still can't figure out why I have three 7's.
03:05:21 <Sukoshi> When I need only two.
03:09:54 <bsmntbombdood> Sukoshi: This is going to be a huge project
03:10:29 <Sukoshi> bsmntbombdood: You didn't realize that already? :P
03:11:06 <ihope> Actually, I am.
03:11:12 <ihope> But, uh, ah.
03:11:26 <Sukoshi> I need a project that I can tell college recruiters that ``I didn't take AP Comp-Sci but I'm still a more awesome programmer than j00.'' and I also think the world needs beter PDF readers that can be ported across platform with no/minimal hastle.
03:11:48 * oerjan has this feeling some people here are out of grammar.
03:11:52 <Sukoshi> And I've been wanting to do a major project a while because, IMO, little programming projects get boring after a while.
03:12:18 <bsmntbombdood> AP comp-sci is a joke at my school
03:12:24 <Sukoshi> I know it is.
03:12:36 <CakeProphet> ihope, GO ON
03:12:36 <Sukoshi> I would've taken it this year as an aside, but I already have 5 AP tests to take.
03:12:50 <bsmntbombdood> One of those things that shouldn't be called CS
03:13:05 <Sukoshi> Nah. I hear it's a pretty accurate reading of what Freshman CS is like in college.
03:13:14 <Sukoshi> AKA Let's sleep through Freshman year!
03:13:33 <bsmntbombdood> :(
03:13:37 <ihope> CakeProphet: how about you find a place to host everything, then I start writing the kernel and all, or something?
03:13:40 <Sukoshi> Good thing I'm going to apply for EE, which is a lot more interestin :P
03:13:44 <Sukoshi> *interesting
03:13:50 * bsmntbombdood wants to go to MIT
03:13:58 <ihope> I'm working on this operating system, though I'm doing it very slowly.
03:14:49 <CakeProphet> ihope, .....googlecode would work... except they have no public domain option... largely because you can't just release stuff to public domain. Apparently ideas aren't free by default. >.<
03:15:29 <ihope> Whether or not it's possible to release stuff into the public domain is much debated.
03:15:44 <CakeProphet> I say use http://allritesreversed.com/
03:15:45 <Sukoshi> bsmntbombdood: That's tough :P
03:15:59 <Sukoshi> I doubt I can get in to MIT just like that.
03:16:06 <Sukoshi> I do want to eventually do graduate studies there though.
03:16:33 <bsmntbombdood> I get bad grades and can't pay for it, so I probably won't be able to get it
03:16:50 <bsmntbombdood> in
03:18:59 <CakeProphet> ihope, ....I really should like... learn how to do assembly or C well...
03:19:31 <CakeProphet> I'd go with a microkernel architecture... and have most of the stuff in "user space" or whatever...
03:19:57 <ihope> Wikipedia pretty much says that it's possible to release things into the public doamin.
03:20:02 <Sukoshi> Once you start C you just can't stop.
03:20:13 <ihope> Everybody but GregorR says that this means an automatic disclaimer.
03:20:24 <ihope> However, I haven't seen this backed up anywhere.
03:21:48 <CakeProphet> ....I find it highly unlikely that I'll ever get hooked to C.
03:21:59 <bsmntbombdood> C is fun
03:22:51 <CakeProphet> ...I imagine it would be kind of fun... but hard to work with.
03:23:00 <ihope> What do you do everything in?
03:24:27 <CakeProphet> I'm most familiar with Python... meaning that I've rarely used anything else despite doing entirely too much reading on other languages and procrastinating doing a large project in one.
03:24:40 <Sukoshi> He works in Python, if I'm not mistaken.
03:24:53 <CakeProphet> HOWEVER
03:25:00 <Sukoshi> Gah, this keyboard is so .... feedback-less.
03:25:15 <Sukoshi> How people live without feedback on their keyboards I will not know.
03:25:27 <Sukoshi> Oh well, it is the future!
03:25:31 <CakeProphet> ...after a quick read over some of the standard library of C... I could probably code in it decently.
03:25:46 <bsmntbombdood> each page in the spec is going to take like 500 lines to implement
03:26:13 <bsmntbombdood> that makes... 618,000 lines
03:26:38 * Pikhq wonders how Slackware packages are made. . .
03:26:47 <CakeProphet> ihope, did you have the name for your OS yet? I wanted to go with something like Sophia (I use variations of it for almost all my projects)
03:26:53 <CakeProphet> Slackware, hugs and kisses.
03:27:01 <CakeProphet> Pikhq, er... hugs and kisses
03:27:15 <ihope> CakeProphet: the plan for a while has been to call it YAOS.
03:27:20 <Sukoshi> bsmntbombdood: Just 500 lines?
03:27:30 <ihope> Yet another operating system whose name ends in "OS".
03:27:37 <CakeProphet> SophYAOS?
03:27:42 <CakeProphet> :)
03:27:44 <ihope> CakeProphet: ouch.
03:27:49 <CakeProphet> WHAT
03:27:53 <CakeProphet> IT SOUNDS NICE
03:28:06 <oerjan> YAYAA
03:28:18 <ihope> What about YAOSNS, the "NS" standing for "named Sophia"?
03:28:20 <Sukoshi> The parser won't be too difficult, mabe 200 lines. Some stuff wil probably be in the 700 line mark though.
03:28:29 <Sukoshi> Hey, if the libpoppler people could do it, then so can we!
03:28:57 <Sukoshi> .... Right?
03:29:06 <bsmntbombdood> Just to turn the file into an object that can be rendered will take a while
03:29:28 <CakeProphet> ihope, it has a nice sound coming out... although there's so many yet-anothers out there that I'd be tempted to call it YAYAOSNS
03:29:36 <Sukoshi> So, I ask once more, where shall we begin? :)
03:29:42 <ihope> Yet another YAOS named sophia?
03:29:52 <CakeProphet> yep
03:29:55 <ihope> That would be very redundant.
03:29:58 <CakeProphet> ...but... that sounds lame
03:30:03 <ihope> s/sophia/Sophia/
03:30:09 <CakeProphet> GOOD
03:30:13 <Sukoshi> I would name it FFTH.
03:30:17 <Sukoshi> The OS.
03:30:20 <CakeProphet> I WILL NOT TOLERATE SCRAMBLING OF TITLE CASE
03:30:34 <CakeProphet> ...why not an OS name that... doesn't end in OS?
03:30:40 <ihope> Like Sophia?
03:30:46 <ihope> Is "Sophia" a good name?
03:30:47 <Sukoshi> Five Factorial Times Thirty.
03:30:57 <Sukoshi> Errr...
03:31:03 <Sukoshi> Five Factorial Times Hundred.
03:31:21 <bsmntbombdood> I propose that we have a PDFDoc object, that is the result of parsing, decompressing, decrypting... the file
03:31:26 <ihope> Sukoshi: 12000?
03:31:34 <CakeProphet> naostewos ...not another OS ending with OS.... but that name sucks
03:31:50 <Sukoshi> ihope: Yep.
03:31:52 <ihope> CakeProphet: are we trying seriously to come up with a name here?
03:32:01 <CakeProphet> ...half the time.
03:32:16 <Sukoshi> bsmntbombdood: Would would it internally represent?
03:32:19 <ihope> My proposals are "YAOS" and "Sophia".
03:32:28 <oerjan> Abrasax
03:32:34 * CakeProphet likes to intermingle seriousness and joking... as he often finds that most serious things are huge joke.
03:33:01 <ihope> If we can't agree on a name, it'll be YAOS by default. >:-)
03:33:10 <CakeProphet> ...well... if you want a "weird" name... I can do that easily.
03:33:13 <ihope> Just like how Linus didn't want to call Linux "Linux".
03:33:15 <bsmntbombdood> abraxas is a fantastic album
03:33:24 <ihope> CakeProphet: oh, I just want a name.
03:33:24 <bsmntbombdood> Sukoshi: what?
03:33:32 <ihope> "YAOS" was somehting I came up with and thought funny.
03:33:35 -!- CakeProphet has changed nick to SevenInchBread.
03:33:41 <SevenInchBread> ihope, ..........
03:33:53 <ihope> So have we agreed on Sophia?
03:34:01 <SevenInchBread> it's old enough to be kind of pretentious at this point.
03:34:10 <SevenInchBread> eh... I think it's better than YAOS.
03:34:31 <SevenInchBread> AND IT DOES HAVE A NICE RING TO IT.
03:34:52 <SevenInchBread> if anything we can use it as a placeholder.
03:35:11 <oerjan> Abrasax is related to Sophia, and ends in X.
03:35:42 <Sukoshi> bsmntbombdood: What will it internally represent?
03:35:54 <ihope> SevenInchBread: indeed we can.
03:35:59 <Sukoshi> Like, what does PDFDoc have in it?
03:36:11 <ihope> And we can go with the hybrid "YAOSophia" if we get desperate.
03:36:43 <SevenInchBread> oerjan, I like the sound of it.
03:37:01 <Sukoshi> Yet Another Operating Sophia?
03:37:10 <bsmntbombdood> Sukoshi: the result of reading a file, parsing it, turning the data structures into their unencoded and easily usable data structures
03:37:22 <oerjan> (http://en.wikipedia.org/wiki/Gnosticism)
03:37:40 <ihope> Sukoshi: who said that "YAO" stood for "Yet Another Operating"?
03:37:48 <ihope> Incidentally, it does. Therefore, :-)
03:37:57 <Sukoshi> .... :P
03:38:09 <Sukoshi> bsmntbombdood: Well, what do you suggest we code first?
03:38:14 <SevenInchBread> I LIKE ABRASAX
03:38:17 <ihope> Now, what's this about Abrasax?
03:38:21 <Sukoshi> In 3 minutes, I start my daily Japanese homework.
03:38:22 <ihope> Is that another suggested name?
03:38:37 <SevenInchBread> ...and Sophia. So we shall call it by both names... and many more that we like.
03:38:39 <Sukoshi> How about YMMV as the name?
03:38:49 <SevenInchBread> BECAUSE NAMES ARE ABUNDANT... DESPITE THE POPULAR BELIEF THAT ALL THE GOOD ONES ARE TAKEN.
03:38:51 <bsmntbombdood> Turning a subset of pdf files into PDFDoc
03:39:00 <ihope> Yet my mother's Volkswagen?
03:39:22 <ihope> SevenInchBread: so "Abrasax" is another suggested name?
03:39:53 <SevenInchBread> yep.. I'm using it for the sourceforge name for now.
03:41:01 <Sukoshi> bsmntbombdood: Uh... think small :P
03:41:05 <ihope> You're creating a Sourceforge thingy for it?
03:41:24 <Sukoshi> Parser, stacks, internal object representation...
03:41:28 <bsmntbombdood> Sukoshi: the first step to that would be parsing
03:41:29 <ihope> Not bad.
03:41:33 * ihope throws dextrose tablets at GregorR
03:41:34 <Sukoshi> ihope: Your Mileage May Vary.
03:42:16 <Sukoshi> Because who said OS's are equally lovable? :P
03:42:27 <SevenInchBread> ...I've never liked the categorization of people into classes like "developer" and "end user".
03:42:34 <bsmntbombdood> converting pdf strings to strings, converting dictionaries to hash tables...
03:43:24 <bsmntbombdood> some kind of modular system for adding compression, encryption
03:43:35 <Sukoshi> SevenInchBread: It's OS Communism!
03:43:42 <Sukoshi> COSmunism!
03:43:52 <SevenInchBread> ...we sort of keep te "end user" dump by classifying them as an "end user" and doing everything possible to prevent them from exposure to computer-related stuff.
03:44:08 <Sukoshi> bsmntbombdood: I say we defer compression and encryption for later.
03:44:10 <SevenInchBread> s/dump/dumb
03:44:13 <bsmntbombdood> Sukoshi: yes
03:44:38 <bsmntbombdood> I'm just saying we need to allow for a way to add the "filters" cleanly later
03:44:47 <Sukoshi> Oh oh, I see.
03:45:01 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
03:45:09 <Sukoshi> Well, we can just as internal objects around to filters.
03:45:47 <Sukoshi> So, how do you suggest we tokenize this, in 2 minutes?
03:46:03 <Sukoshi> Then I leave.
03:46:25 <Sukoshi> s/as/pass/
03:46:37 <bsmntbombdood> start with the cross reference table, build all the indirect objects
03:46:50 <SevenInchBread> ihope, yeah... no huge monolithic kernel for this one... too messy.
03:47:11 <Sukoshi> What happened to ESOS?
03:47:12 <bsmntbombdood> we use indexes into an array for those when we get to them in the doc
03:47:30 <Sukoshi> bsmntbombdood: Huh?
03:47:46 <Sukoshi> bsmntbombdood: Talk here. I start Japanese now.
03:47:50 <ihope> Sukoshi: find me a platform for it and we can start work building an operating system for it.
03:47:51 <Sukoshi> See you some time later :P
03:48:05 <Sukoshi> ihope: x86 ?
03:48:13 <ihope> Sukoshi: x86 is not esoteric.
03:48:24 <Sukoshi> ihope: ..... :P
03:48:32 <bsmntbombdood> ihope: subleq OISC
03:48:38 <SevenInchBread> well... I wouldn't worry about being esoteric in the hardware.
03:48:48 <ihope> bsmntbombdood: what's subleq?
03:49:00 <ihope> SevenInchBread: "platform" need not refer to the hardware.
03:49:00 <bsmntbombdood> subtract and branch if negative
03:49:10 <bsmntbombdood> I wrote a vm a while ago, fun to play with
03:49:23 <ihope> bsmntbombdood: is that URISC?
03:49:33 <SevenInchBread> we can easily be esoteric (and Discordian... which works SURPRISINGLY well with esoteric) in the emergent behavior of our stale and bland platform
03:49:43 <Sukoshi> bsmntbombdood: PM me your ideas on tokenizing, and maybe we can get a basic tokenizer written up today.
03:49:51 <SevenInchBread> THE SYSTEM... THE HIVEMIND... IT IS THE CENTER OF EVERYTHING AND IT IS DISPERESED WIDELY.
03:50:10 <Sukoshi> Run away! It's COSmunism!
03:50:12 <ihope> Abrasax...
03:50:19 <bsmntbombdood> Sukoshi: I've only read up to the objects used in the pdf file
03:50:29 <Sukoshi> Then read more :)
03:50:40 <bsmntbombdood> but tokenizing is pretty simple
03:50:43 <ihope> Well, I certainly don't see anything called Abrasax on SourceForge right now.
03:50:56 <bsmntbombdood> recursive for arrays and dictionarys
03:51:04 <ihope> Is it okay if I call it SourceForce every once in a while, or SourgeForce or SourgeForge?
03:51:39 <SevenInchBread> Sourceforge asks a bunch of questions... all of them optional though
03:51:47 <SevenInchBread> like programming languages, what we're doing etc.
03:52:30 <ihope> All of them are optional?
03:52:53 <ihope> Does SourceForge.net offer a fancy public domain thing?
03:53:03 <SevenInchBread> ...it would be nice to have a virtual machine language that we could compile everything to... so everything can work together despite being different programming languages.
03:53:06 <SevenInchBread> yeah
03:53:43 <Pikhq> Um, yeah. . .
03:53:49 <Pikhq> Try the Java Virtual Machine.
03:54:11 <SevenInchBread> ....I don't like the sound of it.
03:54:25 <SevenInchBread> ...but that's because I have a silly bias toward Java.
03:54:33 <Pikhq> It's just the virtual architecture which Java is usually compiled to.
03:54:49 <SevenInchBread> I like Parrot... on the shallow basis that it has a cooler name.
03:54:55 <Pikhq> Other languages *can* be compiled to it, but aren't commonly. . .
03:55:04 <Pikhq> One could even write in JVM ASM if you wished.
03:55:30 <bsmntbombdood> ihope: what's URISC
03:55:41 <bsmntbombdood> OISC is One Instruction Set Computer
03:55:45 <Sgeo> n/m
03:55:47 <Sgeo> erm
03:55:56 <SevenInchBread> but either way... the main way I think we could make it easier for programming languages to communicate togethr is via some high-level structures in the OS. Like instead of just passing around bytes we pass around lniked lists and hash tables. I've got lots of ideas for inter-process communication here.
03:55:56 <Sgeo> n/m the n/m
03:56:20 <ihope> bsmntbombdood: doesn't Esolang have something about URISC?
03:57:27 * SevenInchBread has become a fan of variants of record-based IPC
03:57:33 <SevenInchBread> and a builtin versioning system.
03:57:52 <SevenInchBread> ...but that's all filesystem/process-level stuff... not the bare bones.
03:58:04 <bsmntbombdood> ihope: no
03:58:13 <ihope> bsmntbombdood: doesn't Wikipedia have something about URISC?
03:58:23 <SevenInchBread> probably one of the first things we'd want is a way to spit stuff out to a terminal... for breadcrumbing/testing OS stuff.
03:58:32 <bsmntbombdood> yes, it redirects to OISC
03:58:39 <bsmntbombdood> so URISC = OISC
04:00:52 <ihope> Pff.
04:01:06 <ihope> Does the OISC page mention URISC?
04:01:41 <ihope> SevenInchBread: a way to spit stuff out to a terminal... is this YAOS/Sophia/Abrasax we're talking about?
04:01:49 <SevenInchBread> yeah.
04:02:00 <SevenInchBread> like... a way to shoot stuff out... so we can test stuff.
04:02:19 <oerjan> a cannon!
04:02:35 <ihope> Well, we'll want to plan some stuff out
04:02:46 * ihope opens Notepad
04:03:10 <ihope> What's this about Multiboot and modules?
04:03:52 <Pikhq> Multiboot is a standardised interface for a bootloader to access an OS kernel.
04:04:16 <Pikhq> It's main user is the Hurd. . .
04:04:53 <Pikhq> Using Multiboot for an OS project is an easy way to make the kernel bootable via GRUB.
04:05:05 <ihope> The kernel, upon starting, loads all its modules as drivers.
04:05:13 <Pikhq> (the other way being to use the Linux bootloader interface)
04:05:33 <ihope> Or maybe one of its modules would act as a config file.
04:05:47 <Pikhq> Exactly.
04:05:53 <ihope> And that config file would tell what to do with the rest of the modules.
04:07:29 <ihope> Suddenly, it's time for bed. Does everyone have some idea of my email address?
04:08:07 <SevenInchBread> ihope, do we want everything Public Domain? If so, then I don't think we can use a lot of GNU stuff... which is fine with me - I like making new stuff.
04:09:27 <ihope> SevenInchBread: we'll make the core stuff public domain and find a way to add the GNU stuff, then we'll gradually eliminate the GNU stuff in favor of public domain stuff.
04:09:38 <SevenInchBread> and here's the description I gave the Sourceforge people...
04:09:39 <SevenInchBread> Abrasax is basically just an open source OS kernel being developed by a hoard of time bandits. Some goals include general weirdness, cool ideas, high-level inter-process communication, a versioned filesystem, full Unicode support, complete Public-Domain-ness, and general awesomeness. We're still mostly planning in planning.
04:10:12 <ihope> I thought it was "horde".
04:10:21 <SevenInchBread> oh well.
04:10:24 <SevenInchBread> spelling is for geeks
04:10:28 <ihope> And I see you have lots of your own ideas.
04:11:12 <SevenInchBread> yeah... I've been thinking about this a lot. ...any of them that sound like something you wouldn't like?
04:12:29 <ihope> General weirdness may be iffy, cool ideas are probably fine but somewhat iffy, high-level inter-process communication may be iffy, a versioned filesystem is a little iffy, full Unicode support may be a litle iffy, and complete Public-Domain-ness would be generally awesome.
04:12:50 <ihope> Rather, general weirdness is iffy.
04:13:22 <SevenInchBread> I think they all sound great........ which is obvious - since I wrote them. What all did you have in mind?
04:14:38 <ihope> Principle of least authority, Linux application compatibility...
04:14:56 <SevenInchBread> I like the idea of a versioned file system... you can revert changes easily. and high-level structures sounds cool to me so you can do things like output hash tables.
04:14:59 <bsmntbombdood> haha, compatibility
04:15:19 <ihope> Why output hash tables when you can serialize them and send them as plain old bytes?
04:15:20 <SevenInchBread> ihope, sounds great to me. compatibility hasn't been much of a concern for me... but nothing that I'm against
04:15:28 <ihope> Not that I actually know that "serialize" means what I think it does.
04:15:30 <bsmntbombdood> SevenInchBread: IPC is usually acheived by shared memory. you can put hash tables in memory
04:15:35 <SevenInchBread> ihope, ...because that takes more work?
04:15:36 <ihope> Versioned file system... that one's an idea.
04:15:47 <ihope> SevenInchBread: very true.\
04:15:55 <bsmntbombdood> but versioned file system would be cool
04:15:58 <SevenInchBread> bsmntbombdood, well then fuck usually. :P
04:16:08 <ihope> Let's implement EVERYTHING!
04:16:12 <SevenInchBread> INDEED
04:16:25 <ihope> And find a way to do all this in a microkernel.
04:16:26 <SevenInchBread> I'm all for it actually... I'm only lazy when it comes to stuff I don't want to do.
04:16:43 <ihope> Lemme think... kernel loads drivers according to a config file...
04:16:55 <ihope> Ah yes. Processes need to be able to register services.
04:17:02 <bsmntbombdood> I think it would be neat to have finer-grained execute controls
04:17:10 <ihope> Hard drive access might be a service, for example.
04:17:14 <ihope> bsmntbombdood: to have what?
04:17:43 <bsmntbombdood> linux uses a single bit to control execution (executable or not executable)
04:17:47 <SevenInchBread> ihope, with a microkernel... you basically just have memory and process stuff as "the kernel"... while everything else (like file system manipulation) as separate processes
04:17:59 <ihope> Invoking certain services with certain arguments might be a privilege.
04:18:12 <ihope> SevenInchBread: would handling privileges also be a separate process?
04:18:12 <bsmntbombdood> finer grained would be "allow this proccess to execute but don't let it write to any disk"
04:18:34 <SevenInchBread> SevenInchBread, hmmm... I kind of consider priveledges a form of "authority".
04:18:37 <SevenInchBread> er... ihope
04:18:41 <ihope> That may well mean invoking a process everytime anything makes a system call.
04:18:42 <SevenInchBread> but... yes.
04:18:57 <ihope> SevenInchBread: what's this about privileges and authority?
04:19:00 <SevenInchBread> ihope, nope. You just have them as processes that are always around.
04:19:02 <ihope> Rather, what did I say to the contrary?
04:19:09 <bsmntbombdood> a bit for network access...
04:19:32 <ihope> SevenInchBread: well, yes, but you'd use the process every time something makes a system call.
04:19:45 <SevenInchBread> ihope, oh... accidentally implied that we were using privledges... which I kind of consider a form of control... and/or security depending on how anarchist I'm feeling.
04:20:21 <ihope> I'm Gmail's ihope127, by the way, in case anybody wants to email me for some reason... like operating system development.
04:20:38 <ihope> SevenInchBread: the operating system is definitely going to have privileges.
04:20:59 <ihope> Oh, also, to prevent forkbombs and such, every process will pretty much be responsible for its "children".
04:21:15 <ihope> If a process invokes another process, chances are they're going to share time slices.
04:21:26 <bsmntbombdood> makes sense
04:21:51 <SevenInchBread> ...I see the shell working something like a Smalltalk-ian programming language.
04:21:58 <SevenInchBread> ...kind of io-ish.
04:22:27 <SevenInchBread> definetely with more features than UNIX-style pass-strings-around shell scripting.
04:23:36 <SevenInchBread> ihope, I've just never seen much need for them... other than to keep other people out of your stuff... and like - protecting access from mean hacker-types.
04:23:58 <SevenInchBread> ...but that's because no one else uses this computer... and I've never have a security breach.
04:24:48 <ihope> SevenInchBread: privileges are very necessary.
04:25:02 <ihope> Every process must have a set of privileges.
04:25:17 <SevenInchBread> eh... probably... I've just never found use for them myself.
04:25:36 <SevenInchBread> my email is adamadamadamamiadam@gmail (it's long... but probably easy to remember)
04:26:56 <SevenInchBread> ihope, what kind of priveledges? I usually think of priveledge systems as ways to keep me out of messing with shit..
04:27:12 <ihope> Adam adam adam ami adam?
04:27:27 <ihope> SevenInchBread: every system call is a privilege.
04:27:34 <ihope> And every process has privileges.
04:27:49 <ihope> That's to make it so that running malicious software doesn't end up doing anything bad.
04:27:56 <ihope> And by malicious, I might mean buggy/
04:28:30 <bsmntbombdood> yeah
04:29:01 <SevenInchBread> eh... you could just make everything fairly unbreakable to start with...
04:29:21 <SevenInchBread> as long as everything is open-ended unless explicitly blocked.
04:29:36 <SevenInchBread> then I'm cool with priveledges.
04:30:15 <ihope> SevenInchBread: "everything is open-ended unless explicitly blocked" meaning "if you run it, it can do anything unless you say otherwise"?
04:30:30 <SevenInchBread> pretty much.
04:30:32 <ihope> And how do you make something immune to formatting the hard drive, say?
04:30:50 <SevenInchBread> -shrug- I don't know really.
04:31:08 <ihope> I still like the principle of least authority.
04:31:22 <SevenInchBread> ...what's that again?
04:31:54 <ihope> By default, programs aren't allowed to do anything that's potentially harmful.
04:32:08 <SevenInchBread> oh... originally I thought it meant something like "principle of no authority"./
04:32:18 <ihope> If you run it, you're granting it some CPU time, memory, and maybe hard disk space and a slot in your window manager.
04:32:31 <SevenInchBread> ...OH NOES... A SCHISM IN THE OSDEVERS PRINCIPLES.
04:32:41 <ihope> Hmm?
04:33:11 <SevenInchBread> how much in comparison to say... Windows or Linux?
04:33:33 * SevenInchBread likes to be able to do whatever he wants.
04:33:43 <ihope> SevenInchBread: then sudo is for you.
04:34:00 <ihope> How do Windows and Linux CPU time distribution things work?
04:34:05 <oerjan> as i understand it, one of the ideas behind the principle is that even if someone manages to break into your program, they cannot get control of anything the program doesn't normally use
04:34:15 <SevenInchBread> as long as something isn't completely blocked from access... then having some security features is nice.
04:34:37 <ihope> SevenInchBread: it's not like you'd want to run a program and then not grant it any CPU time.
04:34:48 <ihope> Nor grant it CPU time but not the ability to make any system calls at all.
04:35:10 <ihope> Unless you want the program to do nothing but sit there and compute.
04:35:44 <SevenInchBread> the securest computer in the world is also the most useless computer in the world.
04:36:52 <Sukoshi> I'll bet Babbages computer was more secure than any computer today!\
04:37:20 <oerjan> being unbuilt _is_ pretty secure, you have to admit.
04:37:23 <SevenInchBread> yeah okay then... I see no problem with having configurable security stuff then... I usually don't reformat my hard drive on a regular basis... and as long as I still have free access to everything then it doesn't matter to me.
04:37:26 <ihope> SevenInchBread: yes, well, we don't want the most secure computer in the world.
04:37:39 <SevenInchBread> good. :)
04:37:50 <ihope> And there will in fact be a way for you to do whatever you want, as long as it's not configured to keep everyone out.
04:38:02 <ihope> Nor configured to keep you out.
04:38:08 <SevenInchBread> lovely.
04:38:20 <SevenInchBread> ANARCHYOS!!!
04:38:38 <ihope> :-)
04:39:24 <SevenInchBread> ihope, basically I like microkernals because they're not huge and messy...
04:39:36 <ihope> I think we can manage a microkernel.
04:39:52 <ihope> So let's see here... kernel loads processes. We need the kernel to handle processes.
04:40:00 <SevenInchBread> -nod-
04:40:14 <ihope> So it has to handle time slices, loading of processes, calling of processes, and system calls.
04:40:24 <ihope> And handling system calls means handling privileges.
04:40:26 <SevenInchBread> does it need to handle inter-process commmunication. IPC is really something I'd like to focus on.
04:40:46 <ihope> IPC could be provided using a service.
04:40:54 <ihope> We'll also want the kernel to handle services.
04:41:08 <SevenInchBread> aren't they the same thing?
04:41:13 <ihope> And I think that's just about everything our kernel needs.
04:41:16 <ihope> Aren't what the same thing?
04:41:39 <SevenInchBread> I've always interpreted service/daemon to mean "stuff that spends most of its time sitting around making itself available"
04:41:45 <SevenInchBread> a process.
04:42:14 <ihope> Service = something which a process makes available and can be invoked by other processes.
04:42:35 <SevenInchBread> can't you just make all processes like that?
04:42:46 <SevenInchBread> like... give the processes handy names.
04:42:47 <ihope> You could invoke the processes themselves, yes.
04:43:12 <ihope> But what if you want a process to provide multiple services?
04:43:36 <SevenInchBread> multiple names.
04:43:37 <ihope> A service is essentially some type of interface for something.
04:44:06 <SevenInchBread> the syntax - to put it into shell parlance - might be something like "processname message"
04:44:19 <ihope> Indeed it could be.
04:44:34 <SevenInchBread> so.... if there was an "fs" process... that did the filesystem.
04:44:35 <ihope> So that means services = IPC?
04:45:07 <SevenInchBread> you could do "fs cd foo/bar" or "fs list (foo/bar, foo/bar2, foo/bar3)"
04:45:20 <ihope> Nah, we have to give it a GUID. Call it {f4f5ff04-45eb-40d1-b206-63913b5468d6}.
04:45:32 <SevenInchBread> .....
04:45:34 <ihope> :-P
04:45:40 <SevenInchBread> that sounds uh... brilliant?
04:45:40 <ihope> I mean, we don't want collisions, do we?
04:45:49 <ihope> I guess calling it "fs" isn't a bad idea.
04:46:06 <SevenInchBread> don't see why not... collisions can be handled by some sort of priveledge.
04:46:26 <ihope> How would that work?
04:46:55 <SevenInchBread> so if some malicious HackerHarrison tries to split off a process named "fs"... some nifty NameLessPriveledge of the existing fs can keep that from happening.
04:47:16 <ihope> Oh, just keep process naming privileged.
04:47:22 <SevenInchBread> like a "prevent name override" priv.
04:47:45 <ihope> But I guess you'd have the kernel issue random, boring names to whoever needs one.
04:47:49 <SevenInchBread> or it could go the other way around... other processes can have a "override names" priv
04:48:03 <SevenInchBread> that way you have the option to stuff like... create a new filesystem process.
04:48:15 <ihope> Well, what if someone sets up an fs privilege and someone else uses it before the real fs can kill it?
04:48:41 <SevenInchBread> not sure I understand what you mean.
04:49:42 <ihope> Well, we want this operating system to be airtight.
04:49:50 <bsmntbombdood> "secure" is pretty meaningless
04:50:38 <SevenInchBread> referring to processes by number is pretty crappy of UNIX... I must say.
04:50:55 <ihope> bsmntbombdood: is it?
04:51:05 <oerjan> if someone can set up an fs privilege then they shouldn't pass it around to someone non-trusted.
04:51:17 <bsmntbombdood> it has to be quantified, "secure from what?"
04:51:21 <SevenInchBread> ...but UNIX doesn't focus much on processes... it puts more focus on files.
04:51:53 <ihope> SevenInchBread: indeed, isn't "everything's a file" some sort of UNIX philosophy?
04:52:00 <SevenInchBread> ...SOME SORT.
04:52:43 <SevenInchBread> I SAY WE ADOPT A "everything reminds SevenInchBread of Smalltalk-like objects"... WHICH WE SEEM TO BE DOING QUITE WELL.
04:53:05 <ihope> You know, this isn't all too different from letting processes register services that other processes can use...
04:53:11 <SevenInchBread> ...actually more like IO.
04:53:28 <bsmntbombdood> iirc, you can access the IP stack by writing to a file in /proc
04:53:33 <SevenInchBread> not too different at all... processes are pretty much services... from my experience.
04:53:48 <ihope> bsmntbombdood: you can access the what?
04:53:54 <bsmntbombdood> ihope: the network
04:53:59 <ihope> Interesting.
04:54:03 <bsmntbombdood> but everything as a file makes a lot of sense
04:54:13 <SevenInchBread> they do stuff... when given some input. UNIX and Windows just do it by spitting out a process each call... but you could easily have the processes sitting around performing actions as they receive them.
04:54:42 <ihope> SevenInchBread: how about we go with an "everything is a service" philosophy?
04:54:52 <ihope> Or "everything is a file", if you want to go that route.
04:54:54 <SevenInchBread> Nope
04:54:58 <SevenInchBread> I shall not permit it.
04:55:02 <SevenInchBread> ACTUALLY
04:55:09 <bsmntbombdood> everything makes sense as a file
04:55:20 <SevenInchBread> we shall go with the "everything is something" phiolosophy.
04:55:20 <bsmntbombdood> except maybe graphics
04:55:41 <ihope> Do the capital letters indicate sarcasm?
04:55:50 <SevenInchBread> I'm feeling Perl-esque... and in backlash of all this "everything is <foo>" nonsense.
04:56:00 <SevenInchBread> ihope, nope.
04:56:23 <Sukoshi> Ph33r the COSmunists!!!!
04:56:27 * Sukoshi goes back to Japanese studies.
04:56:39 <Sukoshi> bsmntbombdood: Don't forget to brainstorm more on ppdf.... :(
04:56:46 <SevenInchBread> I AM PERSON, AND THAT IS A ROCK... BUT I'M ALSO CARBON... EVERYTHING IS ANYTHING YOU FUCKING WANT IT TO BE. THAT'S HOW IDENTITY WORKS.
04:56:46 <ihope> SevenInchBread: "everything is something"? So maybe filesystem access is a service while networking is a system call, and miscellaneous inter-process communication is a file?
04:57:07 <bsmntbombdood> Sukoshi: I got nothing
04:57:19 <SevenInchBread> ihope, I see system calls working as messages to services... which all have convient names attached to them.
04:57:22 <Sukoshi> bsmntbombdood: ... :(
04:57:29 <SevenInchBread> kind of Smalltalk-ish...
04:57:43 <Sukoshi> ObjC!
04:57:48 <Sukoshi> :)
04:58:22 <ihope> SevenInchBread: eh.
04:58:44 <ihope> How about we discuss this via email? It's midnight and there seems to be school tomorrow.
04:59:02 <bsmntbombdood> school tommorow?
04:59:13 <ihope> It's Sunday today?
04:59:15 <bsmntbombdood> tommorow's sunday
04:59:16 <Sukoshi> bsmntbombdood: Do you want to change the project ...? :(
04:59:36 <SevenInchBread> "fs del (one, two, buckle, my shoe)" ...which is a system call in typical parlance... but basically it would just be input to the fs process... with the comma-separate list thing being an actual data-structure being sent here. :)
04:59:40 <SevenInchBread> ihope, sure.
04:59:54 <ihope> Rather, it's on the borderline between Sunday and Monday right now?
05:00:16 <bsmntbombdood> Sukoshi: That's not what I meant
05:00:21 <Sukoshi> bsmntbombdood: Oh.
05:00:35 <bsmntbombdood> ihope: you must live in crazy other-side-of-the-world land
05:01:07 <ihope> Does crazy other-side-of-the-world land include Michigan?
05:01:18 <bsmntbombdood> no
05:01:31 <bsmntbombdood> you must be deranged, if you live in michigan
05:01:34 <SevenInchBread> ...hmmm... actually fs might just receive "del" and then output something to handle like... the (one, two, buckle, my, shoe)
05:01:34 <ihope> I have a feeling my clock is wrong.
05:01:46 <SevenInchBread> It's midnight here... eastern time.
05:01:57 <ihope> SevenInchBread: it's eastern time over there?
05:02:03 <SevenInchBread> >.> Georgia?
05:02:06 <ihope> Is it Sunday/Monday or Saturday/Sunday?
05:02:20 <SevenInchBread> It's Saturday/Sunday
05:02:24 <ihope> Sheesh.
05:02:25 <SevenInchBread> ...thank god.
05:02:26 <bsmntbombdood> it's 0001 sunday morning in michigan
05:02:26 <Sukoshi> MENTALLY CHALLENGED PEOPLE NOT ABLE TO COMPREHEND TIMEZONE!!!
05:02:33 <SevenInchBread> otherwise I'd be going back to school tomorrow.
05:03:01 <bsmntbombdood> i hate school SO MUCH
05:03:07 <SevenInchBread> ....I say we get rid of timezone... they were only good back when we had trains and because people liked there clocks to look the same in different parts of the world.
05:03:23 -!- ihope has quit (Read error: 104 (Connection reset by peer)).
05:03:40 <bsmntbombdood> me and a freind are going to drop out and start a commune
05:03:42 <SevenInchBread> ...now they just confuse the hell out of people.
05:04:13 <oerjan> you mean we should go back to local time?
05:04:24 <SevenInchBread> bsmntbombdood, I've had plans at separating from the US for some time. TO CREATE A DISCORDIAN AND HUMOR-BASED NATION... THAT WILL ENFORCE ITS BULLSHIT IDEOLOGY ON THE WORLD.
05:04:36 <SevenInchBread> no... just have like... one time.
05:04:39 -!- ihope has joined.
05:04:48 <ihope> Stupid ChatZilla.
05:04:58 <ihope> Anyway, apparently my computer thinks it's December.
05:04:59 <oerjan> how would that be different from the US?
05:05:03 * oerjan ducks
05:05:03 <ihope> And that today
05:05:07 <ihope> 's Saturday.
05:05:15 <Sukoshi> Wow.
05:05:21 <Sukoshi> ihope sounds like me on summer vacation.
05:05:24 <SevenInchBread> and if its daylight at 3 AM in the UK then world will not implode
05:05:30 <Sukoshi> ``Darn it, it's Tuesday? I thought it was Sunday :(''
05:05:49 <Sukoshi> Yes it will SevenInchBread.
05:05:56 * ihope adjusts his clock to April and one minute, 30 seconds forward
05:06:15 <SevenInchBread> oerjan, no no it's alright... talking about how much the US sucks is a great way to get brownie points with any United Statesian.
05:06:37 <SevenInchBread> ...well... unless they're like... a freakish unpatriotic USA-lover person.
05:06:37 * ihope casts his vote for "US American"
05:06:54 <Sukoshi> Yeah. You can't be a patriot and like the current administration.
05:07:01 <SevenInchBread> ...I like United Statesian and USAn
05:07:01 <ihope> So there is in fact not any school today/tomorrow.
05:07:10 <Sukoshi> Congratulations ihope.
05:07:32 <ihope> But regardless, I'll be going to bed now, so if anybody wants to say anything, it'll have to be via email.
05:07:38 * SevenInchBread thinks oppression of freedom should be done with A GOOD CHUCKLE
05:07:50 <SevenInchBread> ihope, -nod- alrighty... HAVE A GOOD DAY.
05:08:18 <ihope> Also, I think once this operating system's written, we'll look back and say "wow, that was easy". Maybe.
05:08:20 <SevenInchBread> we could get a mailing list
05:08:22 <SevenInchBread> to look cool
05:08:27 <ihope> We could, yes.
05:08:32 <Sukoshi> I think it'll go by the way of ESOS.
05:08:33 <SevenInchBread> ...or just like... a forum thing.
05:08:33 <oerjan> yes, i guess the bush administration may not be big on the humor part.
05:08:34 * Sukoshi ducks.
05:08:39 <ihope> But mailing lists are more useful when there's more than two people.
05:08:47 <ihope> Even with three we can get by easily.
05:08:58 <SevenInchBread> Sukoshi, not without me pushing for it forever... this has been a serious project on my mind for some time now.
05:09:06 <ihope> And four and five. Once you get people joining too fast to keep track of them all, you need a mailing list or something.
05:09:19 <ihope> A mailing list, a forum, a chatroom, and a wiki.
05:09:24 <Sukoshi> SevenInchBread: Will this be serious? I'll join then.
05:09:26 <SevenInchBread> I just thinking a mialing list would be nice so information doesn't get all fragmented.
05:09:30 <SevenInchBread> and everyone knows what's going on.
05:09:33 <ihope> I happen to already have #yaos registered for this. :-)
05:09:36 <Sukoshi> SevenInchBread: Only on the condition that we support some non-C language at a basic level.
05:09:46 <Sukoshi> When I see the letters ``yao'' I think ``yaoi''.
05:09:53 <SevenInchBread> Sukoshi, ...probably. Since I don't know C all tha twell.
05:09:58 <ihope> Should I register #aspirin and #sophia as well?
05:10:02 <ihope> What's yaoi?
05:10:14 <oerjan> aspirin?
05:10:15 <SevenInchBread> male-male hentai.
05:10:16 <Sukoshi> The genre of Boys-love in Japanese Animation.
05:10:23 <Sukoshi> Net always hentai.
05:10:24 <SevenInchBread> ...or that
05:10:32 <Sukoshi> Look, don't blame the bishounen for being hawt. They just are.
05:10:36 <SevenInchBread> ah.
05:10:51 <ihope> oerjan: just like the Staff of Eucalyptus.
05:10:59 <Sukoshi> Eucalyptus!
05:11:02 <Sukoshi> That's a great OS name!
05:11:04 <ihope> And the Eye of Tapioca.
05:11:08 <SevenInchBread> with IRC... only the people around to hear you get the message.
05:11:11 <ihope> Sukoshi: very.
05:11:17 <SevenInchBread> with a mailing list you can be sure everyone gets the word.
05:11:25 <ihope> It's something you say when you don't remember what the word actually is.
05:11:59 <Sukoshi> What do you program in SevenInchBread ?
05:12:12 <ihope> Anyway, when I said "now" there, I probably meant the now that's actually now. Send each other (and me) lots of emails so that this will suddenly become a real project.
05:12:30 <SevenInchBread> Python... but I feel oddly confident that I could work with a host of other languages... even though I've never really used them.
05:12:34 <SevenInchBread> ...it's an odd feeling.
05:12:44 <SevenInchBread> even though I'm sure I'd suck in all of them from the start.
05:13:11 * oerjan still does not understand what aspirin is a mispeling of.
05:13:13 <Sukoshi> ......
05:13:20 <Sukoshi> oerjan: A spring.
05:13:41 <SevenInchBread> so it'll take the sourceforge people about 1 or 2 days to reject our project.
05:13:58 <Sukoshi> Oh, you're CakeProphet.
05:14:15 <SevenInchBread> googlecode doesn't require approval... but it doesn't have the public domain option.
05:14:20 <Sukoshi> Python: For Idiots and Cakeprophets.
05:14:28 <SevenInchBread> Sukoshi, I'm a poly-psuedonymous being, my friend.
05:14:41 <Sukoshi> bsmntbombdood: Now I really leave but, is there any project you'd rather do than a PDF Viewer that's moderately complex?
05:14:45 <oerjan> PSEUDO!!!!
05:14:49 <SevenInchBread> Sukoshi, Yeah... despite being waaay too familiar with it... I hate it completely.
05:15:10 <SevenInchBread> OERJAN, THE ENGLISH LANGUAGE IS NOT FIXED
05:15:15 <SevenInchBread> THAT COULD HAVE BEEN A NEW WORD
05:15:19 <SevenInchBread> ...that I made up.
05:15:27 <bsmntbombdood> Sukoshi: not that i can think of right now
05:15:42 <Sukoshi> bsmntbombdood: :9
05:15:42 <Sukoshi> *:(
05:16:04 <Sukoshi> Ok, does anyone here have any ideas for moderately complex practical projects?
05:16:06 <oerjan> only fixed in the sense "corrupt"
05:16:08 <Sukoshi> Keyword: Practical.
05:16:26 <SevenInchBread> ...a MUD
05:16:31 * SevenInchBread is working on a MUD.
05:17:08 <Sukoshi> No.
05:17:17 <Sukoshi> MUDs are for NUBs.
05:17:52 <SevenInchBread> ...it reminds me of like... the filesystem part of an OS... minus all the heavy-duty hardware and memory shit... and all the speed concerns...
05:18:00 <SevenInchBread> ...and on a network. So basically almost nothing like an OS.
05:18:20 <Sukoshi> SevenInchBread--;
05:18:48 <SevenInchBread> but there's a hierarchy of things within other things.... and some commands. so it's vaguely like a virtual filesystem.
05:19:01 <Sukoshi> So it's like a .... a ... a .... game?
05:19:04 * Sukoshi gasps audibly.
05:19:17 * SevenInchBread eats Sukoshi for BREAKFAST
05:19:24 <SevenInchBread> DO NOT BELITTLE MY HOBBY
05:19:30 <SevenInchBread> A MUD IS A PIECE OF ART.
05:19:35 <bsmntbombdood> games--;
05:19:36 <SevenInchBread> ....
05:19:48 <SevenInchBread> alright
05:19:51 <SevenInchBread> I'll give you that
05:20:01 <oerjan> breakfast? i thought you were in the US...
05:20:09 <SevenInchBread> but in return... you have to call befunge a board game.
05:20:45 <SevenInchBread> oerjan, ...the US has breakfast... just not at regular intervals.
05:20:55 * SevenInchBread didn't eat breakfast today...
05:21:07 -!- ihope has quit (Read error: 60 (Operation timed out)).
05:22:23 * SevenInchBread shall return briefly.
05:26:38 <Sukoshi> Does anyone else have any practical ideas that don't involve eating the discussioners along the way?
05:29:21 <Sukoshi> ドライの手の中まで!
05:36:06 <Pikhq> ドライ?
05:36:35 <Sukoshi> Dry.
05:36:47 <Pikhq> So, from the middle of dry hands?!?
05:46:51 <Sukoshi> Yeahp.
05:46:58 <Sukoshi> It's a quote from a song, heh.
05:47:47 <bsmntbombdood> haha
05:47:57 <bsmntbombdood> theo de raadt is like a little kid
05:48:08 <Sukoshi> We all are when we're next to the things we love.
05:48:18 <Sukoshi> I start hopping around when I see a baloon and some magnets.
05:48:35 <Sukoshi> I like tike induce a charge in the balloon and then spin the magnets around to cause the balloon to move.
05:48:38 <Sukoshi> It's really fun.
05:49:01 <Sukoshi> *I like to
05:49:49 <bsmntbombdood> it's sad that licensing is such a big issue in FS
05:50:00 <Sukoshi> Oh yah, I forgot what happened about Reiser.
05:50:11 <Sukoshi> He made a 5 minute blip on our local news some months ago.
06:00:12 * SevenInchBread sets up an Abrasax mailing list
06:07:40 <bsmntbombdood> this book gives a very good argument for OOP
06:08:03 <Sukoshi> Yeah. It does.
06:09:49 <SevenInchBread> I've see very good arguments for both OOP and no-OOP
06:10:06 <bsmntbombdood> OOP just shouldn't be overused
06:10:09 <bsmntbombdood> ...java
06:11:16 <SevenInchBread> yeah... forced OOP can lead to overcomplicated designs... but used just right it can make really simple designs.
06:11:23 <Sukoshi> What about SmallTalk?
06:12:22 <SevenInchBread> mmm... I don't know... I always think of Smalltalk doing OOP the "right way"... at least with the builtin stuff. What people add on to it might be something totally different.
06:12:48 <SevenInchBread> ...Python's logging module is a very good reminder of when OO can go to far.
06:14:23 <SevenInchBread> it has Loggers, Handlers, LogRecords, and Formatters,
06:14:35 <Sukoshi> That's pretty much what Java is.e
06:14:37 <Sukoshi> *is.
06:14:39 <SevenInchBread> ...an entire class for log format info.
06:14:49 <bsmntbombdood> SevenInchBread: that module's pretty bad
06:14:56 <SevenInchBread> ...when it just stores a single string.
06:15:48 <SevenInchBread> when I first saw the logging module it permanently tied a little ribbon around me... reminding me of how horrible OO can get.
06:15:55 <SevenInchBread> ...never forget.
06:16:47 <SevenInchBread> oh wait... there's also Filters, the Manager.
06:16:52 <SevenInchBread> *and
06:17:46 <SevenInchBread> http://groups.google.com/group/AbraSophia/
06:18:41 -!- calamari has joined.
06:24:12 <bsmntbombdood> nice, dynamic loading
06:42:39 -!- oerjan has quit ("Gsvensk").
06:52:26 -!- SevenInchBread has quit (Read error: 145 (Connection timed out)).
07:20:40 -!- calamari has quit ("Leaving").
07:22:48 -!- Pikhq has quit (Read error: 110 (Connection timed out)).
07:36:56 <bsmntbombdood> necisito projectos buenos
07:37:38 <lament> 'proyectos'
07:37:41 <lament> 'necesito'
07:38:05 <bsmntbombdood> ...right
07:44:13 <lament> :)
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:13:53 -!- maverickbna has joined.
08:14:15 -!- maverickbna has quit (Client Quit).
08:20:36 -!- ShadowHntr has quit (Read error: 145 (Connection timed out)).
09:39:44 -!- sebbu has joined.
10:42:30 -!- Sgeo has quit ("Ex-Chat").
13:43:08 -!- Pikhq has joined.
14:31:54 -!- ihope has joined.
14:35:14 <ihope> Well, that's certainly one way to do it.
14:46:54 <ihope> And it's certainly not a bad way, either.
14:54:08 -!- Pikhq has quit (Read error: 60 (Operation timed out)).
14:54:52 -!- Pikhq has joined.
15:23:28 * ihope ponders system calls and services
15:26:51 -!- ihope_ has joined.
15:34:48 -!- ihope has quit (Read error: 60 (Operation timed out)).
15:35:24 -!- ihope_ has changed nick to ihope.
15:38:04 -!- oklopol has joined.
16:12:49 -!- jix__ has joined.
16:13:18 -!- jix__ has changed nick to jix.
16:52:09 -!- Sgeo has joined.
16:53:46 -!- ihope has quit (SendQ exceeded).
16:54:05 -!- ais523 has joined.
16:54:18 -!- ihope_ has joined.
16:54:27 -!- ihope_ has changed nick to ihope.
16:57:19 * ais523 is now known as ais523
16:57:33 <ais523> I was wondering if it would let me type that without distinguishing it in some way
16:57:48 <ais523> but of course, it shows up styled differently anyway
16:58:08 <ihope> Yeah, /me generally shows up differently.
16:59:28 <ais523> by the way, what's been happening to the esoteric OS idea that's been popping up in the logs now and again
16:59:33 <ais523> s/$/\?/
17:00:14 <ais523> (I'm having Internet access problems at the moment, so can't come online as often as I'd like and have resorted to logreading (which I do anyway))
17:01:50 <ihope> ais523: well, nobody seems to have decided on an esoteric platform.
17:02:22 <ais523> In the C-INTERCAL distribution there were notes about making a microprocessor that ran INTERCAL natively
17:02:29 <ais523> although I don't think anyone ever managed that
17:29:02 -!- puzzlet has quit (Remote closed the connection).
18:09:04 -!- jix has quit ("This computer has gone to sleep").
18:51:12 -!- jix__ has joined.
18:54:15 -!- jix__ has quit (Client Quit).
18:55:17 -!- meatmanek has quit (Connection timed out).
18:56:52 -!- ais523 has quit.
19:15:24 -!- nazgjunk has joined.
19:43:09 -!- atrapado has joined.
19:46:23 -!- meatmanek has joined.
20:22:29 -!- helios24 has quit (Read error: 104 (Connection reset by peer)).
20:22:40 -!- helios24 has joined.
20:27:52 -!- nazgjunk has quit (Read error: 54 (Connection reset by peer)).
20:31:02 -!- nazgjunk has joined.
21:02:25 -!- sebbu2 has joined.
21:05:32 -!- helios24 has quit (Remote closed the connection).
21:06:15 -!- helios24 has joined.
21:08:19 -!- helios24 has quit (Remote closed the connection).
21:09:09 -!- helios24 has joined.
21:09:30 -!- sebbu has quit (Read error: 60 (Operation timed out)).
21:16:20 -!- jix__ has joined.
21:17:09 -!- ShadowHntr has joined.
21:20:36 -!- jix_____ has joined.
21:20:48 -!- jix_____ has changed nick to jix.
21:21:31 -!- sebbu2 has changed nick to sebbu.
21:30:43 -!- nazgjunk has quit (Read error: 54 (Connection reset by peer)).
21:33:52 -!- jix__ has quit (Read error: 110 (Connection timed out)).
21:39:21 -!- nazgjunk has joined.
22:10:20 -!- oerjan has joined.
22:20:59 -!- maverickbna has joined.
22:21:50 -!- ShadowHntr has quit (Nick collision from services.).
22:27:08 -!- maverickbna has changed nick to ShadowHntr.
22:48:15 <bsmntbombdood> ObjC looks fantastic
22:48:58 <Sgeo> ObjC?
22:49:03 <GregorR> Objective C.
22:49:21 <GregorR> Apple's C-acting-like-smalltalk.
22:56:40 <lament> it's not apple's
22:58:40 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
23:04:29 <bsmntbombdood> the synchronization code is nice
23:04:48 <bsmntbombdood> any object can be a semaphore
23:06:45 -!- atrapado has quit ("pinj timeout").
23:08:27 <bsmntbombdood> @synchronized(someobject){ code that uses someobject}
23:11:05 -!- nazgjunk has quit ("sick >.<").
23:13:53 <GregorR> lament: I was under the impression that Objective C was designed by Apple ... at the very least, Apple <3 ObjC
23:14:54 <lament> as i understand, they use a weird mixture of C, C++ and ObjC these days, and it's quite horrible.
23:27:44 -!- SevenInchBread has joined.
23:30:23 <SevenInchBread> ihope, hmmm...
23:30:32 <SevenInchBread> I'm not sure I understand the difference between a service and a process.
23:32:47 <oerjan> in principle several processes could handle the same service, and vice versa.
23:33:27 <SevenInchBread> How would that work?
23:33:48 <oerjan> a service is what the client sees. a process is a way of implementing various tasks, including services.
23:34:14 <SevenInchBread> ah.
23:37:30 <SevenInchBread> how would the service know which process to delegate the task to?
23:37:38 <SevenInchBread> I've always thought of it as a one-to-one kind of mapping.
23:39:14 <oerjan> well in practice there may usually be a single process handling the initial connection, unless it is truly distributed.
23:39:52 <SevenInchBread> -nod- that makes sense.
23:40:10 * SevenInchBread wants to do for processes what UNIX did with files.
23:41:05 <oklopol> everything is a ...?
23:41:28 <SevenInchBread> no no... I mean... give processes a hierarchy and refer to them by name.
23:41:49 <SevenInchBread> using numbers to refer to processes just doesn't sound... very useful.
23:42:08 <GregorR> rm -f /proc/init
23:42:11 <GregorR> *boom
23:42:12 <oerjan> named pipes exist and are slightly similar.
23:42:12 <GregorR> *
23:43:39 <oerjan> essentially processes attached to the filesystem, with reading/writing going to the process stdin/out
23:44:16 <SevenInchBread> It's very secondary though.
23:45:20 <SevenInchBread> In Windows parlance, a service is something like a daemon in unix.
23:48:32 <oerjan> it sounds like something unixes can probably already do, although they aren't optimized for it.
23:49:14 <SevenInchBread> I imagine it could
23:49:33 <oerjan> symbolic links to /proc, maybe
23:50:12 * oerjan is not versed in the details of this.
23:50:45 <SevenInchBread> it would be harder to map out processes in a directory structure based on childness.
23:52:29 <oerjan> for a more fundamental approach, i guess forks/execs should take a filename argument to place each process.
23:54:47 <oerjan> and persistence would be a natural part of this.
23:57:44 <ihope> A service here is an interface provided by a process.
23:58:14 <ihope> A process can register a service, then other processes can request them.
←2007-04-07 2007-04-08 2007-04-09→ ↑2007 ↑all