UI review: jshell commands
Paul Sandoz
paul.sandoz at oracle.com
Wed Jul 1 15:37:08 UTC 2015
On Jun 30, 2015, at 2:02 AM, Brian Goetz <brian.goetz at Oracle.COM> wrote:
> Now that you have whacked us over the head with "hey, you guys are looking in the wrong direction", I tend to agree. In fact, that the elements of /list show up starting with 9 is also weird.
>
Yes, and it's not constant.
> So, how about reflecting this more directly; have the "startup IDs" start at something like auto.1 or startup.1, and then flip over to 1 when we finish with startup. Then /list would start with 1; /list all would look like:
>
> auto.1: import ...
> auto.2: import
> 1: 1 + 1
>
I like that approach.
Paul.
> The only important reason that we even need an ID for the startup entries is so we can /drop it. Having an ID of the form "auto.1" works fine for that. There's no reason ID has to be an int, is there?
>
>> Otherwise, the intermediate results of the startup file should be
>> dropped. Or at least they should not interfere with the auto-generated
>> names for interactive results.
>>
>> Two compromises possible on that:
>>
>> 1. If for some reason we must, auto-generate a different set of names
>> for the startup file, starting with $_ (think, "negative") or $0:
>>
>> 1+1;
>> $1 = 2;
>> $_1; // host id from startup, etc.
>>
>> 2. If you buy my argument that auto-generated things are usually
>> useless, have an opt-in argument for those special times when you need
>> auto-numbering of the file. Replaying a previous interactive input is
>> really a different use case from reusing a common profile.
>>
>> Such a special time would be replaying scripts, but I can't think of any
>> other. Perhaps that is envisioned as the default. In that case, we
>> should be sure that it in the *other default*, when pulling from a
>> startup file like ~/.kullarc, it should be easy to suppress the creation
>> of $N variables.
>>
>> — John
More information about the kulla-dev
mailing list