Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #19318

Re: Assigning void

From Jeff Higgins <jeff@invalid.invalid>
Newsgroups comp.lang.java.programmer
Subject Re: Assigning void
Date 2012-10-13 20:25 -0400
Organization A noiseless patient Spider
Message-ID <k5d0ee$7pv$1@dont-email.me> (permalink)
References <mn.655e7dca256cdfb1.70216@a.com> <k5c2q6$hio$1@dont-email.me> <ad6ec7c9-9609-497b-b4e4-d8e912a31b8e@googlegroups.com> <k5cum8$uut$1@dont-email.me>

Show all headers | View raw


On 10/13/2012 07:55 PM, Jeff Higgins wrote:
> On 10/13/2012 03:38 PM, Lew wrote:
>> Jeff Higgins wrote:
>>> Others have pointed you to the specification.
>>> I don't know why it can't be a shorthand if-then-else statement too.
>
> I suppose that would have been better phrased as:
> " ... why it couldn't be ...".
> But then I might be accused of trolling
> by way of an unanswerable question.
>
>>
>> Whether it could have been, the history of the ternary ?: operator has
>> been
>> solely as an expression,
>
> I guess I'll have to trust you here.
> I haven't attempted to trace the history.
>
>> although this is muddied in languages that permit
>> standalone expressions.
>
> I think you begin to muddy the question here.
> I haven't asked why not permit standalone expressions.
> Only why boolean expression ? block : block ;
> could not stand in for an if-then-else statement.
> I understand that it *cannot* because of the specification.
>
>>
>> Java chose to prohibit standalone expressions. Having ?: work as a
>> statement
>>
>> x ? 3 : 4;
>>
>> is no better or worse than would any other expression
>>
>> 3 + 4;
>>
>> Java banned the latter, perforce the former.
>>
>> You asked why. The reason is consistency. Why shouldn't expressions work
>> as standalone statements generally, as in C?
>
> See above.
>
>> I guess it's to do with the
>> philosophy that side effects by themselves are not imperatives.
>
> I don't understand. If a program statement changes
> the state of the program then it is an imperative statement?

Ah, Ok. I had to go back an look up side effect.
In my new language :
boolean expression ? block : block ;
is simply an if-then-else statement
not an assignment expression so no *side* effect
is possible only an effect.

>
>>
>> In any event, to make the ternary ?: a "shorthand if-then-else statement"
>> requires we make every expression a statement.
>
> I don't see it.
>
>> Is that a good idea?
>>
>> As it's oppositional to the core ontology of Java, it'll never happen.
>
> I agree it will likely not happen.
> Not sure about the other.
>
>>
>> Now that you know why,
>
> ?;
>
>> the debate is open as to whether the reason is
>> compelling.
>>
> Yep.
>

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Assigning void Wojtek <nowhere@a.com> - 2012-10-12 22:54 -0700
  Re: Assigning void Lew <lewbloch@gmail.com> - 2012-10-12 23:27 -0700
    Re: Assigning void Wojtek <nowhere@a.com> - 2012-10-13 12:35 -0700
  Re: Assigning void Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-10-13 09:26 -0400
  Re: Assigning void Donkey Hottie <donkey@fredriksson.dy.fi> - 2012-10-13 17:06 +0300
    Re: Assigning void Jeff Higgins <jeff@invalid.invalid> - 2012-10-13 10:34 -0400
    Re: Assigning void Wanja Gayk <brixomatic@yahoo.com> - 2012-10-13 22:33 +0200
      Re: Assigning void Jeff Higgins <jeff@invalid.invalid> - 2012-10-13 17:34 -0400
      Re: Assigning void Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-10-13 17:45 -0400
        Re: Assigning void Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-10-13 21:35 -0400
        Re: Assigning void Wanja Gayk <brixomatic@yahoo.com> - 2012-10-16 00:16 +0200
  Re: Assigning void Jeff Higgins <jeff@invalid.invalid> - 2012-10-13 11:59 -0400
    Re: Assigning void glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2012-10-13 17:05 +0000
      Re: Assigning void Jeff Higgins <jeff@invalid.invalid> - 2012-10-13 14:26 -0400
        Re: Assigning void markspace <-@.> - 2012-10-13 11:51 -0700
          Re: Assigning void Jeff Higgins <jeff@invalid.invalid> - 2012-10-13 15:08 -0400
          Re: Assigning void Wojtek <nowhere@a.com> - 2012-10-13 12:28 -0700
            Re: Assigning void markspace <-@.> - 2012-10-13 12:42 -0700
              Re: Assigning void Lew <lewbloch@gmail.com> - 2012-10-13 12:54 -0700
                OT - Trolling Wojtek <nowhere@a.com> - 2012-10-13 14:16 -0700
                Re: OT - Trolling Jeff Higgins <jeff@invalid.invalid> - 2012-10-13 18:09 -0400
                Re: OT - Trolling Gene Wirchenko <genew@ocis.net> - 2012-10-14 18:47 -0700
              Re: Assigning void Martin Gregorie <martin@address-in-sig.invalid> - 2012-10-13 20:28 +0000
              Re: Assigning void Wojtek <nowhere@a.com> - 2012-10-13 13:31 -0700
                Re: Assigning void Joerg Meier <joergmmeier@arcor.de> - 2012-10-20 18:00 +0200
                Re: Assigning void Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-10-20 09:56 -0700
                Re: Assigning void "Peter J. Holzer" <hjp-usenet2@hjp.at> - 2012-10-21 13:24 +0200
                Re: Assigning void Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-10-21 10:23 -0700
                Re: Assigning void "Peter J. Holzer" <hjp-usenet2@hjp.at> - 2012-10-22 00:13 +0200
                Re: Assigning void Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-10-21 16:25 -0700
                Re: Assigning void "Peter J. Holzer" <hjp-usenet2@hjp.at> - 2012-10-22 08:43 +0200
                Re: Assigning void "Peter J. Holzer" <hjp-usenet2@hjp.at> - 2012-10-22 10:18 +0200
                Re: Assigning void Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-10-22 08:14 -0700
                Re: Assigning void glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2012-10-21 19:45 +0000
                Re: Assigning void "Peter J. Holzer" <hjp-usenet2@hjp.at> - 2012-10-22 00:14 +0200
            Re: Assigning void Lew <lewbloch@gmail.com> - 2012-10-13 12:44 -0700
              Re: Assigning void Jukka Lahtinen <jtfjdehf@hotmail.com.invalid> - 2012-10-15 14:38 +0300
                Re: Assigning void Lew <lewbloch@gmail.com> - 2012-10-15 09:11 -0700
        Re: Assigning void Jeff Higgins <jeff@invalid.invalid> - 2012-10-13 15:03 -0400
          Re: Assigning void glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2012-10-13 20:21 +0000
    Re: Assigning void Lew <lewbloch@gmail.com> - 2012-10-13 12:38 -0700
      Re: Assigning void markspace <-@.> - 2012-10-13 12:49 -0700
        Re: Assigning void Lew <lewbloch@gmail.com> - 2012-10-13 13:03 -0700
          Re: Assigning void Robert Klemme <shortcutter@googlemail.com> - 2012-10-14 14:09 +0200
            Re: Assigning void Lew <lewbloch@gmail.com> - 2012-10-14 11:31 -0700
      Re: Assigning void Jeff Higgins <jeff@invalid.invalid> - 2012-10-13 19:55 -0400
        Re: Assigning void Jeff Higgins <jeff@invalid.invalid> - 2012-10-13 20:25 -0400
          Re: Assigning void Jeff Higgins <jeff@invalid.invalid> - 2012-10-13 21:01 -0400
            Re: Assigning void Gene Wirchenko <genew@ocis.net> - 2012-10-14 18:42 -0700
  Re: Assigning void Roedy Green <see_website@mindprod.com.invalid> - 2012-10-14 00:51 -0700
  Re: Assigning void Jeff Higgins <jeff@invalid.invalid> - 2012-10-14 10:40 -0400
  Re: Assigning void Sven Köhler <remove-sven.koehler@gmail.com> - 2012-10-21 01:24 +0200
    Re: Assigning void Wojtek <nowhere@a.com> - 2012-10-21 14:52 -0700
      Re: Assigning void Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-10-21 20:13 -0400
        Re: Assigning void Wojtek <nowhere@a.com> - 2012-10-21 20:20 -0700
          Re: Assigning void Sven Köhler <remove-sven.koehler@gmail.com> - 2012-10-22 11:12 +0200
        Re: Assigning void Wanja Gayk <brixomatic@yahoo.com> - 2012-10-24 22:03 +0200
          Re: Assigning void Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-10-24 17:47 -0400
            Re: Assigning void Wanja Gayk <brixomatic@yahoo.com> - 2012-10-25 01:02 +0200
              Re: Assigning void Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-10-24 20:21 -0400
                Re: Assigning void Martin Gregorie <martin@address-in-sig.invalid> - 2012-10-25 20:04 +0000
                (OT) Re: Assigning void Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-10-25 16:31 -0400
                Re: (OT) Re: Assigning void Martin Gregorie <martin@address-in-sig.invalid> - 2012-10-25 20:44 +0000
            Re: Assigning void Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-10-25 07:25 -0300
              Re: Assigning void Lew <lewbloch@gmail.com> - 2012-10-25 11:12 -0700
      Re: Assigning void Sven Köhler <remove-sven.koehler@gmail.com> - 2012-10-22 11:01 +0200
      Re: Assigning void Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2012-10-23 00:38 +0200

csiph-web