Re: [RFC PATCH 05/28] cli: lil: Rename some functions to be more like TCL

Sean Anderson
2021-07-08T04:47:24Z

On 7/6/21 3:50 AM, Wolfgang Denk wrote:
> Dear Sean,
>
> In message <7143cb1e-4061-3034-57b9-1a12753fa642@gmail.com> you wrote:
>>>
>>> You complain that the existing port of hus has a number of severe
>>> limitations or bugs which have long been fixed upstream,
>>
>> The bugs are fairly minor. The particular characteristics of Hush have
>> not changed. These characteristics make Hush difficult to adapt to the
>> limitations of U-Boot. When we cannot support the basic abstractions
>> expected by Hush, the shell will necessarily change for the worse.
>
> This is not true. Just have a look what hush in a recent version of
> Busybox offers.

Busybox runs in a Linux environment. Many of its features rely on the
core functionality provided by Linux, which we do not provide in U-Boot.
This is what makes porting features difficult.

>
>>> but cannot be easily fixed in U-Boot
>>
>> Because they are core to the design of Hush (and other bourne derived
>> shells).
>
> Oh, this is an interesting opinion. I doubt if a majority (or even
> a significant percentage) of U-Boot users share it. If you were
> right, there would be far less users of bash (or other "bourne
> derived shells"). Guess which percentage of users of UNIX operating
> systems is using a Tcl based command interpreter as their login
> shell?

And yet, this is not the field we compete in. While bourne-style shells
can take advantage of a multi-threaded environment, embedded shells tend
to implement a much wider set of languages. See [1] for a survey of
examples.

--Sean

[1] https://github.com/dbohdan/embedded-scripting-languages