Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #7405 > unrolled thread
| Started by | Eric Sosman <esosman@ieee-dot-org.invalid> |
|---|---|
| First post | 2011-08-26 20:56 -0400 |
| Last post | 2011-08-31 00:31 +0200 |
| Articles | 20 on this page of 182 — 33 participants |
Back to article view | Back to comp.lang.java.programmer
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 →
| From | Lew <lewbloch@gmail.com> |
|---|---|
| Date | 2011-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]
| From | Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> |
|---|---|
| Date | 2011-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]
| From | Wanja Gayk <brixomatic@yahoo.com> |
|---|---|
| Date | 2011-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]
| From | Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> |
|---|---|
| Date | 2011-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]
| From | Wanja Gayk <brixomatic@yahoo.com> |
|---|---|
| Date | 2011-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]
| From | Cthun <cthun_117@qmail.net.au> |
|---|---|
| Date | 2011-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]
| From | Wanja Gayk <brixomatic@yahoo.com> |
|---|---|
| Date | 2011-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]
| From | Arne Vajhøj <arne@vajhoej.dk> |
|---|---|
| Date | 2011-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]
| From | Retahiv Oopsiscame <roopsisc@gmail.com> |
|---|---|
| Date | 2011-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]
| From | Cthun <cthun_117@qmail.net.au> |
|---|---|
| Date | 2011-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]
| From | Retahiv Oopsiscame <roopsisc@gmail.com> |
|---|---|
| Date | 2011-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]
| From | "Cthun" <cthun_117@qmail.net.au> |
|---|---|
| Date | 2011-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]
| From | Cthun <cthun_117@qmail.net.au> |
|---|---|
| Date | 2011-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]
| From | Lew <lewbloch@gmail.com> |
|---|---|
| Date | 2011-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]
| From | Cthun <cthun_117@qmail.net.au> |
|---|---|
| Date | 2011-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]
| From | Cthun <cthun_117@qmail.net.au> |
|---|---|
| Date | 2011-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]
| From | Retahiv Oopsiscame <roopsisc@gmail.com> |
|---|---|
| Date | 2011-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]
| From | Cthun <cthun_117@qmail.net.au> |
|---|---|
| Date | 2011-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]
| From | "Cthun" <cthun_9112011@qmail.net.au> |
|---|---|
| Date | 2011-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]
| From | thoolen <th00len@th0lenbot.thorium> |
|---|---|
| Date | 2011-09-16 00:23 -0400 |
| Subject | Murphy = 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