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


Groups > comp.lang.java.programmer > #7405 > unrolled thread

Style Police (a rant)

Started byEric Sosman <esosman@ieee-dot-org.invalid>
First post2011-08-26 20:56 -0400
Last post2011-08-31 00:31 +0200
Articles 20 on this page of 182 — 33 participants

Back to article view | Back to comp.lang.java.programmer


Contents

  Style Police (a rant) Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-08-26 20:56 -0400
    Re: Style Police (a rant) Robert Klemme <shortcutter@googlemail.com> - 2011-08-27 09:58 +0200
    Re: Style Police (a rant) Rajiv Gupta <rajiv@invalid.com> - 2011-08-27 18:02 +1000
      Re: Style Police (a rant) v_borchert@despammed.com (Volker Borchert) - 2011-08-27 08:40 +0000
    Re: Style Police (a rant) Jan Burse <janburse@fastmail.fm> - 2011-08-27 13:27 +0200
      Re: Style Police (a rant) Jan Burse <janburse@fastmail.fm> - 2011-08-27 13:33 +0200
        Re: Style Police (a rant) Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-08-27 11:08 -0400
        Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-27 08:34 -0700
          Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-27 08:37 -0700
          Re: Style Police (a rant) Jan Burse <janburse@fastmail.fm> - 2011-08-27 17:59 +0200
            Re: Style Police (a rant) Jan Burse <janburse@fastmail.fm> - 2011-08-27 18:06 +0200
              Re: Style Police (a rant) Jan Burse <janburse@fastmail.fm> - 2011-08-27 18:08 +0200
              Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-27 09:50 -0700
                Re: Style Police (a rant) Jan Burse <janburse@fastmail.fm> - 2011-08-27 19:15 +0200
                  Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-27 13:09 -0700
                    Re: Style Police (a rant) Jan Burse <janburse@fastmail.fm> - 2011-08-27 23:18 +0200
                      Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-27 16:10 -0700
                        Re: Style Police (a rant) Jan Burse <janburse@fastmail.fm> - 2011-08-28 01:59 +0200
                          Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-27 18:59 -0700
                            Re: Style Police (a rant) Jan Burse <janburse@fastmail.fm> - 2011-08-28 15:32 +0200
                              Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-28 13:09 -0700
                                Re: Style Police (a rant) Jan Burse <janburse@fastmail.fm> - 2011-08-29 04:02 +0200
                                  Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-28 19:20 -0700
                                    Re: Style Police (a rant) Jan Burse <janburse@fastmail.fm> - 2011-08-29 09:44 +0200
                                      Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-29 08:30 -0700
                                        Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-08-29 16:37 +0000
                                          Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-29 12:10 -0700
                                      Re: Style Police (a rant) Robert Klemme <shortcutter@googlemail.com> - 2011-08-29 18:21 +0200
                                Re: Style Police (a rant) Jan Burse <janburse@fastmail.fm> - 2011-08-29 04:06 +0200
      Re: Style Police (a rant) Wanja Gayk <brixomatic@yahoo.com> - 2011-09-10 06:45 +0200
        Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-10 11:40 +0000
          Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-09-10 14:06 -0700
            Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-11 14:07 +0000
              Re: Style Police (a rant) Arne Vajhøj <arne@vajhoej.dk> - 2011-09-11 10:55 -0400
                Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-11 23:34 +0000
              Re: Style Police (a rant) Arne Vajhøj <arne@vajhoej.dk> - 2011-09-11 10:58 -0400
                Re: Style Police (a rant) Patricia Shanahan <pats@acm.org> - 2011-09-11 10:12 -0700
                Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-14 12:22 +0000
                Re: Style Police (a rant) Bent C Dalager <bcd@pvv.ntnu.no> - 2011-09-14 15:04 +0000
                  Re: Style Police (a rant) Paul Cager <paul.cager@googlemail.com> - 2011-09-14 09:36 -0700
              Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-09-11 09:47 -0700
                Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-11 23:32 +0000
                  Re: Style Police (a rant) Wanja Gayk <brixomatic@yahoo.com> - 2011-09-17 00:57 +0200
                    Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-17 19:56 +0000
              Re: Style Police (a rant) Wanja Gayk <brixomatic@yahoo.com> - 2011-09-11 21:20 +0200
                Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-11 17:11 -0400
                  Re: Style Police (a rant) Wanja Gayk <brixomatic@yahoo.com> - 2011-09-12 01:22 +0200
                    Re: Style Police (a rant) Arne Vajhøj <arne@vajhoej.dk> - 2011-09-11 21:13 -0400
                  Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-09-11 16:54 -0700
                    Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-11 23:42 -0400
                      Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-09-12 21:54 -0700
                        Re: Style Police (a rant) "Cthun" <cthun_117@qmail.net.au> - 2011-09-13 07:18 -0400
                          Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-13 10:07 -0400
                            Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-09-13 08:15 -0700
                              Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-13 12:00 -0400
                        Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-13 10:10 -0400
                          Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-09-13 09:55 -0700
                            Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-15 10:37 -0400
                              Re: Style Police (a rant) "Cthun" <cthun_9112011@qmail.net.au> - 2011-09-15 22:58 -0400
                                Murphy = Troll [DO NOT FEED] thoolen <th00len@th0lenbot.thorium> - 2011-09-16 00:23 -0400
                              Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-09-16 03:26 -0700
                                Re: Style Police (a rant) un-Bent <dob@dib.dib.null> - 2011-09-16 13:02 +0000
                                  Murphy = Troll [DO NOT FEED] thoolen <th00len@th0lenbot.thorium> - 2011-09-16 22:40 -0400
                                Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-17 19:36 -0400
                                  Re: Style Police (a rant) "kaffel'latte" <jiggingjava@qmail.net> - 2011-09-19 08:58 -0400
                                    Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-09-19 11:56 -0400
                                      Re: Style Police (a rant) "kaffel'latte" <jiggingjava@qmail.net> - 2011-09-19 17:05 -0400
                                        Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-09-19 19:13 -0400
                                          Re: Style Police (a rant) k00k Derbyshire spins freely "kaffel'latte" <jiggingjava@qmail.net> - 2011-09-19 20:45 -0400
                                            Re: Style Police (a rant) k00k Derbyshire spins freely thoolen <th00len@th0lenbot.thorium> - 2011-09-21 18:37 -0400
                                  Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-09-26 15:13 -0700
                                    Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-26 19:34 -0400
                                      Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-10-01 06:49 -0700
                                        Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-10-01 09:21 -0700
                                          Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-10-01 14:17 -0400
                                            Re: Style Police (a rant) Wanja Gayk <brixomatic@yahoo.com> - 2011-10-01 20:53 +0200
                                              Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-10-01 21:12 -0400
                                          Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-10-05 06:17 -0700
                    Re: Style Police (a rant) "Cthun" <cthun_117@qmail.net.au> - 2011-09-12 04:56 -0400
                      Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-12 05:12 -0400
                    Re: Style Police (a rant) "Cthun" <cthun_117@qmail.net.au> - 2011-09-12 04:59 -0400
                      Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-12 05:13 -0400
                Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-11 23:17 +0000
                  Re: Style Police (a rant) Arne Vajhøj <arne@vajhoej.dk> - 2011-09-11 21:12 -0400
                  Re: Style Police (a rant) Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-09-12 07:36 -0300
                Re: Style Police (a rant) "Cthun" <cthun_117@qmail.net.au> - 2011-09-12 04:58 -0400
                  Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-12 05:12 -0400
          Re: Style Police (a rant) Wanja Gayk <brixomatic@yahoo.com> - 2011-09-11 15:33 +0200
            Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-09-11 09:42 -0700
              Re: Style Police (a rant) Lars Enderin <lars.enderin@telia.com> - 2011-09-11 20:35 +0200
                Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-09-11 16:55 -0700
                  Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-09-11 20:36 -0700
                    Re: Style Police (a rant) Lars Enderin <lars.enderin@telia.com> - 2011-09-12 10:05 +0200
                      Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-09-12 15:35 -0700
                        Re: Style Police (a rant) Lars Enderin <lars.enderin@telia.com> - 2011-09-13 10:35 +0200
                          Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-09-13 09:48 -0700
                            Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-09-13 12:18 -0700
                              Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-09-13 17:30 -0700
                      Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-09-12 21:59 -0700
                        Re: Style Police (a rant) Joe Attardi <jattardi@gmail.com> - 2011-09-23 10:54 -0700
                          Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-09-24 01:54 -0400
                            Re: Style Police (a rant) "tholen@antispam.ham" <tholen@ifa.hawaii.edu> - 2011-09-24 02:58 -0700
                              Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-09-24 11:35 -0400
                            Re: Style Police (a rant) Joe Attardi <jattardi@gmail.com> - 2011-09-26 13:50 -0700
                              Re: Style Police (a rant) Jane Doe <jdoe@love.in.d.jungle.invalid> - 2011-09-26 21:14 +0000
                                Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-09-26 17:50 -0400
                                  Re: Style Police (a rant) "tholen@antispam.ham" <tholen@ifa.hawaii.edu> - 2011-11-04 15:56 -0700
                                    Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-11-07 12:04 -0500
                                      Re: Style Police (a rant) "tholen@antispam.ham" <tholen@ifa.hawaii.edu> - 2011-11-10 15:22 -0800
                              Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-09-26 17:47 -0400
                              Re: Style Police (a rant) "tholen@antispam.ham" <tholen@ifa.hawaii.edu> - 2011-11-04 15:48 -0700
                                Re: Style Police (a rant) dizzy <dizzy@nospam.invalid> - 2011-11-05 07:58 -0500
                                  Re: Style Police (a rant) "tholen@antispam.ham" <tholen@ifa.hawaii.edu> - 2011-11-10 15:17 -0800
                          Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-09-26 15:17 -0700
                            Re: Style Police (a rant) Jane Doe <jdoe@love.in.d.jungle.invalid> - 2011-09-27 00:50 +0000
                              Re: Style Police (a rant) tisue@cs.nwu.edu (Seth Tisue) - 2011-09-27 08:55 -0600
                                Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-09-27 14:14 -0400
                              Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-09-27 14:11 -0400
                              Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-10-01 07:31 -0700
                            Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-09-26 22:24 -0400
                              Re: Style Police (a rant) Jane Doe <jdoe@love.in.d.jungle.invalid> - 2011-09-27 09:30 +0000
                                Re: Style Police (a rant) tisue@cs.nwu.edu (Seth Tisue) - 2011-09-27 08:57 -0600
                                  Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-09-27 14:38 -0400
                                Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-09-27 14:36 -0400
                            Re: Style Police (a rant) Kaz Kylheku <kaz@kylheku.com> - 2011-09-30 15:58 +0000
                              Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-10-01 07:32 -0700
                            Re: Style Police (a rant) Arne Vajhøj <arne@vajhoej.dk> - 2011-09-30 21:26 -0400
                              Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-10-01 07:34 -0700
                                Re: Style Police (a rant) Arne Vajhøj <arne@vajhoej.dk> - 2011-10-01 15:51 -0400
                                  Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-10-05 06:18 -0700
                                Re: Style Police (a rant) "Cthun" <cthun_117@qmail.net.au> - 2011-10-01 16:26 -0400
                                  Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-10-01 21:25 -0400
                                  Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-10-05 06:23 -0700
                                    Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-10-05 10:01 -0400
                                      Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-10-07 08:29 -0700
                                        Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-10-07 17:34 -0400
                    Re: Style Police (a rant) Retahiv Oopsiscame <roopsisc@gmail.com> - 2011-09-12 21:58 -0700
                  Re: Style Police (a rant) "Cthun" <cthun_117@qmail.net.au> - 2011-09-12 04:52 -0400
                    Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-12 05:14 -0400
                      Re: Style Police (a rant) "Cthun" <cthun_117@qmail.net.au> - 2011-09-12 06:42 -0400
                        Re: Style Police (a rant) Cthun <cthun_117@qmail.net.au> - 2011-09-12 07:20 -0400
                          Re: Style Police (a rant) "Cthun" <cthun_117@qmail.net.au> - 2011-09-12 08:46 -0400
                            Re: Style Police (a rant) thoolen <th00len@th0lenbot.thorium> - 2011-09-12 21:03 -0400
                Re: Style Police (a rant) Tom Anderson <twic@urchin.earth.li> - 2011-09-12 20:18 +0100
              Re: Style Police (a rant) Wanja Gayk <brixomatic@yahoo.com> - 2011-09-11 21:20 +0200
                Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-09-11 13:52 -0700
            Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-12 00:17 +0000
        Re: Style Police (a rant) Arne Vajhøj <arne@vajhoej.dk> - 2011-09-10 21:32 -0400
          Re: Style Police (a rant) Wanja Gayk <brixomatic@yahoo.com> - 2011-09-11 13:27 +0200
            Re: Style Police (a rant) Arne Vajhøj <arne@vajhoej.dk> - 2011-09-11 11:05 -0400
          Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-11 13:23 +0000
            Re: Style Police (a rant) Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-09-11 10:04 -0400
              Re: Style Police (a rant) Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-09-11 12:45 -0300
                Re: Style Police (a rant) Arne Vajhøj <arne@vajhoej.dk> - 2011-09-11 16:53 -0400
                  Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-14 12:30 +0000
                    Re: Style Police (a rant) Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-09-14 20:47 -0400
                      Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-09-14 18:06 -0700
                      Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-15 10:06 +0000
                      Re: Style Police (a rant) blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2011-09-20 11:28 +0000
                        Re: Style Police (a rant) Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-09-20 07:36 -0400
                          Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-20 13:04 +0000
                        Re: Style Police (a rant) Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-09-20 20:34 -0300
                    Re: Style Police (a rant) Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-09-14 22:33 -0300
                      Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-15 13:46 +0000
                    Re: Style Police (a rant) Arne Vajhøj <arne@vajhoej.dk> - 2011-09-14 21:40 -0400
            Re: Style Police (a rant) Arne Vajhøj <arne@vajhoej.dk> - 2011-09-11 10:59 -0400
              Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-09-11 21:25 +0000
    Re: Style Police (a rant) Tom Anderson <twic@urchin.earth.li> - 2011-08-27 14:00 +0100
      Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-27 08:42 -0700
      Re: Style Police (a rant) Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-08-27 11:58 -0400
    Re: Style Police (a rant) "John B. Matthews" <nospam@nospam.invalid> - 2011-08-28 08:21 -0400
      Re: Style Police (a rant) Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-08-28 18:07 -0300
    Re: Style Police (a rant) Roedy Green <see_website@mindprod.com.invalid> - 2011-08-29 04:20 -0700
    Re: Style Police (a rant) Tim Slattery <Slattery_T@bls.gov> - 2011-08-29 09:11 -0400
      Re: Style Police (a rant) Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-08-29 20:50 -0400
        Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-08-30 11:27 +0000
          Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-30 09:36 -0700
            Re: Style Police (a rant) Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-08-30 17:51 +0000
        Re: Style Police (a rant) Tim Slattery <Slattery_T@bls.gov> - 2011-08-30 08:51 -0400
        Re: Style Police (a rant) Patricia Shanahan <pats@acm.org> - 2011-08-30 09:04 -0700
          Re: Style Police (a rant) Lew <lewbloch@gmail.com> - 2011-08-30 09:43 -0700
            Re: Style Police (a rant) Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2011-08-31 00:31 +0200

Page 3 of 10 — ← Prev page 1 2 [3] 4 5 … 10  Next page →


#7810

FromLew <lewbloch@gmail.com>
Date2011-09-11 09:47 -0700
Message-ID<c49eeaae-647b-423e-820c-86221b6b9f21@glegroupsg2000goo.googlegroups.com>
In reply to#7797
Andreas Leitgeb wrote:
> Lew wrote:
>> Andreas Leitgeb wrote:
>>> I'd favor a different change:  let final variables optionally
>>> have their type inferred:
>>>   final myList = new ArrayList<String>();
>>> Afterall, it is just a handle for some previously obtained value.
> 
>> That idea is more complex than it appears.  Should the inferred type be
>> 'List<String>', 'AbstractList<String>' or 'ArrayList<String>'?
>> I suspect you would say the last,
> 
> You suspected right, which is no surprise, as it is the only reasonable
> choice in that particular context.

No, it isn't.  A variable type of 'List<String>' is entirely reasonable.

-- 
Lew

[toc] | [prev] | [next] | [standalone]


#7839

FromAndreas Leitgeb <avl@gamma.logic.tuwien.ac.at>
Date2011-09-11 23:32 +0000
Message-ID<slrnj6qh8n.6gl.avl@gamma.logic.tuwien.ac.at>
In reply to#7810
Lew <lewbloch@gmail.com> wrote:
> Andreas Leitgeb wrote:
>> Lew wrote:
>>> Andreas Leitgeb wrote:
>>>> I'd favor a different change:  let final variables optionally
>>>> have their type inferred:
>>>>   final myList = new ArrayList<String>();
>>>> Afterall, it is just a handle for some previously obtained value.
>>> That idea is more complex than it appears.  Should the inferred type be
>>> 'List<String>', 'AbstractList<String>' or 'ArrayList<String>'?
>>> I suspect you would say the last,
>> You suspected right, which is no surprise, as it is the only reasonable
>> choice in that particular context.
> No, it isn't.  A variable type of 'List<String>' is entirely reasonable.

Reasonable to write by hand, but not reasonable to have it inferred 
from an ArrayList<String>-typed expression. That was the particular 
context.

While a *non*-final List<String> typed variable could later be assigned
an instance of LinkedList<String>, a final can't.  It hardly ever hurts
to have a final variable carry the most specific subtype. That could
even go as far as (currently impossible/forbidden):

  final actor = new Object() { public void foo() { ...; } };
  actor.foo();

If it is undesired to carry the specific subtype, then you'd just specify
the type as you do now.

[toc] | [prev] | [next] | [standalone]


#8093

FromWanja Gayk <brixomatic@yahoo.com>
Date2011-09-17 00:57 +0200
Message-ID<MPG.28d7673e2cb655989896bb@202.177.16.121>
In reply to#7839
In article <slrnj6qh8n.6gl.avl@gamma.logic.tuwien.ac.at>, 
avl@gamma.logic.tuwien.ac.at says...

> While a *non*-final List<String> typed variable could later be 
assigned
> an instance of LinkedList<String>, a final can't.  It hardly ever hurts
> to have a final variable carry the most specific subtype.

Really?

final x = new Vector<String>();
Enumeration e = x.elements();
...

Now a few weeks later, after every bit in the program assumes it can use 
the methods specific to Vector, you decide it's better to use a 
LinkedList and just change the assignment:

final x = new LinkedList<String>();
Enumeration e = x.elements(); <<- and breaks this and everything else 
that relied on the specific type.

Abstraction is the whole point of declaring interfaces, you don't want 
your code to be brittle.

Kind regards,
Wanja

-- 
..Alesi's problem was that the back of the car was jumping up and down 
dangerously - and I can assure you from having been teammate to 
Jean Alesi and knowing what kind of cars that he can pull up with, 
when Jean Alesi says that a car is dangerous - it is. [Jonathan Palmer]

--- Posted via news://freenews.netfront.net/ - Complaints to news@netfront.net ---

[toc] | [prev] | [next] | [standalone]


#8109

FromAndreas Leitgeb <avl@gamma.logic.tuwien.ac.at>
Date2011-09-17 19:56 +0000
Message-ID<slrnj79ur5.6gl.avl@gamma.logic.tuwien.ac.at>
In reply to#8093
Wanja Gayk <brixomatic@yahoo.com> wrote:
> avl@gamma.logic.tuwien.ac.at says...
>> While a *non*-final List<String> typed variable could later be
>> assigned an instance of LinkedList<String>, a final can't.
>> It hardly ever hurts to have a final variable carry the most
>> specific subtype.
> final x = new Vector<String>();
> Enumeration e = x.elements();

> [ later someone changes it to ]

> final x = new LinkedList<String>();
> Enumeration e = x.elements(); <<- and breaks this and [...]

I think it's even a bonus that this would no longer compile.
On the other hand:

  final List<String> l = new Vector<String>();
  [...]
  // I know, I initialized l with a Vector just before:
  Vector<String> vec=(Vector<String>)l; // compiler cannot check
  Enumeration e = vec.elements();

wouldn't crash until Runtime, if l's initializer were changed to
LinkedList lateron...

> Abstraction is the whole point of declaring interfaces, you don't want 
> your code to be brittle.

But inconsequent abstraction is even much worse than just
forgetting about it altogether.

PS: Obviously, one cannot just idly change the initializer of a variable
  and expect it all to work. Not even without the currently discussed
  feature.

[toc] | [prev] | [next] | [standalone]


#7816

FromWanja Gayk <brixomatic@yahoo.com>
Date2011-09-11 21:20 +0200
Message-ID<MPG.28d727a0ecb36f769896b4@202.177.16.121>
In reply to#7797
In article <slrnj6pg53.6gl.avl@gamma.logic.tuwien.ac.at>, 
avl@gamma.logic.tuwien.ac.at says...

> > Wanja's main point is that 'final' has a semantic purpose, not an
> > optimization one.
> 
> So far I agree.

Well understood.

> >   I agree that the evidence for the advantage of a 'var' keyword
> > over a 'final' is lacking,
> 
> That Wanja suggested the "var" keyword is an indication of that he has
> a bias towards functional programming. 

Hm, I can't really say that this is the case. It's just in the past few 
years that I'm adopting rather functional paradigms, which in Java 
mostly boils down to using the strategy pattern and a preference towards 
methods that are free of side-effects.
But using "finally" a lot has hardly anything to do with functional 
programming in my opinion.
I'm doing it for the sake of precision of expression (don't declare 
something variable if it's not) and staying focussed. Anything that is 
not "final" immediately draws my attention for being a subject of 
change, which means I can forget about most of the variables when 
analyzing code. This is also why I narrow the scope of variables a lot.

Here's an example:

I have seen code that looks like this:

//O(n*n) runtime, but "in place", suitable only if 
//memory is far more important than runtime.
//
//[][1,2,3,4,3,2,1] head contains 1 ? -> false
//[1][2,3,4,3,2,1] head contains 2 ? -> false
//[1,2][3,4,3,2,1] head contains 3 ? -> false
//[1,2,3][4,3,2,1] head contains 4 ? -> false
//[1,2,3,4][3,2,1] head contains 3 ? -> true
//[1,2,3,4][2,1] head contains 2 ? -> true
//[1,2,3,4][1] head contains 1 ? -> true
//[1,2,3,4][] 	
public <T> void withoutDupes(Iterable<T> iterable) {
	Iterator<T> tail = iterable.iterator();
	int tailIndex = -1;
       int headIndex = 0;
       Iterator<T> head = null;
	T head ofTail = null;
	T objectInHead = null;
	while (tail.hasNext()) {			
		tailIndex++;
		headOfTail = tail.next();
		headIndex = 0;
		head = iterable.iterator();
		while (headIndex++ < tailIndex) {
			objectInHead = head.next();
			if (matches(headOfTail, objectInHead)) {
				tail.remove();
				tailIndex = tailIndex-1;
				break;
			}
		}
	}
}

I find this unnecessary hard to follow, because I have a hard time to 
see which value changes when and where a value is needed.
I first start to reduce the scope of the variables, which also kills 
unnecessary initializations:

public <T> void withoutDupes(Iterable<T> iterable) {
	Iterator<T> tail = iterable.iterator();
	int tailIndex = -1;
	while (tail.hasNext()) {			
		tailIndex++;
		T headOfTail = tail.next();
		int headIndex = 0;
		Iterator<T> head = iterable.iterator();
		while (headIndex++ < tailIndex) {
			T objectInHead = head.next();
			if (matches(headOfTail, objectInHead)) {
				tail.remove();
				tailIndex = tailIndex-1;
				break;
			}
		}
	}
}

Then I would add the "finally"-keyword to any place appropriate, Ecipses 
source-"clean up" function does that for me, so it's just three or four 
few mouseclicks/keystrokes away:

public <T> void withoutDupes(final Iterable<T> iterable) {
	final Iterator<T> tail = iterable.iterator();
	int tailIndex = -1;
	while (tail.hasNext()) {			
		tailIndex++;
		final T headOfTail = tail.next();
		int headIndex = 0;
		final Iterator<T> head = iterable.iterator();
		while (headIndex++ < tailIndex) {
			final T objectInHead = head.next();
			if (matches(headOfTail, objectInHead)) {
				tail.remove();
				tailIndex = tailIndex-1;
				break;
			}
		}
	}
}

At this point I find the code a lot easier to follow, because I have 
less variables to trace and their scope is limited. It looks even better 
in the IDE, because of the syntax highlighting.
The variables "tailIndex" and "headIndex" immediately catch my 
attention, they are not preceeded with "finally" so those are the 
running variables and as such the most interesting when tracng the code. 
Still that would not satisfy me. As a final touch I'd change the 
increments where appropriate to clarify the order of evaluation, because 
"if(i++ < 10){...}" 
is short for 
"int temp = i; i=i+1; if(temp < 10){..}"
which is unnecessarily complicated.

So as I would end up with:

public <T> void withoutDupes(final Iterable<T> iterable) {
	Iterator<T> tail = iterable.iterator();
	int tailIndex = -1;
	while (tail.hasNext()) {			
		++tailIndex;
		T headOfTail = tail.next();
		int headIndex = -1;
		Iterator<T> head = iterable.iterator();
		while (++headIndex < tailIndex) {
			T objectInHead = head.next();
			if (matches(headOfTail, objectInHead)) {
				tail.remove();
				--tailIndex;
				break;
			}
		}
	}
}

Now this is a code I find a lot easier to understand than the first 
version, that looked like this:

public <T> void withoutDupes(Iterable<T> iterable) {
	Iterator<T> tail = iterable.iterator();
	int tailIndex = -1;
       int headIndex = 0;
       Iterator<T> head = null;
	T head ofTail = null;
	T objectInHead = null;
	while (tail.hasNext()) {			
		tailIndex++;
		headOfTail = tail.next();
		headIndex = 0;
		head = iterable.iterator();
		while (headIndex++ < tailIndex) {
			objectInHead = head.next();
			if (matches(headOfTail, objectInHead)) {
				tail.remove();
				tailIndex = tailIndex-1;
				break;
			}
		}
	}
}

Still I could refactor out one or two methods, but at this time I would 
probably stop and call it a day.

> Unlike Arne, I don't say that
> "pick a different language" is an appropriate answer. It's ok, to program
> functionally in Java, as far as possible in Java-syntax, and that this
> may lead to quite a lot of "final"s.
> I just disagree with Wanja as to making "final" the default: it's
> like bullying others to functional style in Java.

The above code is by no means functional, is it?

Functional code would rather look like this:

public <T> List<T> withoutDupes(final List<T> xs) {
 return new Object() {
  <T> List<T> withoutDupes(final List<T> head, final List<T> tail) {
   if(tail.isEmpty()){return head;}   
   if (head.contains(tail.get(0))) {
    return withoutDupes(head, tail.subList(1, tail.size()));
   }
   return withoutDupes(
      new ArrayList<T>(head){{add(tail.get(0));}}
    , tail.subList(1, tail.size())
   );
  }
 }.withoutDupes(Collections.<T>emptyList(), xs);
}

This is a whole different beast (and prone to crash with a stack 
overflow exception on larger lists by the way).
Admitted, it is not entirely functional due to the "add"-call, but quite 
close. Still it is pretty compact code (there is a certain beauty in 
recursion, isn't it?) and not hard to understand either. 

Bullying someone to functional code would be pretty stupid, as the 
current JVMs still have a hard time detecting tail recursions and it 
lacks data structures that do lazy evaluation in the Java SE.

Kind regards,
Wanja

-- 
..Alesi's problem was that the back of the car was jumping up and down 
dangerously - and I can assure you from having been teammate to 
Jean Alesi and knowing what kind of cars that he can pull up with, 
when Jean Alesi says that a car is dangerous - it is. [Jonathan Palmer]

--- Posted via news://freenews.netfront.net/ - Complaints to news@netfront.net ---

[toc] | [prev] | [next] | [standalone]


#7823

FromCthun <cthun_117@qmail.net.au>
Date2011-09-11 17:11 -0400
Message-ID<j4j858$9do$1@speranza.aioe.org>
In reply to#7816
On 11/09/2011 3:20 PM, Wanja Gayk wrote:
$ public<T>  List<T>  withoutDupes(final List<T>  xs) {
$   return new Object() {
$    <T>  List<T>  withoutDupes(final List<T>  head, final List<T>  tail) {
$     if(tail.isEmpty()){return head;}
$     if (head.contains(tail.get(0))) {
$      return withoutDupes(head, tail.subList(1, tail.size()));
$     }
$     return withoutDupes(
$        new ArrayList<T>(head){{add(tail.get(0));}}
$      , tail.subList(1, tail.size())
$     );
$    }
$   }.withoutDupes(Collections.<T>emptyList(), xs);
$ }

> This is a whole different beast (and prone to crash with a stack
> overflow exception on larger lists by the way).
> Admitted, it is not entirely functional due to the "add"-call, but quite
> close. Still it is pretty compact code (there is a certain beauty in
> recursion, isn't it?) and not hard to understand either.
>
> Bullying someone to functional code would be pretty stupid, as the
> current JVMs still have a hard time detecting tail recursions and it
> lacks data structures that do lazy evaluation in the Java SE.

There's a way around that, and it's called Clojure. It compiles to JVM 
bytecode and has both lazy lists and a special operator for doing tail 
recursion (the compiler turns it into an iteration).

[toc] | [prev] | [next] | [standalone]


#7838

FromWanja Gayk <brixomatic@yahoo.com>
Date2011-09-12 01:22 +0200
Message-ID<MPG.28d760f987b9313f9896b9@202.177.16.121>
In reply to#7823
In article <j4j858$9do$1@speranza.aioe.org>, cthun_117@qmail.net.au 
says...

> > Bullying someone to functional code would be pretty stupid, as the
> > current JVMs still have a hard time detecting tail recursions and it
> > lacks data structures that do lazy evaluation in the Java SE.
> 
> There's a way around that, and it's called Clojure. It compiles to JVM 
> bytecode and has both lazy lists and a special operator for doing tail 
> recursion (the compiler turns it into an iteration).

I'm afraid the syntax of Scala suits me better - but then again, we were 
talking about Java anyway.

Kind regards,
Wanja


-- 
..Alesi's problem was that the back of the car was jumping up and down 
dangerously - and I can assure you from having been teammate to 
Jean Alesi and knowing what kind of cars that he can pull up with, 
when Jean Alesi says that a car is dangerous - it is. [Jonathan Palmer]

--- Posted via news://freenews.netfront.net/ - Complaints to news@netfront.net ---

[toc] | [prev] | [next] | [standalone]


#7850

FromArne Vajhøj <arne@vajhoej.dk>
Date2011-09-11 21:13 -0400
Message-ID<4e6d5cbf$0$316$14726298@news.sunsite.dk>
In reply to#7838
On 9/11/2011 7:22 PM, Wanja Gayk wrote:
> In article<j4j858$9do$1@speranza.aioe.org>, cthun_117@qmail.net.au
> says...
>>> Bullying someone to functional code would be pretty stupid, as the
>>> current JVMs still have a hard time detecting tail recursions and it
>>> lacks data structures that do lazy evaluation in the Java SE.
>>
>> There's a way around that, and it's called Clojure. It compiles to JVM
>> bytecode and has both lazy lists and a special operator for doing tail
>> recursion (the compiler turns it into an iteration).
>
> I'm afraid the syntax of Scala suits me better - but then again, we were
> talking about Java anyway.

Other languages have been mentioned in the thread.

Arne

[toc] | [prev] | [next] | [standalone]


#7843

FromRetahiv Oopsiscame <roopsisc@gmail.com>
Date2011-09-11 16:54 -0700
Message-ID<d4b0ae15-8f99-44a0-ae91-0e40b10c6170@e8g2000vbc.googlegroups.com>
In reply to#7823
On Sep 11, 5:11 pm, Cthun <cthun_...@qmail.net.au> wrote:
> On 11/09/2011 3:20 PM, Wanja Gayk wrote:
> > Bullying someone to functional code would be pretty stupid, as the
> > current JVMs still have a hard time detecting tail recursions and it
> > lacks data structures that do lazy evaluation in the Java SE.
>
> There's a way around that, and it's called Clojure. It compiles to JVM
> bytecode and has both lazy lists and a special operator for doing tail
> recursion (the compiler turns it into an iteration).

*googles*

Bleah!

You could have saved everyone a lot of time if you'd said up front
that it was a fucking Lisp, Cthun. :P

[toc] | [prev] | [next] | [standalone]


#7857

FromCthun <cthun_117@qmail.net.au>
Date2011-09-11 23:42 -0400
Message-ID<j4jv3s$pom$1@speranza.aioe.org>
In reply to#7843
On 11/09/2011 7:54 PM, Retahiv Oopsiscame wrote:
> On Sep 11, 5:11 pm, Cthun <cthun_...@qmail.net.au> wrote:
>> There's a way around that, and it's called Clojure.
>
> *googles*
>
> Bleah!
>
> You could have saved everyone a lot of time if you'd said up front
> that it was a fucking Lisp, Cthun. :P

And what, pray tell, is wrong with Lisp, Oopsiscame? Let alone *so* 
wrong as to be deserving of foul language for emphasis?

[toc] | [prev] | [next] | [standalone]


#7960

FromRetahiv Oopsiscame <roopsisc@gmail.com>
Date2011-09-12 21:54 -0700
Message-ID<681a23e5-2c6d-47e1-9625-4d63062210df@m5g2000vbm.googlegroups.com>
In reply to#7857
On Sep 11, 11:42 pm, Cthun <cthun_...@qmail.net.au> wrote:
> And what, pray tell, is wrong with Lisp, Oopsiscame? Let alone *so*
> wrong as to be deserving of foul language for emphasis?

Parentheses everywhere. Prefix instead of infix math. Auto-uppercasing
variable names. And of course the big thing the Lispers always keep
hyping are the macros. Anyone who's had to maintain a large C codebase
inherited from someone else learns to dread macros. Besides the
problems with name capture and shadowing there's their use to create
silly and lawyer-requiring new syntax to parse. Both C and Lisp macros
look like function calls, deceptively, but have different rules of
evaluation that can trip you up. And don't get me started on Common
Lisp's boondoggle known as the LOOP macro ...

[toc] | [prev] | [next] | [standalone]


#7968

From"Cthun" <cthun_117@qmail.net.au>
Date2011-09-13 07:18 -0400
Message-ID<j4negk$ivq$1@speranza.aioe.org>
In reply to#7960
On 12/09/2011 9:54 PM, Retahiv Oopsiscame wrote:
>On Sep 11, 11:42=A0pm, Cthun <cthun_...@qmail.net.au> wrote:
>> And what, pray tell, is wrong with Lisp, Oopsiscame? Let alone *so*
>> wrong as to be deserving of foul language for emphasis?
>
>Parentheses everywhere. Prefix instead of infix math. Auto-uppercasing
>variable names. And of course the big thing the Lispers always keep
>hyping are the macros. Anyone who's had to maintain a large C codebase
>inherited from someone else learns to dread macros. Besides the
>problems with name capture and shadowing there's their use to create
>silly and lawyer-requiring new syntax to parse. Both C and Lisp macros
>look like function calls, deceptively, but have different rules of
>evaluation that can trip you up. And don't get me started on Common
>Lisp's boondoggle known as the LOOP macro ...

As you were it was doubtful you owned a full basket of fruit.
You now tell us it is all nuts.

I see you are quite correct.
Winter at hand I will be sure to send all my squirrels off 
to Montreal and google for nuts.


[toc] | [prev] | [next] | [standalone]


#7970

FromCthun <cthun_117@qmail.net.au>
Date2011-09-13 10:07 -0400
Message-ID<j4no37$c89$1@speranza.aioe.org>
In reply to#7968
On 13/09/2011 7:18 AM, I did not write:
> As you were it was doubtful you owned a full basket of fruit.
> You now tell us it is all nuts.

Hey, murphy. What part of "fuck the hell off" did you not understand?

> I see you are quite correct.
> Winter at hand I will be sure to send all my squirrels off to Montreal
> and google for nuts.

You're being even more illucid than usual, murph. It's as if you went 
off your meds a few months ago, went off them some more a couple days 
ago, and went off them some more again this morning, if that's possible.

[toc] | [prev] | [next] | [standalone]


#7973

FromLew <lewbloch@gmail.com>
Date2011-09-13 08:15 -0700
Message-ID<8cbcd7c6-bfc9-4e8e-92c0-91b24f667b35@glegroupsg2000goo.googlegroups.com>
In reply to#7970
Cthun wrote:
> Hey, murphy. What part of "fuck the hell off" did you not understand?

Plonk.

[toc] | [prev] | [next] | [standalone]


#7974

FromCthun <cthun_117@qmail.net.au>
Date2011-09-13 12:00 -0400
Message-ID<j4num7$uo6$1@speranza.aioe.org>
In reply to#7973
On 13/09/2011 11:15 AM, Lew wrote:
> Cthun wrote:
>> Hey, murphy. What part of "fuck the hell off" did you not understand?
>
> Plonk.

Famous Last Word.

[toc] | [prev] | [next] | [standalone]


#7971

FromCthun <cthun_117@qmail.net.au>
Date2011-09-13 10:10 -0400
Message-ID<j4no9g$dcq$1@speranza.aioe.org>
In reply to#7960
On 13/09/2011 12:54 AM, Retahiv Oopsiscame wrote:
> On Sep 11, 11:42 pm, Cthun<cthun_...@qmail.net.au>  wrote:
>> And what, pray tell, is wrong with Lisp, Oopsiscame? Let alone *so*
>> wrong as to be deserving of foul language for emphasis?
>
> Parentheses everywhere.

So?

> Prefix instead of infix math.

So?

> Auto-uppercasing variable names.

Icky Common Lisp has that problem. Clojure doesn't.

> And of course the big thing the Lispers always keep hyping are the
> macros.

With good reason.

> Anyone who's had to maintain a large C codebase inherited from
> someone else learns to dread macros.

Learns to dread C macros, perhaps.

> Besides the problems with name capture and shadowing

which are avoidable, if you know what you're doing.

> there's their use to create silly and lawyer-requiring new syntax
> to parse.

All language features can be misused. C++ operator overloading is just 
as capable of being used to make unreadable code, but doesn't involve 
macros.

> Both C and Lisp macros look like function calls, deceptively,

Everything in Lisp looks like (operator arg1 arg2 ...); so?

> but have different rules of evaluation that can trip you up.

Beats the hell out of memorizing long lists of operator precedence 
rules, or all kinds of corner-cases in the parser and lexer of a syntaxy 
language.

> And don't get me started on Common Lisp's boondoggle known as the
> LOOP macro ...

The Common Lisp LOOP macro does, in fact, suck. It's ... unLispy.

[toc] | [prev] | [next] | [standalone]


#7979

FromRetahiv Oopsiscame <roopsisc@gmail.com>
Date2011-09-13 09:55 -0700
Message-ID<d6ac5247-e5fe-488d-9f35-f22b67a84b74@s2g2000vby.googlegroups.com>
In reply to#7971
On Sep 13, 10:10 am, Cthun <cthun_...@qmail.net.au> wrote:
> On 13/09/2011 12:54 AM, Retahiv Oopsiscame wrote:
>
> > On Sep 11, 11:42 pm, Cthun<cthun_...@qmail.net.au>  wrote:
> >> And what, pray tell, is wrong with Lisp, Oopsiscame? Let alone *so*
> >> wrong as to be deserving of foul language for emphasis?
>
> > Parentheses everywhere.
>
> So?

If you need to ask, then you simply do not understand.

> > Prefix instead of infix math.
>
> So?

If you need to ask, then you simply do not understand.

> > Auto-uppercasing variable names.
>
> Icky Common Lisp has that problem. Clojure doesn't.

Never heard of it.

> > And of course the big thing the Lispers always keep hyping are the
> > macros.
>
> With good reason.

Poppycock.

> > Anyone who's had to maintain a large C codebase inherited from
> > someone else learns to dread macros.
>
> Learns to dread C macros, perhaps.

Macros are macros are macros.

> > Besides the problems with name capture and shadowing
>
> which are avoidable, if you know what you're doing.

If I call a variable in a macro "x" and it contains a code fragment
supplied at the invocation site, there could be an "x" at the
invocation site as well, in scope around the invocation, that that
code fragment tries to reference. Replace "x" with any other name and
the same thing remains true. I suppose you could add some klunky
system that allows module-namespacing locals, and then use that in
macros to make collisions less likely, but that's one hell of a
kludge.

> > there's their use to create silly and lawyer-requiring new syntax
> > to parse.
>
> All language features can be misused. C++ operator overloading is just
> as capable of being used to make unreadable code, but doesn't involve
> macros.

If all language features were *equal* in their proneness to be
misused, why would we find macros to be a particularly frequent
culprit in C codebases, and macros and operator overloading in C++
codebases, as compared to, say, switch statements or for loops or
ordinary function calls?

> > Both C and Lisp macros look like function calls, deceptively,
>
> Everything in Lisp looks like (operator arg1 arg2 ...); so?

If you need to ask, then you simply do not understand.

> > but have different rules of evaluation that can trip you up.
>
> Beats the hell out of memorizing long lists of operator precedence
> rules, or all kinds of corner-cases in the parser and lexer of a syntaxy
> language.

Most operator precedence rules you'll need will have been ingrained in
grade school math class, and you can always *elect* to parenthesize
when you want to be sure of a particular order of execution and don't
remember the precedence rule (or it goes the wrong way for your needs
in that case).

And what is wrong with "syntaxy" language, exactly? Without syntax,
you don't even have a language, just a formless soup.

> > And don't get me started on Common Lisp's boondoggle known as the
> > LOOP macro ...
>
> The Common Lisp LOOP macro does, in fact, suck. It's ... unLispy.

Merely being unLispy would be a good thing. The problem is that it's
COBOLy, BASICy, and borderline INTERCALy.

[toc] | [prev] | [next] | [standalone]


#8057

FromCthun <cthun_117@qmail.net.au>
Date2011-09-15 10:37 -0400
Message-ID<j4t2ik$5vp$1@speranza.aioe.org>
In reply to#7979
On 13/09/2011 12:55 PM, Retahiv Oopsiscame wrote:
> If you need to ask, then you simply do not understand.
> If you need to ask, then you simply do not understand.

Perhaps not. Some people dislike all the parentheses, but I confess I 
don't really know why.

>> Icky Common Lisp has that problem. Clojure doesn't.
>
> Never heard of it.

http://www.clojure.org/
http://try-clojure.org/

>>> And of course the big thing the Lispers always keep hyping are the
>>> macros.
>>
>> With good reason.
>
> Poppycock.

Not at all. Java finally is adding something called 
"try-with-resources". If Java had had macros we wouldn't have needed to 
wait. He could have written a try-with-resources macro built around 
regular try. Or even if he didn't have the chops for macro writing 
himself, as soon as there was much demand for try-with-resources someone 
would have made it available as a library in short order. But instead, 
the Java community had to wait until Sun/Oracle got their act together 
and added it.

Macros mean not having to wait for the implementation vendors for new 
language features. It means maybe getting esoteric ones the vendors 
don't see enough demand for to write themselves. It also means being 
able to easily write mini-compilers to convert a problem-domain 
language, such as an expressive math notation, into the underlying 
language. So you can do something like (math x^2 + 32) and get back a 
Polynomial object or whatever that can be called like a function with 
various values of x and also subjected to analytic methods. And yes, 
that's infix notation inside the hypothetical math macro.

>>> Anyone who's had to maintain a large C codebase inherited from
>>> someone else learns to dread macros.
>>
>> Learns to dread C macros, perhaps.
>
> Macros are macros are macros.

Not all macros are created equal. C's are much less clean because they 
do nothing to help avoid symbol capture and they operate on text rather 
than the abstract syntax tree.

> If I call a variable in a macro "x" and it contains a code fragment
> supplied at the invocation site, there could be an "x" at the
> invocation site as well, in scope around the invocation, that that
> code fragment tries to reference. Replace "x" with any other name and
> the same thing remains true. I suppose you could add some klunky
> system that allows module-namespacing locals, and then use that in
> macros to make collisions less likely, but that's one hell of a
> kludge.

Sort of, minus the klunky kludge part. Gensyms and qualified symbols can 
be used for this type of thing.

> If all language features were *equal* in their proneness to be
> misused, why would we find macros to be a particularly frequent
> culprit in C codebases, and macros and operator overloading in C++
> codebases, as compared to, say, switch statements or for loops or
> ordinary function calls?

Because C/C++ preprocessor macros suck? See above.

>> Everything in Lisp looks like (operator arg1 arg2 ...); so?
>
> If you need to ask, then you simply do not understand.

See above.

>>> but have different rules of evaluation that can trip you up.
>>
>> Beats the hell out of memorizing long lists of operator precedence
>> rules, or all kinds of corner-cases in the parser and lexer of a syntaxy
>> language.
>
> Most operator precedence rules you'll need will have been ingrained in
> grade school math class, and you can always *elect* to parenthesize
> when you want to be sure of a particular order of execution and don't
> remember the precedence rule (or it goes the wrong way for your needs
> in that case).

Why leave any doubt? Besides, fully-parenthesized helps make the source 
code be close to a directly readable version of the abstract syntax 
tree. And that makes it easier for the macro processor to work, and for 
the coder to reason about their macros.

> And what is wrong with "syntaxy" language, exactly?

It doesn't play nice with macros.

> Without syntax, you don't even have a language, just a formless soup.

Classic unsubstantiated and erroneous claim.

>>> And don't get me started on Common Lisp's boondoggle known as the
>>> LOOP macro ...
>>
>> The Common Lisp LOOP macro does, in fact, suck. It's ... unLispy.
>
> Merely being unLispy would be a good thing.

Classic unsubstantiated and erroneous claim.

> The problem is that it's COBOLy, BASICy, and borderline INTERCALy.

This much is true.

[toc] | [prev] | [next] | [standalone]


#8068

From"Cthun" <cthun_9112011@qmail.net.au>
Date2011-09-15 22:58 -0400
Message-ID<j4t2ig$5vp$1@speranza.aioe.org>
In reply to#8057
Paul Derbysh!e <cthun_117@qmail.net.au>, wrote:

>On 13/09/2011 12:55 PM, Retahiv Oopsiscame wrote:
>> If you need to ask, then you simply do not understand.
>> If you need to ask, then you simply do not understand.
>
>Perhaps not. Some people dislike all the parentheses, but I confess I 

Your behavior, Paul, is beyond ludicrous in the mind of the informed 
observer. What it is in your head which directs your thinking 
of the World out there owing you a stage littered with fools for you 
to toy with at will is a total mystery, one I would wager even your shrink 
struggles with.
It is not the responsibility of anyone using Usenet to provide you with a 
free psycho analysis, hand feeding you a "cure". This as not only is it 
that the lies you publish would cloud such a diagnosis but the worth of 
professional assessment in a text only environment is as of much value 
(real worth) as the opinions of one of your holed socks!
http://i51.tinypic.com/28us11y.jpg

It is very clear you have not grown beyond knowing your activity is 
archived, is traceable, and is yours.
"Retahiv Oopsiscame" <roopsisc@gmail.com>
is the name you used to argue with "blmblm@myrealbox.com"
[http://al.howardknight.net/msgid.cgi?ID=131612707500]
all the while leaping the thread with;
"Jerry Gerrone" [http://al.howardknight.net/msgid.cgi?ID=131613873900]
"Lies, damned lies, and statistics" is most appropriate for you to 
have some fun with.

Article = http://al.howardknight.net/msgid.cgi?STYPE=msgid&MSGI=%3Cc51ff61e-ddfa-424f-af4a-87efb416e983%4035g2000pry.googlegroups.com%3E
Google Archive = http://groups.google.com/group/alt.off-topic/msg/58b746e6ae52c1ff?dmode=source
Parent Thread = http://groups.google.com/group/alt.off-topic/browse_thread/thread/8d3076ce3870be2b/58b746e6ae52c1ff?q=author:roopsisc%40gmail.com


Today you believe it is "safe" to pop the name again, sad mad prat.
Whois "Retahiv Oopsiscame ' --->http://preview.tinyurl.com/Derbysh-reTrolls

I gather even you are capable of joining the dots, Derbyshire?

IP address:                     76.64.158.18
Reverse DNS:                    bas13-kitchener06-1279303186.dsl.bell.ca.
City:      Toronto, Ontario

From: Retahiv Oopsiscame <roopsisc@gmail.com>
Newsgroups: comp.lang.java.programmer
Subject: Re: Style Police (a rant)
Date: Tue, 13 Sep 2011 09:48:40 -0700 (PDT)
Message-ID: <19a1f215-7fa0-434e-a517-c260f600b495@l10g2000yqe.googlegroups.com>
NNTP-Posting-Host: 70.54.8.115

IP address:                     70.54.8.115
Reverse DNS:                    bas1-ottawa10-1177946227.dsl.bell.ca.
City :      Montreal, Quebec
Country :   CA [Canada]

Give this your best shot at maths, Paul, you're the expert;
http://66.39.71.195/Derbyshire/hypergal.html
Do build the audience a picture from how it is 32 months after 
"Retahiv Oopsiscame" posts from your neighbourhood
in "chat" with your "Jerry Gerrone" sock, the identical ID is used to 
again "chat" with you mimicking the performance you put out now as
"Cthun" - not at all dismissing you are using a SMTP DNS you are 
not permitted to use - what is the logical possibility of such an 
event being sheer coincidence, Paul?
Two entirely disconnected identities being addressed by the same 
persona who, using the same argumentative approach 
and the same "bait/switch" presentation fills the group with 
rants of self-proclamation rants (airs and graces). 
Give up the numbers, Paul.
Crunch them down.
You got all night.. and no neighbors!
http://i51.tinypic.com/28us11y.jpo

"Retahiv Oopsiscame" goes on the list.

--- . ... ..- ... <tharrison77107@h0tmail.invalid>
00101010 <zerozeroonezeroonezeroonezero@h2g2.cazoola>
3k7e4intna <3k7e4intna@se0tfbhc.k3y0a.p0z>
3x7r4vagan <3x7r4vagan@fr0gsoup.x3l0n.c0m>
3x+r4v4g4n <extr4v4g4n@fr0gs0up.x3l0n.c0m>
Alice <quaxx1108@example.com>
Arne Këndoj <akendoj103@foof.fcl3.org>
Boojum <boojum42@gmai1.c0m>
B1ll Gat3s <wm.g4t3s@m1cr0s0f7.c0m>
A Canuck <canuck36@tweezit.yahoo.ca>
Canuck <canuck107@canada.xyz>
ClassCastException <zjkg3d9gj56@gmail.invalid>
Cthun <cthun_117@qmail.net.au>
Chad Carmichael <c_carm10782.x@y.z>
dA.b0mB <dabomb@gmai1.c0m>
dark-zark-fark <dzf190485@rutgers.edu>
Deep Green <d_green11908@gmail.com> (forgery)
Deeyana <d.awlberg@hotmail.invalid>
De Lurker <delancey_s113@harvard.nospam.invalid>
Derek Yancey <dy190295683@nospam.invalid>
Extravagan <extravagan@frogsoup.xelon.com>
Ferdinand the -14th <foo@bar.invalid>
Fuschia, President-Elect of the Bright Purplish-Green Council <fp-eotbp-gc@ibm.com>
George Arctos <g.arctos11@hormair.cor>
Greg Kelly <gkelly101_4@gmai1.c0m>
Greg Sandoval <g_sandoval@gcsma.edu.br>
Gheerax IV <gheerax.4@gmail.invalid>
Handkea fumosa <hfumosa@gmail.com>
Hieronymus S. Freely <hsfreely@xavier.uwsc.edu>
Hydrocon <hcon77107@geemail.corn>
Henry Harrison <hharr.1082@quux.bar.foo>
Henderson <h1@g1.f1>
Heike Svensson <hsvensson.1093x1_q@hotmail.nospam.com.please>
Harry Greer <h_greer_1099348@gmail.xxx>
Janie Zanie <jjezebel916@gmai1.invalid>
Jerry Gerrone <scuzwalla@gmail.com>
John Kirkpatrick XVII <jkxvii@ask.me>
Katie Gerrolds <k.gerrolds@nbfinlan.net>
Kevin Hadron <kh_mu_meson@q.us>
kensi <kensi_kensington@zoonoses.de>
KitKat <kitkat_11697@gmail.example.com>
Meerkats <mk_ultra.19018@gmail.com> (forgery)
Mister Scott <m_scott.19477b@noggles.corn>
Mrs. Danforth <danforth_a@hotmail.coo>
Mike Faramis <m_faramis808@qmail.nospam.net>
Mamac <mmc.19384_b@gmai1.com>
Nancy 3 <n3@gmai1.c0m>
Nancy 4 <n4@gmai1.c0m> (forgery)
Nebulous <nebulous99@gmail.com>
Nightcrawler <Dirtydeeds@dirtcheap.net>
Nougat Surprise <nsurprise@noway.nohow.invalid>
Orange Green <og_b1823@netmail.zoog.com.au> 
Paul Derbysh!re <pgderb@gmail.com>
Purpleswandir <ps_1201294@gmail.com>
Retahiv Oopsiscame <roopsisc@gmail.com>
RichB <rich_barnsley@nowhere.com>
scuzwalla@gmail.com
SFTV_troll <SFTV_troll@yah.right>
Sulfide Eater <zaxx1108@example.com>
<supercalifragilisticexpialadiamaticonormalizeringelimatisticantations@averylongandannoyingdomainname.com>
Spock <spock@starfleet.ufp>
Series Expansion <serexp1@gmail.com>
Seamus MacRae <smacrae319@live.ca.invalid>
Snicker-snack! <ssnack119@g00glema1l.c0m>
Tim <tharrison77107@h0tmail.invalid>
Thursday's Leftovers <thursday.197@hotmail.com>
thoolen <thoolen@tholenbot.thorium>
thoolen <tholen01@gmail.com>
thoolen <th00len@th0lenbot.thorium>
<th00len@th0lenbot.thorium>
Willy Wonka <w.wonk1028_x@gmail.xyz>


[toc] | [prev] | [next] | [standalone]


#8069 — Murphy = Troll [DO NOT FEED]

Fromthoolen <th00len@th0lenbot.thorium>
Date2011-09-16 00:23 -0400
SubjectMurphy = Troll [DO NOT FEED]
Message-ID<j4uj07$v8g$1@speranza.aioe.org>
In reply to#8068
On 15/09/2011 10:58 PM, murphy wrote:
NaN> Newsgroups: comp.lang.java.programmer,rec.arts.tv,news.software.readers

NaN> Paul Derbysh!e

Who is "Paul Derbysh!e", murphy? There is nobody in this newsgroup using 
that alias.

NaN> Your behavior, Paul, is beyond ludicrous in the mind of the informed
NaN> observer.

Who is "Paul", murphy? There is nobody in this newsgroup using that alias.

NaN> What it is in your head which directs your thinking of the
NaN> World out there owing you a stage littered with fools for you to toy
NaN> with at will is a total mystery, one I would wager even your shrink
NaN> struggles with.

What does your ironic remark have to do with Java, television, or 
newsreaders, murphy?

NaN> It is not the responsibility of anyone using Usenet to provide you 
with
NaN> a free psycho analysis, hand feeding you a "cure".

What does your unsubstantiated allegation of mental illness on "Paul"'s 
part have to do with Java, television, or newsreaders, murphy?

NaN> This as not only is it that the lies you publish would cloud such a
NaN> diagnosis but the worth of professional assessment in a text only
NaN> environment is as of much value (real worth) as the opinions of
NaN> one of your holed socks!

What does your unsubstantiated allegation of mental illness on "Paul"'s 
part have to do with Java, television, or newsreaders, murphy? And what 
do your ironic remarks about the futility of diagnosing mental illness 
over usenet have to do with Java, television, or newsreaders, murphy? 
That futility evidently hasn't stopped you from trying, murphy. Still 
tilting at windmills, murphy?

What does your URL have to do with Java, television, or newsreaders, murphy?

NaN> It is very clear you have not grown beyond knowing your activity is
NaN> archived, is traceable, and is yours.

What does your unsubstantiated claim have to do with Java, television, 
or newsreaders, murphy? And isn't it abundantly clear to you now, 
murphy, that no matter what you think you've found that you keep ranting 
about, *nobody cares*? Nobody is listening to you, murphy. They don't 
even disbelieve you, for the most part -- they simply *do not care*, 
murphy. You are tilting at windmills, murphy, and you don't even have an 
audience for these "heroics". It would be funny if it weren't so sad, 
murphy.

NaN> "Retahiv Oopsiscame" <roopsisc@gmail.com>
NaN> is the name you used to argue with "blmblm@myrealbox.com"

What does your claim that Oopsiscame and "blmblm@myrealbox.com" argued 
have to do with Java, television, or newsreaders, murphy? And who is 
"blmblm@myrealbox.com", murphy? There is nobody in this newsgroup using 
that address.

What does your URL have to do with Java, television, or newsreaders, murphy?

NaN> all the while leaping the thread with; "Jerry Gerrone"

Who is "Jerry Gerrone", murphy? There is nobody in this newsgroup using 
that alias.

What does your URL have to do with Java, television, or newsreaders, murphy?

NaN> "Lies, damned lies, and statistics" is most appropriate for you to 
have
NaN> some fun with.

What does your unsubstantiated claim have to do with Java, television, 
or newsreaders, murphy?

What do your URLs have to do with Java, television, or newsreaders, murphy?

NaN> Today you believe it is "safe" to pop the name again, sad mad prat.

Who is "sad mad prat", murphy? There is nobody in this newsgroup using 
that alias.

NaN> Whois "Retahiv Oopsiscame '

Who are you asking, murphy, and why do you care? Who Oopsiscame is is 
his own business and none of yours, murphy.

What does your URL have to do with Java, television, or newsreaders, murphy?

NaN> I gather even you are capable of joining the dots, Derbyshire?

Who is "Derbyshire", murphy? There is nobody in this newsgroup using 
that alias.

NaN> IP address: 76.64.158.18
NaN> Reverse DNS: bas13-kitchener06-1279303186.dsl.bell.ca.
NaN> City: Toronto, Ontario

What does that have to do with Java, television, or newsreaders, murphy?

NaN> From: Retahiv Oopsiscame <roopsisc@gmail.com>
NaN> Newsgroups: comp.lang.java.programmer
NaN> Subject: Re: Style Police (a rant)
NaN> Date: Tue, 13 Sep 2011 09:48:40 -0700 (PDT)
NaN> Message-ID:
NaN> <19a1f215-7fa0-434e-a517-c260f600b495@l10g2000yqe.googlegroups.com>
NaN> NNTP-Posting-Host: 70.54.8.115
NaN>
NaN> IP address: 70.54.8.115
NaN> Reverse DNS: bas1-ottawa10-1177946227.dsl.bell.ca.
NaN> City : Montreal, Quebec
NaN> Country : CA [Canada]

What does any of that have to do with Java, television, or newsreaders, 
murphy? So Oopsiscame is from Montreal. So what, murphy? And someone he 
argued with is from Toronto. Do you have some peculiar objection to 
Canadians arguing with other Canadians, murphy?

NaN> Give this your best shot at maths, Paul, you're the expert;

Who is "Paul", murphy? There is nobody in this newsgroup using that alias.

What does your URL have to do with Java, television, or newsreaders, murphy?

NaN> Do build the audience a picture from how it is 32 months after 
"Retahiv
NaN> Oopsiscame" posts from your neighbourhood
NaN> in "chat" with your "Jerry Gerrone" sock, the identical ID is used to
NaN> again "chat" with you mimicking the performance you put out now as
NaN> "Cthun" - not at all dismissing you are using a SMTP DNS you are not
NaN> permitted to use - what is the logical possibility of such an event
NaN> being sheer coincidence, Paul?

Who are "Jerry Gerrone" and "Paul", murphy, and what do your elaborate 
paranoid fantasies have to do with Java, television, or newsreaders? Not 
to mention your megalomaniacal delusion that you get to decide who can 
get accounts at what email hosts, murphy.

NaN> Two entirely disconnected identities being addressed by the same 
persona
NaN> who, using the same argumentative approach and the same "bait/switch"
NaN> presentation fills the group with rants of self-proclamation rants 
(airs
NaN> and graces).

What do your multiple personalities and your bait-and-switch behavior 
with off-topic news posts and paranoid rants with deceptive subject 
headers have to do with Java, television, or newsreaders, murphy?

NaN> Give up the numbers, Paul. Crunch them down.
NaN> You got all night.. and no neighbors!

Who is "Paul", murphy? There is nobody in this newsgroup using that alias.

What does your URL have to do with Java, television, or newsreaders, murphy?

NaN> "Retahiv Oopsiscame" goes on the list.

What does your list have to do with Java, television, or newsreaders, 
murphy?

[snip]

If that's a list of your enemies, it seems you've pissed off quite a lot 
of people, murphy. I counted over fifty. Perhaps you've bitten off more 
than you can chew, murphy?

    "I had 'volunteered (years back) to support those who do endeavor
     to provide free Free Usenet access, support those who offered
     subscription based Free Usenet access, nothing more than
     cooperation expected in return for what has been many
     thousands of hours of work. I note most of those I joined with
     are either deceased, severely disabled, or plain ole' MIA..
     now it is my Time. ...

     You just read my last. ...

     For those who think they see me in future times I can only wish
     you severe Tinnitus in your dreams. For those who know me
     well (eMail, whatever) and see me, know I will be smiling also.
     It is to you I say "adieu mein frenz and adios .. grazie' [hugs]
     for all the Good Times! May you and yours always bear well
     with all Life brings you".

     /0ut"
       --murphy

And people wonder why I call them Famous Last Words.

[toc] | [prev] | [next] | [standalone]


Page 3 of 10 — ← Prev page 1 2 [3] 4 5 … 10  Next page →

Back to top | Article view | comp.lang.java.programmer


csiph-web