Simple is as simple does (JEP draft 8323335)

David Alayachew davidalayachew at gmail.com
Wed Feb 21 19:20:05 UTC 2024


👍

David reacted via Gmail
<https://www.google.com/gmail/about/?utm_source=gmail-in-product&utm_medium=et&utm_campaign=emojireactionemail#app>

On Wed, Feb 21, 2024, 9:41 AM Brian Goetz <brian.goetz at oracle.com> wrote:

> Agree this is a better name.
>
> As to the "bucket of what" question, we had a very deliberate target in
> mind: we did *not* want this to become the catch-all "statically imported"
> bucket (which would rapidly become an attractive nuisance), so we chose a
> targeted name to make it clear that this was about a narrow set of things
> that are useful to the specific situation of IO from simple programs.
>
> SystemIO is the best suggestion thus far. If you ever do add anything to
> this class, you don't tie yourself down to the beginner-like name. If one
> day a useful primitive comes to light that is not so Simple, this class
> might still be the best place to put it. Really, this class is at it's best
> when it's a bucket of useful primitives, especially ones that complement
> each other. Not opening the can of worms for "what", as we've gone fairly
> off topic from the original threads intent.
>
> On Wed, Feb 21, 2024, 3:47 AM Stephen Colebourne <scolebourne at joda.org>
> wrote:
>
>> I do agree that "Simple" isn't the best prefix here, and "Basic" is a
>> bit better,
>>
>> But I personally prefer SystemIO, as it
>> (a) links the concept to the existing System class, which they will
>> likely see or have seen by Googling
>> (b) introduces the concept of the "system" that the code is running on
>>
>> ie. I think "System" is a better on-ramp name as it actually leads to
>> the "real thing"
>>
>> Yours bikeshedderly,
>> Stephen
>>
>>
>> On Tue, 20 Feb 2024 at 21:01, Brian Goetz <brian.goetz at oracle.com> wrote:
>> >
>> > I was all ready to dismiss this as just bikeshedding, but your clever
>> up-front disclaimer convinced me to hang with you :)
>> >
>> > I think what you are saying here is that we've set a trap for ourselves
>> by claiming the word "simple", which, as we've seen, is subject to
>> "everyone interprets it in a way to support their own preference."  Fair
>> point; naming matters, especially when setting direction.
>> >
>> > I am not as optimistic as you that if we called this "BasicIO", whether
>> we wouldn't get the same arguments, but your point is taken: the goal here
>> is not simplicity, it is about putting in place some very basic IO
>> primitives which can be built upon, which do not depend on either other
>> library abstractions (Scanner, Console, StringTokenizer), which are
>> reasonably symmetric with respect to input and output, and which do not
>> require explanation of static fields in order to use for the first time.
>> >
>> > These characteristics serve both students and "scripts", in that they
>> address the most basic console IO needs without ancillary abstractions.
>> >
>> >
>> >
>> > On 2/20/2024 12:39 PM, Eirik Bjørsnøs wrote:
>> >
>> > Hi,
>> >
>> > I acknowledge the following is easy to dismiss as just bikeshedding,
>> but please hang with me:
>> >
>> > Is labeling something as "simple" an effective naming practice,
>> especially in a pedagogical context like we are faced with in this JEP?
>> >
>> >> simple: adjective
>> >> 1. easily understood or done; presenting no difficulty.
>> >> "a simple solution"
>> >
>> >
>> > First, let me be bold and claim that nothing in programming is "easily
>> understood or done; presenting no difficulty". Anyone claiming so has
>> clearly lost empathy with the beginning learner! ;-)
>> >
>> > Second, the lable "simple" suggest something about the things not
>> fitting into the "simple" bucket. If not simple, what are those things?
>> Difficult?
>> >
>> > Third, "easily understood" very much depends on who is trying to
>> understand. It may change over time as the learner gains understanding and
>> experience. Simple to Alice might not be simple to Bob.
>> >
>> > ...
>> >
>> > As any complainer, I'm also too lazy to do the work to find a better
>> alternative. But perhaps "basic" could be a starting point:
>> >
>> >> basic: adjective
>> >> 1. forming an essential foundation or starting point; fundamental.
>> >
>> >
>> > This seems more stable to time, context and experience. Something
>> fundamental can be trusted to stay fundamental for a while.
>> >
>> > Thanks (any sorry!),
>> > Eirik.
>> >
>> >
>> >
>>
>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/vnd.google.email-reaction+json
Size: 37 bytes
Desc: not available
URL: <https://mail.openjdk.org/pipermail/amber-dev/attachments/20240221/40d001c3/attachment-0001.bin>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/amber-dev/attachments/20240221/40d001c3/attachment-0001.htm>


More information about the amber-dev mailing list