Some thoughts about MOOSE

ANDREASA@dhhalden.no ANDREASA@dhhalden.no
23 Feb 93 13:39:36 +0100


There has been some discussion of the device, it's definition and how it
should work. I have already made a posting mainly regarding this in the
MUSIC thread.

I belive the OS should be made convenient for the programmer to work with.
There shouldn't be a large overhead to launch a small program, as in Windows.
It should be transparent for the programmer what environment he works with.
I.e. if he makes a UNIX program using ansi c, the program should be easliy
ported to Moose without any major changes.
It should be transparent that moose is eventdriven/message driven. And here
comes the part that I'd like to see implemented into Moose (not by myself:-).

What are the standard input devices:
 - Keyboard
 - Mouse
 - Com-port
 - Parallell-port
 - Networking (as I see it, Moose should support networking)
 - Any other??

Someone maybe would prefere to put some of the inputdevices into one device-
driver. How we should do this, I'll let others more competent to decide.
Take the keyboard. It is almost always used so it is a good example.
Say there are five tasks running. Two of them wants to scan the inputdevice
constantly, the application that has got input-focus and a screen saver.
In an eventdriven system, an application will wait for a message. If this
is a keyboard message it will branch over to a keyboard handling routine.
This is quite cumbersome for the programmer to do, that is my opinion anyway.

To make the scenario working the keyb. device must have some sort of list
to what tasks should get the message. Then it puts the message into the
message que to the application that has requested input.

If we make the system 100% OO, we could get around this smoothly.
The device still has a list, but not to event-ques but to an object.
The object that has requested input.
If we look at the application as a set of objects, there will be a main-
object, a window object etc. All these objects has inherited an input object.
An objects input part is activated whenever the user uses the keyboard.
The device tells the object what the input was.
Take a screen with two or more input-fields. If each input-field is an object
only the activated input-field gets the input.

I belive all input-devices could work in a similar fashion.

Any comments. Is it possible to do. I think if we could, there would be no
limit to the potential success of MOOSE among programmers, and that is the
door to go if we would like to see it used worldwide :-)

Arff
sig.'s in for 1000 miles service
        --Andreas Arff          andreasa@dhhalden.no--