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


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

Re: multi-line Strings

From BGB <cr88192@hotmail.com>
Newsgroups comp.lang.java.programmer
Subject Re: multi-line Strings
Date 2012-12-11 16:25 -0600
Organization albasani.net
Message-ID <ka8c2f$jdc$1@news.albasani.net> (permalink)
References (9 earlier) <ka5pq4$5ao$1@dont-email.me> <ka5u2o$h19$1@localhost.localdomain> <ka62lb$mub$1@dont-email.me> <ka63rv$ib4$1@localhost.localdomain> <tDCxs.3405$EO2.1439@newsfe04.iad>

Show all headers | View raw


On 12/11/2012 3:01 AM, Arved Sandstrom wrote:
> On 12/10/2012 09:56 PM, Martin Gregorie wrote:
>> On Mon, 10 Dec 2012 17:35:37 -0800, markspace wrote:
>>
>>> On 12/10/2012 4:17 PM, Martin Gregorie wrote:
>>>> I've always liked the Awk and Perl default convention of delimiting
>>>> regexes with slashes: /regex/ - if their compilers can deal with this
>>>> cleanly, the Java compiler could surely do the same.
>>>
>>> Perl, especially, and "cleanly" don't belong in the same sentence.  Or
>>> paragraph.  Or solar system.
>>>
>> Yes, couldn't agree more. The only languages I've used that approach the
>> ugliness of Perl are Python (its object construction and handling are
>> every bit as nasty as Perls) and RPG II (designing an HLL to look exactly
>> like a fixed field assembler is just plain perverse).
>>
>> I'll use awk+bash in preference to Perl any day. However, Perl almost
>> certainly inherited its use of /regex/ delimiters from awk, which is a
>> fairly elegant and minimal scripting system and I do like those
>> delimiters.
>>
>> Don't forget that Perl, in its earliest form, was very obviously built by
>> mashing together a lot of Bourn Shell syntax with bits nicked from awk
>> and sed and completed by shovelling in the most useful bits of several
>> small UNIX utilities. Larry Wall has always acknowledged that as being
>> its origin. Its got a bit more structured and usable since then, but IMO
>> its still damned ugly.
>
> I'm not all that religious about any language, but let's spread the lack
> of love around - Java can be awesomely ugly when it hits a problem it's
> not suited for. And it often doesn't compete nearly as well as, say,
> Perl or Python, if it's in a problem realm where it results in 3x or
> more code to solve a given problem.
>

same here, mostly not very language religious (and use several 
languages, although admittedly the bulk of it is written in C and some 
C++, 1).

1: C (and to a lesser extent C++) is fairly good for infrastructural 
code, but sadly, using it itself seemingly creates a need for large 
amounts of infrastructural code (and, as well, the "libraries" space is 
often very fragmentary, and 3rd party libraries are very much often "use 
at your own risk"). (a multi platform project also ends up with a lot of 
"portability boilerplate" as well).


in contrast, Java is much better for tasks which involve "using things 
provided by the class library" (or, at least, this has been my 
experience). a big comprehensive library at some cost that writing code 
for things not provided by the library is a bit more painful (partly due 
to the languages' relatively minimalist semantics, vs, say, C or C++).

C# is a little more of a compromise, but has a big drawback of being 
tied mostly to Windows and .NET (portability in C# is not entirely 
non-existent, after all there is Mono, .GNU, ..., but is not exactly a 
strong area for the language either...).


me remembering a recent example, looking where a person tried writing an 
H.264 codec in Java, and apparently gave up partly through (though, as 
an external observer, one can't be sure if this was more due to the 
general pain of writing an H.264 codec, or the specifics of writing an 
implementation in Java).

(admittedly, it is bad enough writing these sorts of things in C#, and 
Java would pose some additional issues, as in many ways they run at-odds 
with the language-design choices).


sadly, a lot is a case where choices made which may offer benefits in 
one area come at costs in another area.


not sure if anyone will try to argue all this.


> I just now close-of-business yesterday finished a chunk of code that
> despite some 15 years of working with Java isn't anything but ugly...and
> I stipulate that it's not an uncommon ugly as far as Java and certain
> types of problems go. Very complex SQL so a native JPA query that needs
> to be assembled, trees using the Swing implementations, enumerations,
> iterators, *lots* of list operations, *lots* of conditional intermediate
> getter and setter operations to build the list of final result objects
> to pass back to XStream for the REST call response...it's not pretty.
>
> In a problem like this Java becomes kludgy because of death by a
> thousand cuts. You do everything best practise (or decent practise) and
> you still end up with hard-to-read clumsy code: no type inference so too
> much verbiage, no C#-style properties so dozens of getter/setter usages
> start looking pretty opaque...a Perl or Python equivalent _would_ look
> considerably better. Ironically even the use of longer, descriptive
> variable and method names can be self-defeating in this scenario - it's
> just more bloat.
>

pretty much...


descriptive variable-names can be a double-edged sword.

in some cases, they can make the code "more obvious", especially if the 
variable has "some well-defined meaning readily expressible in words".

in many cases, there are no words to express just what exactly this 
variable is being used for, or it is being used as part of a big/hairy 
set of mathematical expressions, making the use of a longer variable 
name considerably more painful (like a single calculation spread over 4 
or 5 lines).

there are still cases where multiple lines are needed for some 
calculations, even with single-letter variables.


usually, using longer method names is not as big of an issue, since IME 
method calls tend to be used at a lower density than that of variables, 
and also because the choice of method names often has a lot more effect 
on code outside the class, whereas variable names are typically much 
more local to a given class or method.


my policy in general though is more often to not rigidly adhere to any 
particular conventions, but rather to adjust conventions more "as they 
make sense for a particular piece of code" (though sometimes this can 
get at-odds with an IDE which does auto-formatting...).


> And it's telling that you have libraries like StringUtils or Google
> Guava that supply a list "join" method if you don't care to write your
> own loop to handle it. Another one of those thousand cuts that adds to
> the bloat.
>
> I'll probably end up refactoring some of the code - but in another
> language like Perl or Python or Scala or Ruby or C# I'd not have to
> refactor in the first place.
>

yep, could be.

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


Thread

multi-line Strings bob smith <bob@coolfone.comze.com> - 2012-12-10 08:22 -0800
  Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-10 11:43 -0500
    Re: multi-line Strings Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-12-10 09:36 -0800
    Re: multi-line Strings markspace <-@.> - 2012-12-10 09:42 -0800
      Re: multi-line Strings Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-12-10 09:51 -0800
        Re: multi-line Strings markspace <-@.> - 2012-12-10 10:27 -0800
          Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-10 13:43 -0500
            Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-10 15:08 -0500
              Re: multi-line Strings markspace <-@.> - 2012-12-10 13:05 -0800
              Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-10 16:22 -0500
                Re: multi-line Strings markspace <-@.> - 2012-12-10 13:36 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-10 16:52 -0500
                Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-10 18:04 -0500
                Re: multi-line Strings Martin Gregorie <martin@address-in-sig.invalid> - 2012-12-11 00:17 +0000
                Re: multi-line Strings markspace <-@.> - 2012-12-10 17:35 -0800
                Re: multi-line Strings Martin Gregorie <martin@address-in-sig.invalid> - 2012-12-11 01:56 +0000
                Re: multi-line Strings markspace <-@.> - 2012-12-10 18:00 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-10 21:16 -0500
                Re: multi-line Strings Martin Gregorie <martin@address-in-sig.invalid> - 2012-12-11 22:21 +0000
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-10 22:12 -0600
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-11 05:01 -0400
                Re: multi-line Strings markspace <-@.> - 2012-12-11 09:46 -0800
                Re: multi-line Strings Martin Gregorie <martin@address-in-sig.invalid> - 2012-12-11 22:26 +0000
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-11 16:25 -0600
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-10 21:10 -0500
                Re: multi-line Strings Martin Gregorie <martin@address-in-sig.invalid> - 2012-12-11 22:31 +0000
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:30 -0500
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-15 03:35 -0600
                Re: multi-line Strings "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-15 11:54 +0000
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-15 08:53 -0500
                Re: multi-line Strings Jim Janney <jjanney@shell.xmission.com> - 2012-12-16 12:19 -0700
                Re: multi-line Strings "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-18 13:24 +0000
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-16 17:21 -0800
                Re: multi-line Strings "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-18 14:03 +0000
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-18 09:05 -0800
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-17 20:13 -0400
                Re: multi-line Strings "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-18 13:38 +0000
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-19 19:48 -0400
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 21:07 -0500
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-19 08:26 -0600
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 16:36 -0500
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-21 12:51 -0600
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-21 14:05 -0600
                Re: multi-line Strings "Peter J. Holzer" <hjp-usenet2@hjp.at> - 2012-12-15 18:22 +0100
                Re: multi-line Strings Robert Klemme <shortcutter@googlemail.com> - 2012-12-16 00:34 +0100
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-16 02:56 -0600
                Re: multi-line Strings Robert Klemme <shortcutter@googlemail.com> - 2012-12-16 14:07 +0100
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-16 13:44 -0600
                Re: multi-line Strings "Peter J. Holzer" <hjp-usenet2@hjp.at> - 2012-12-16 17:43 +0100
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:37 -0500
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-10 22:03 -0600
                Re: multi-line Strings Joshua Cranmer <Pidgeot18@verizon.invalid> - 2012-12-11 10:43 -0600
                Re: multi-line Strings Martin Gregorie <martin@address-in-sig.invalid> - 2012-12-11 22:44 +0000
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-10 21:09 -0500
      Re: multi-line Strings Sebastian <sebastian@undisclosed.invalid> - 2012-12-12 10:40 +0100
        Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-12 20:28 -0500
    Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-10 13:42 -0600
  Re: multi-line Strings "William Bonawentura" <nie@ma.mnie.pl> - 2012-12-11 07:58 +0100
    Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-11 10:08 -0500
      Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-11 09:41 -0600
      Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-11 15:02 -0600
        Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:27 -0500
        Re: multi-line Strings Joshua Cranmer <Pidgeot18@verizon.invalid> - 2012-12-14 23:23 -0600
          Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-15 02:56 -0600
    Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-11 16:31 -0500
      Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-11 17:07 -0600
        Re: multi-line Strings Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-12-11 15:31 -0800
          Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-11 19:41 -0600
      Re: multi-line Strings "William Bonawentura" <nie@ma.mnie.pl> - 2012-12-13 07:43 +0100
        Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-12 23:09 -0800
        Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-13 06:34 -0400
          Re: multi-line Strings "William Bonawentura" <nie@ma.mnie.pl> - 2012-12-14 07:35 +0100
            Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-14 02:44 -0600
              Re: multi-line Strings "William Bonawentura" <nie@ma.mnie.pl> - 2012-12-14 11:48 +0100
                Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-14 05:10 -0600
                Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-14 15:18 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:16 -0500
            Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-14 05:55 -0400
              Re: multi-line Strings "William Bonawentura" <nie@ma.mnie.pl> - 2012-12-14 11:50 +0100
                Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-14 05:12 -0600
                Re: multi-line Strings Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-12-14 11:24 -0800
                Re: multi-line Strings markspace <-@.> - 2012-12-14 11:47 -0800
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-14 12:26 -0800
                Re: multi-line Strings markspace <-@.> - 2012-12-14 12:53 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:36 -0500
                Re: multi-line Strings "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-15 12:06 +0000
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:23 -0500
                Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-15 08:16 -0600
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:24 -0500
                Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-15 13:36 -0800
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-16 17:36 -0800
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-14 12:30 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:43 -0500
                Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-14 17:36 -0500
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:46 -0500
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-16 04:29 -0600
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-17 20:45 -0400
                Re: multi-line Strings Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-12-17 17:11 -0800
                Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-17 20:25 -0500
                Re: multi-line Strings Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-12-17 18:13 -0800
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-18 06:34 -0400
                Re: multi-line Strings Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-12-18 10:54 -0800
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-18 18:57 -0400
                Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-18 20:02 -0500
                Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-18 17:13 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:35 -0500
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-18 15:12 -0800
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-19 10:00 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:31 -0500
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:29 -0500
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-19 20:44 -0400
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 21:50 -0500
                Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-19 23:15 -0800
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-20 06:00 -0400
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-20 08:56 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:33 -0500
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-17 21:43 -0500
                Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-17 22:09 -0600
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:59 -0500
                Re: multi-line Strings "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-18 13:22 +0000
                Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-18 07:52 -0600
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:58 -0500
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-18 09:10 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:56 -0500
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-18 19:05 -0400
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:42 -0500
                Re: multi-line Strings Jim Janney <jjanney@shell.xmission.com> - 2012-12-17 22:18 -0700
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-17 21:46 -0500
                Re: multi-line Strings Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-12-17 21:01 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:46 -0500
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-17 21:51 -0500
                Re: multi-line Strings Patricia Shanahan <pats@acm.org> - 2012-12-17 19:41 -0800
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-18 19:19 -0400
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:50 -0500
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-19 05:23 -0400
                Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-19 13:25 -0800
            Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:14 -0500
            Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:14 -0500
          Re: multi-line Strings Jukka Lahtinen <jtfjdehf@hotmail.com.invalid> - 2012-12-14 23:43 +0200
            Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:20 -0500
              Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-17 20:47 -0400
  Re: multi-line Strings Jim Janney <jjanney@shell.xmission.com> - 2012-12-12 08:33 -0700
    Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-12 11:32 -0800
      Re: multi-line Strings markspace <-@.> - 2012-12-12 11:45 -0800
  Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-15 13:33 -0800
    Re: multi-line Strings Sven Köhler <remove-sven.koehler@gmail.com> - 2012-12-29 18:18 +0100

csiph-web