comp.lang.ada
 help / color / mirror / Atom feed
* Version 1.0 Release of aShell
@ 2021-02-16 20:33 Rod Kay
  2021-02-16 23:09 ` Rod Kay
  0 siblings, 1 reply; 13+ messages in thread
From: Rod Kay @ 2021-02-16 20:33 UTC (permalink / raw)


A component to aid in writing shell-like applications in Ada.

https://github.com/charlie5/aShell

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Version 1.0 Release of aShell
  2021-02-16 20:33 Version 1.0 Release of aShell Rod Kay
@ 2021-02-16 23:09 ` Rod Kay
  2021-02-17  8:04   ` Niklas Holsti
                     ` (2 more replies)
  0 siblings, 3 replies; 13+ messages in thread
From: Rod Kay @ 2021-02-16 23:09 UTC (permalink / raw)


Comments, especially criticism, very welcome :) .

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Version 1.0 Release of aShell
  2021-02-16 23:09 ` Rod Kay
@ 2021-02-17  8:04   ` Niklas Holsti
  2021-02-18 11:18     ` Rod Kay
  2021-02-17 11:05   ` Jeffrey R. Carter
  2022-02-15 15:25   ` Thomas
  2 siblings, 1 reply; 13+ messages in thread
From: Niklas Holsti @ 2021-02-17  8:04 UTC (permalink / raw)


On 2021-02-17 1:09, Rod Kay wrote:
> Comments, especially criticism, very welcome :) .


I suppose I could find out by looking more deeply into the component 
(which looks nice in the README), but I'm lazy today, so I ask: do you 
have a way of capturing the standard-error stream from a process, in 
addition to the standard-output stream?

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Version 1.0 Release of aShell
  2021-02-16 23:09 ` Rod Kay
  2021-02-17  8:04   ` Niklas Holsti
@ 2021-02-17 11:05   ` Jeffrey R. Carter
  2021-02-18 11:29     ` Rod Kay
  2022-02-15 15:25   ` Thomas
  2 siblings, 1 reply; 13+ messages in thread
From: Jeffrey R. Carter @ 2021-02-17 11:05 UTC (permalink / raw)


On 2/17/21 12:09 AM, Rod Kay wrote:
> Comments, especially criticism, very welcome :) .

Is this compiler and OS independent?

-- 
Jeff Carter
"It's symbolic of his struggle against reality."
Monty Python's Life of Brian
78

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Version 1.0 Release of aShell
  2021-02-17  8:04   ` Niklas Holsti
@ 2021-02-18 11:18     ` Rod Kay
  0 siblings, 0 replies; 13+ messages in thread
From: Rod Kay @ 2021-02-18 11:18 UTC (permalink / raw)


On Wednesday, 17 February 2021 at 19:04:44 UTC+11, Niklas Holsti wrote:
> On 2021-02-17 1:09, Rod Kay wrote: 
> > Comments, especially criticism, very welcome :) .
> I suppose I could find out by looking more deeply into the component 
> (which looks nice in the README), but I'm lazy today, so I ask: do you 
> have a way of capturing the standard-error stream from a process, in 
> addition to the standard-output stream?

   With the process 'Start' subprograms, you can provide your own input/output/error pipes. If not provided they default to the standard pipes.

   function Start (Command           : in String;
                   Working_Directory : in String       := ".";
                   Input             : in Pipe         := Standard_Input;
                   Output            : in Pipe         := Standard_Output;
                   Errors            : in Pipe         := Standard_Error;
                   Pipeline          : in Boolean      := False) return Process;

   The ''Results_Of' function returns 'Command_Results' which provide access to data from both the Output_Pipe and the Error_Pipe.

   In hindsight, this is not adequate. I will review over the weekend and attempt a better solution.  

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Version 1.0 Release of aShell
  2021-02-17 11:05   ` Jeffrey R. Carter
@ 2021-02-18 11:29     ` Rod Kay
  2021-02-18 11:57       ` Jeffrey R. Carter
  2021-02-18 14:06       ` Niklas Holsti
  0 siblings, 2 replies; 13+ messages in thread
From: Rod Kay @ 2021-02-18 11:29 UTC (permalink / raw)


On Wednesday, 17 February 2021 at 22:05:19 UTC+11, Jeffrey R. Carter wrote:
> On 2/17/21 12:09 AM, Rod Kay wrote: 
> > Comments, especially criticism, very welcome :) .
> Is this compiler and OS independent? 
> 
> -- 
> Jeff Carter 
> "It's symbolic of his struggle against reality." 
> Monty Python's Life of Brian 
> 78

   Atm, the code uses Florist for 'POSIX' and one function from 'GNAT.OS_Lib'. 

   Florist appears to be gnat-specific ...

"FLORIST,  an  Ada  application  program  interface for operating system services for use with the GNAT compiler  and the  Gnu  Ada  Runtime  Library (GNARL)."

   I have no means of testing on Windows. I hope that it may be possible to use with cygwin or a similar compatibility layer.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Version 1.0 Release of aShell
  2021-02-18 11:29     ` Rod Kay
@ 2021-02-18 11:57       ` Jeffrey R. Carter
  2021-02-19  9:07         ` Rod Kay
  2021-02-18 14:06       ` Niklas Holsti
  1 sibling, 1 reply; 13+ messages in thread
From: Jeffrey R. Carter @ 2021-02-18 11:57 UTC (permalink / raw)


On 2/18/21 12:29 PM, Rod Kay wrote:
> 
>     Atm, the code uses Florist for 'POSIX' and one function from 'GNAT.OS_Lib'.
> 
>     Florist appears to be gnat-specific ...

What is the advantage over using the compiler-supplied libraries to do these things?

-- 
Jeff Carter
"I was hobbling along, minding my own business, all of a
sudden, up he comes, cures me! One minute I'm a leper with
a trade, next minute my livelihood's gone! Not so much as a
'by your leave!' You're cured, mate. Bloody do-gooder!"
Monty Python's Life of Brian
76

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Version 1.0 Release of aShell
  2021-02-18 11:29     ` Rod Kay
  2021-02-18 11:57       ` Jeffrey R. Carter
@ 2021-02-18 14:06       ` Niklas Holsti
  2021-02-20 22:58         ` mgr
  1 sibling, 1 reply; 13+ messages in thread
From: Niklas Holsti @ 2021-02-18 14:06 UTC (permalink / raw)


On 2021-02-18 13:29, Rod Kay wrote:
> On Wednesday, 17 February 2021 at 22:05:19 UTC+11, Jeffrey R. Carter wrote:
>> On 2/17/21 12:09 AM, Rod Kay wrote:
>>> Comments, especially criticism, very welcome :) .
>> Is this compiler and OS independent?
>>
>> -- 
>> Jeff Carter
>> "It's symbolic of his struggle against reality."
>> Monty Python's Life of Brian
>> 78
> 
>     Atm, the code uses Florist for 'POSIX' and one function from 'GNAT.OS_Lib'.
> 
>     Florist appears to be gnat-specific ...


Florist is an implementation of a standard for Ada-POSIX bindings, 
https://www.iso.org/standard/34354.html, so the Florist API should not 
be GNAT-specific.

However, the implementation of Florist may depend on the underlying 
system, including the Ada compiler and the OS.

Using the Florist API, rather than using GNAT libraries or OS functions 
directly, should increase the potential portability. Actual portability 
will depend on the existence of implementations, for the target system, 
  of Florist or other realizations of the standard Ada-POSIX binding.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Version 1.0 Release of aShell
  2021-02-18 11:57       ` Jeffrey R. Carter
@ 2021-02-19  9:07         ` Rod Kay
  0 siblings, 0 replies; 13+ messages in thread
From: Rod Kay @ 2021-02-19  9:07 UTC (permalink / raw)


On Thursday, 18 February 2021 at 22:57:04 UTC+11, Jeffrey R. Carter wrote:
> On 2/18/21 12:29 PM, Rod Kay wrote: 
> > 
> > Atm, the code uses Florist for 'POSIX' and one function from 'GNAT.OS_Lib'. 
> > 
> > Florist appears to be gnat-specific ...
> What is the advantage over using the compiler-supplied libraries to do these things? 
> 

Ability to provide input data.
Ability to provide input/output/error pipes.
Ability to pipeline processes.
Several convenience functions to simplify the above.
Potential for increased portability.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Version 1.0 Release of aShell
  2021-02-18 14:06       ` Niklas Holsti
@ 2021-02-20 22:58         ` mgr
  2021-02-22 15:56           ` Rod Kay
  0 siblings, 1 reply; 13+ messages in thread
From: mgr @ 2021-02-20 22:58 UTC (permalink / raw)


Am 18/2/21 um 15:06 schrieb Niklas Holsti:
>>     Florist appears to be gnat-specific ...
> 
> 
> Florist is an implementation of a standard for Ada-POSIX bindings, 
> https://www.iso.org/standard/34354.html, so the Florist API should not 
> be GNAT-specific.
> 
> However, the implementation of Florist may depend on the underlying 
> system, including the Ada compiler and the OS.
> 
> Using the Florist API, rather than using GNAT libraries or OS functions 
> directly, should increase the potential portability. Actual portability 
> will depend on the existence of implementations, for the target system, 
>   of Florist or other realizations of the standard Ada-POSIX binding.

Some time ago, I gathered some information about compilers providing 
support of the Ada-POSIX standard for this Wikibooks article.

https://en.wikibooks.org/wiki/Ada_Programming/Platform/POSIX

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Version 1.0 Release of aShell
  2021-02-20 22:58         ` mgr
@ 2021-02-22 15:56           ` Rod Kay
  0 siblings, 0 replies; 13+ messages in thread
From: Rod Kay @ 2021-02-22 15:56 UTC (permalink / raw)


On Sunday, 21 February 2021 at 09:58:42 UTC+11, Manuel Gomez wrote:
> Am 18/2/21 um 15:06 schrieb Niklas Holsti:
> Some time ago, I gathered some information about compilers providing 
> support of the Ada-POSIX standard for this Wikibooks article. 
> 
> https://en.wikibooks.org/wiki/Ada_Programming/Platform/POSIX

Thank you for this info. Most encouraging.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Version 1.0 Release of aShell
  2021-02-16 23:09 ` Rod Kay
  2021-02-17  8:04   ` Niklas Holsti
  2021-02-17 11:05   ` Jeffrey R. Carter
@ 2022-02-15 15:25   ` Thomas
  2022-02-17 13:45     ` Rod Kay
  2 siblings, 1 reply; 13+ messages in thread
From: Thomas @ 2022-02-15 15:25 UTC (permalink / raw)


In article <9ad30173-c56b-4889-b2be-6caab9fd9216n@googlegroups.com>,
 Rod Kay <rodakay5@gmail.com> wrote:

> Comments, especially criticism, very welcome :) .

any rapprochement with HAC?

-- 
RAPID maintainer
http://savannah.nongnu.org/projects/rapid/

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Version 1.0 Release of aShell
  2022-02-15 15:25   ` Thomas
@ 2022-02-17 13:45     ` Rod Kay
  0 siblings, 0 replies; 13+ messages in thread
From: Rod Kay @ 2022-02-17 13:45 UTC (permalink / raw)


On 16/2/22 02:25, Thomas wrote:
> In article <9ad30173-c56b-4889-b2be-6caab9fd9216n@googlegroups.com>,
>   Rod Kay <rodakay5@gmail.com> wrote:
> 
>> Comments, especially criticism, very welcome :) .
> 
> any rapprochement with HAC?
> 

    An interesting idea. No support for HAC atm. I'm currently in the 
middle of improving support for task safe OS commands. Once done, I'll 
look into HAC support, probably via polyorb, of which I am quite fond.

Regards.

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2022-02-17 13:45 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-16 20:33 Version 1.0 Release of aShell Rod Kay
2021-02-16 23:09 ` Rod Kay
2021-02-17  8:04   ` Niklas Holsti
2021-02-18 11:18     ` Rod Kay
2021-02-17 11:05   ` Jeffrey R. Carter
2021-02-18 11:29     ` Rod Kay
2021-02-18 11:57       ` Jeffrey R. Carter
2021-02-19  9:07         ` Rod Kay
2021-02-18 14:06       ` Niklas Holsti
2021-02-20 22:58         ` mgr
2021-02-22 15:56           ` Rod Kay
2022-02-15 15:25   ` Thomas
2022-02-17 13:45     ` Rod Kay

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox