Subject: SDL-News: RE: News: Create Request
From: Sergio Lopes (Sergio.Lopes#dei.uminho.pt)
Date: Tue Aug 11 1998 - 14:18:43 GMT
The originator of this message is responsible for its content.
-----From Sergio Lopes <Sergio.Lopes#dei.uminho.pt> to sdlnews  -----
Dear SDL users,
I'm still a beginner in SDL, I like the language (although I think its
use should be made more open) and I feel the need for two improvements:
The first concerns PROCEDURE. Every time I choose a names for a
procedure's argument I end up repeating the name of another variable
outside the procedure. Sometimes it becomes difficult to get
appropriated names. I don't know how you feel about this and my
knowledge in the field is few, but I would like to have procedure that
hide its arguments' names from the outside, that is, a procedure that
doesn't sees anything else besides its arguments.
The other issue, would in my opinion improve the object-orientation of
SDL. Christensen (bellow) already pointed limitations of the CREATE
REQUEST and I think his proposed model is indeed a very useful
improvement. I want to add that it would also be useful a CREATE REQUEST
that also accepts process type identifier (names) as arguments. With
that, CREATE X in the code of a process type X when executed in an
instance of  Y (Y process type inherits X) would created a Y child.
I would like to know what do you think of this.
Best regards,
Sergio Lopes.
> -----Original Message-----
> From:	Kjeld.F.Christensen#dxd.ericsson.se
> [SMTP:Kjeld.F.Christensen#dxd.ericsson.se]
> Sent:	Wednesday, August 05, 1998 3:43 PM
> To:	news#sdl-forum.org
> Subject:	news: Create Request
> 
> Hello everybody.
> 
> I'm really tired of the Create Request. This time I tried to create a
> new process from within the same block, but in a process type declared
> elsewhere. This of course failed.
> 
> It seems to me, that once again it is nessecary to make a static
> process
> in all blocks, which on reception of a signal starts the new process,
> and returns the PID.
> 
> This workaround has been made som many times by so many devllopers,
> that
> I think it is about time, that a standard solution is made a part of
> the
> language. The CreateRequest is simply to weak.
> 
> I have attached a model for solution in PR format to this mail. 
> 
> I still use a static process in every block
> But instead of receiving a signal in the process I export a procedure.
> Instead of using the create request I use the RPC call.
> 
> Now there was one thing which I need to do when using this. I have to
> make a forward declaration of the remote procedure which I did on the
> system level like this:
> 
>   remote procedure StartProc2; returns PID;
> 
> Now my main suggestion is, that is also should be possible to write:
> 
>   remote process Proc;
> 
> When doing so the following must happen:
>  * Create request will use the RPC model to create 
>    the request anywhere. 
>  * The static process in the block where the process is finally
>    declared in implicitly iserted.
> 
> Where the remote process declaration is made controls the scope if the
> process where it is visible.
> 
> The advantage of this model is, 
>  * No need to model any signals at all for the process 
>    creation. This is done implicitly by the RPC model 
>    described in the standard. 
>  * The create request can be routed out of the system to 
>    the environment or to specifik block if the same process
>    is found in several blocks.
>  * The declaration of the remote procedure automatically takes 
>    parameters.
> 
> Actually this model seems so easy to implement, that I would claim an
> awk script could convert almost any PR code containing a remote
> process
> declaration into the current SDL-92
> 
> As for OO considerations I one obvious thing to do would be to make
> creation of a derived process or instances of processes possible by
> requesting the base process. 
> 
> I'm looking forward to any comments on this suggestion.
> 
> --------------------------- With Regards ------------------------
>   Kjeld Flarup Christensen           |  Faelledvej 17 
>   Ericsson Diax A/S                  |  DK-7600 Struer 
>   -----------------------------------|  Phone +45 97 86 94 10
>   A small but great part of Ericsson |  Fax   +45 97 85 44 22
> 
>  << File: RPCREATE.PR >> 
-----End text from Sergio Lopes <Sergio.Lopes#dei.uminho.pt> to sdlnews -----
For help, email "majordomo#sdl-forum.org" with the body of your email as:
    help
or (iff this does not answer your question) email: owner-sdlnews#sdl-forum.org
This archive was generated by hypermail 2a23 : Sun Jun 16 2013 - 10:41:40 GMT