Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-4041-8081-

Is Java the only practical choice for webdev?

Name: Anonymous 2012-04-27 16:10

All other languages are either not compiled languages with static typechecking or have too few eligible users.  C# would also be an option if it wasn't Windows-only.

Name: Anonymous 2012-04-27 16:29

Name: Anonymous 2012-04-27 17:14

>>2
I don't think there are enough users that you'd be able to hire anyone.  And in that case I might as well use Haskell.

Name: Anonymous 2012-04-27 17:24

People who've only had experience with Java and Cocktothorpe should not feel qualified to make any pronouncements on the merits and demerits of static versus dynamic typing.
The only realistic languages for web development are Python and Ruby.

Name: Anonymous 2012-04-27 17:43

>>4
Having a program fail at runtime because of something a compiled language would have caught is not acceptable for anything.

Name: Anonymous 2012-04-27 18:06

>>4
... and Perl and PHP and node.js

>>3
Scala is easy enough to learn if you have experience in Java. Also you can use all your Java codebase in Scala projects.
Haskell is MUCH harder (so hard that i quit when trying to learn it, by lack of real motivation i guess, or maybe was all that time working on Burger King)

>>1
http://www.mono-project.com/Main_Page

Name: Anonymous 2012-04-27 18:09

>>6
Perl
PHP
Mono
Haskell so hard that i quit when trying to learn it
You must be a Redditor.

Name: Anonymous 2012-04-27 18:10

>>5
Having a program fail at runtime because of something a compiled language would have caught is not acceptable for anything.
This is what Java users really believe.

Name: Anonymous 2012-04-27 18:21

>>8
Care to name a benefit of dynamic typing?

Name: Anonymous 2012-04-27 18:31

>>9

flexibility

Name: Anonymous 2012-04-27 18:33

>>10
But could you name a benefit of dynamic typing?

Name: Anonymous 2012-04-27 18:45

>>11
Not caring about floating point or typecastings

Name: Anonymous 2012-04-27 18:51

>>12
Automatic type conversion and type inference. Could you name a benefit of dynamic typing though?

Name: Anonymous 2012-04-27 19:07

>>13
Neither of which Java actually has.
Weak typing is worse than dynamic typing in terms of maintainability and predictability.

Name: Anonymous 2012-04-27 19:14

statically typed BBcode, running on virtual machine written in PERL.EXE.

Name: Anonymous 2012-04-27 19:15

lol, lol, and again lol. 1024 times lol.

Name: Anonymous 2012-04-27 19:21

Static typing confuses syntax and semantics.
What's the point of being forced to implement java.lang.Comparator and write a compareTo method just so I can  if that method can return any int, even if it violates reflexivity, anti-symmetry, or transitivity? What ``safety'' is actually gained?
Fucking nothing. All that you've gained is verbosity and unnecessary hassle. And a lack of flexibility that required the additional creation of java.util.Comparator.

The fact that nearly every ``statically'' typed language feels the need to poorly reinvent dynamic typing through ``generics'' shows what a sham it really is.

Name: Anonymous 2012-04-27 19:29

>>14
Don't care about Java. It doesn't represent the end-all be-all of static typing. Weak typing is better than dynamic typing, but only because dynamic typing is the absolute worst system to ever be invented.

Name: Anonymous 2012-04-27 20:21

>>18
You don't even know what any of the words you use mean.

Name: Anonymous 2012-04-27 20:21

Perl6 does it right, allowing you to choose the typing you need:

en.wikipedia.org/wiki/Perl_6#A_type_system

Gradual typing :
ecee.colorado.edu/~siek/gradualtyping.html

Name: Anonymous 2012-04-27 20:53

>>17
if that method can return any int, even if it violates reflexivity, anti-symmetry, or transitivity
All data ultimately resolves to a number. That is the nature of information.
What ``safety'' is actually gained?
You will have to go out of your way to do work with data that have been defined as different data types as the compiler would normally warn the user about it.
All that you've gained is verbosity and unnecessary hassle.
You should design what data you'll use during the system design phase. Writing code should be the easiest part of software development
The fact that nearly every ``statically'' typed language feels the need to poorly reinvent dynamic typing through ``generics'' shows what a sham it really is.
Is there anything wrong with making a tool more flexible and more safe at the same time?

Name: Anonymous 2012-04-27 20:55

Name: Anonymous 2012-04-28 1:27

Writing CGI in C is easy and fun.  Templating is piss-easy with lex.

It's easy to implement SCGI if you need ENTERPRISE WEB 2.0 CLOUD SCALABILITY.

http://fossil-scm.org/ is a good example of a C web program.

Name: Anonymous 2012-04-28 2:49

compiled
Don't confuse ``compiled'' with static manifest typing. Java is about as compiled as JavaScript (many interpreters compile scripts into an internal intermediate code before interpreting it). You hardly ever run what the compiler generates. Instead the output is fed to the JIT which takes on the tedious job of turning the horrible JVM byte code into somthing that a register machine understands (JVM bytecode is pretty easy to implement, but is awful as an intermediate language).

All data ultimately resolves to a number. That is the nature of information.
Firstly, you missed the point that >>17 was making. What if you don't obey (by mistake) the rules that are only described in the documentation? There's compile time safety for returning different numbers when comparing two objects twice.

Secondly, all data don't ultimately resolve to a number. What you fail to see is that you can find an isomorphism between any data and natural numbers (and it goes both ways: I can represent numbers with my fingers when I count them, but you wouldn't say that my digits are digits).

Name: Anonymous 2012-04-28 3:48

All data ultimately resolves to a number. That is the nature of information.
/prog/'s philosophy of mathematics:
Everything resolves to a register value of today's word size.

Name: Anonymous 2012-04-28 12:11

>>25
You could have used an Universal Turing Machine instead, the size of the memory available isn't that relevant.

Name: Anonymous 2012-04-28 20:47

>>1
What the fuck makes you think that? No, it isn't. Seriously, what the fuck are you smoking?

Even PHP can be ENTERPRISE if you want. But the real enterprise ``bullshite" is at node.js, jquery and other javascript ``bullshites".

Name: Anonymous 2012-04-28 20:50

>>2
Holy fuck that jew nose.

Name: Anonymous 2012-04-28 22:21

>>24
Secondly, all data don't ultimately resolve to a number. What you fail to see is that you can find an isomorphism between any data and natural numbers
Yo'ure a fucking idiot.

Name: Anonymous 2012-04-28 23:21

How is he an idiot? ``Everything resolves to a java int'' is stupid.

Name: Anonymous 2012-04-29 0:42

>>30
everything resolves to a bigint

Name: Anonymous 2012-04-29 1:12

Every possible instance of an object must have a unique encoding in binary, so there needs to be a one to one function f: X -> N, where X is the set of all possible instances of the object, and N is the natural numbers. Or you could define it to map to the set of all finite length bit strings.

But I don't hink this has much bearing on dynamic typing versus static typing. Sure everything running on what we use for computers must have some encoding in binary, but that does not have an impact on the objects themselves, aside from how much memory they consume or how much time it might take to process them and the information they contain. It can be useful to be able to prove that you will only be dealing with a certain type of object at a certain point in your program. That might not be enough, but it is a start at least.

Name: Anonymous 2012-04-29 3:14

Everything resolves to an object.
Its objects all the way down to my anus.

Name: Anonymous 2012-04-29 3:36

you can run c# on mono. also, >>17 is retarded. dynamic typing is a poor way to address the problem of many data structures manipulating data in similar fashions. static typing is about reasoning through your program more than it is about safety.

Name: Anonymous 2012-04-29 7:09

>>34
Is that even relevant to the topic, or is it just your way of saying ``I haven't understood >>17''?

Name: Anonymous 2012-04-29 9:47

>>34
mono
Stop posting.

Name: Anonymous 2012-04-29 11:21

>>32
Yes, yes, everybody knows that finite bit strings are countable. This is discussed here only because >>21 didn't understand what >>17 said, shown in his reply

if that method can return any int, even if it violates reflexivity, anti-symmetry, or transitivity
All data ultimately resolves to a number. That is the nature of information.

which had nothing to do with what was argued.

Manifest typing makes the job easier for the compiler, since it might be nearly impossible in some cases for it to prove that a function will only ever be called with data that has an inferred structure. Manifest typing is also sometimes useful to limit the generality of a function so that it won't allow inputs that don't make sense.

Name: Anonymous 2012-04-29 13:06

java on .net rails

Name: Anonymous 2012-04-29 13:46

>>37
>Yes, yes, everybody knows that finite bit strings are countable.

courses.csail.mit.edu/6.042/fall11/slides4m.pdf

Name: Anonymous 2012-04-29 13:47

Name: Anonymous 2012-04-29 13:55

Name: Anonymous 2012-04-29 14:23

>>9
you get to use javascript

Name: Anonymous 2012-04-29 14:25

>>39
>>40
And this is why I come to proggles

Name: Anonymous 2012-04-29 14:33

>>43
For people who don't understand the implications of the things they link to?

Name: Anonymous 2012-04-29 14:42

>>39
Do you really need a bullet point from a MIT slide, typeset in comic sans, to tell you that finite bit strings are countable?

Name: Anonymous 2012-04-29 15:36

>>45
Look at >>40 you idiot.

Name: Anonymous 2012-04-29 15:50

>>46
Look at >>40 yourself. Finite bit strings are countable, and none of the search results refute that.

Name: Anonymous 2012-04-29 16:47

>>47
No shit. But they are also uncountable.

Name: Anonymous 2012-04-29 16:58

>>48
Your dumb.

Name: Anonymous 2012-04-29 17:00

>>48

You are assuming
U=uncountable A=countable.

In fact, U=all possible sets A=countable A`=uncountable.

Name: Anonymous 2012-04-29 17:01

>>49
Eh? Google refutted your dumbass statement. Now get lost you no talent programming bitch.

Name: Anonymous 2012-04-29 17:02

>>49
And just for the record, the word is "You're". Man, I swear, your grammar is as dismal as your progamming.

Name: Anonymous 2012-04-29 17:03

>>48
His dumb.

Name: Anonymous 2012-04-29 17:10

>>48
Finite bit strings are both countable and uncountable?

Could you please explain what you think a finite bit string is?

Name: Anonymous 2012-04-29 17:10

>>53
That made no sense. Again, your grammar is as dismal as your programming.

Name: Anonymous 2012-04-29 17:11

>>54
Tell me what you do for a living because I need a good laugh.

Name: Anonymous 2012-04-29 17:13

Name: Anonymous 2012-04-29 17:23

>>57
Go scrub another toilet bitch.

Name: Anonymous 2012-04-29 17:28

For a moment it looked like we were on the verge of interesting discussion. Good thing you managed to avert that, >>58-kun.

Name: Anonymous 2012-04-29 17:29

>>59
Go mix up "your" with "you're" as you continue to make idiotic technical statementss.

Name: Anonymous 2012-04-29 17:44

>>46,48,51,52,55,56,58,60
Please, I can take no more. You had your fun. IHBT

Let's get back to discussing why static typing won't save you from everything, and why the set of errors you might avoid that dynamic typing don't save you from isn't that big.

Name: Anonymous 2012-04-29 17:46

>>61
No. Let's get back to discussing why you mix up "your" with "you're".

Name: Anonymous 2012-04-29 18:00

>>39
comic sans
I can't take this seriously.

Name: Anonymous 2012-04-29 18:06

>>61
Static typing, assert() and ENTERPRISE GRADE getters and setters are all you need for maximum type safety.

Now fuck off, ``faggot".

Name: Anonymous 2012-04-29 18:16

>>64
Now, this is more like it.

Name: Anonymous 2012-04-29 18:24

>>64
Saying you need static typing for type safety is tautological.
Static typing and ``type safety'' go from merely pointless to actively harmful when you interact with code other people (including past you) have written; it offers no real advantages and requires you to spend more time reading documentation and useless type signatures. Duck typing offers great flexibility and all the safety that's actually relevant.

Name: Anonymous 2012-04-29 18:25

The set of all finite length bit strings can be enumerated as folows:

*the empty string*
0
1
00
01
10
11
000
001
010
011
100
101
110
111
0000
0001
...

So there is a one to one correspondence between the set of all natural numbers and the set of all finite length bit strings.

But the set of all infinite length bit strings is uncountable, and has the same cardinality as the set of all subsets of the set of all natural numbers. The correspondence between an infinite bit string and a subset of the natural numbers can be established as follows:

Suppose < b_n > is an infinite length bit string, where b_i is the ith bit. Then < b_n > corresponds to a subset of the natural numbers, A, where is is defined as:

A natural number n is in A if and only if b_n is 1, and n is not in A if and only if b_n is 0.

The infinite length bit string < b_n > can be thought of as a look up table for membership function of A.

Name: Anonymous 2012-04-29 18:33

static typing is fucking shit. only faggots and queers use it.

Name: Anonymous 2012-04-29 19:03

>>66
I agree with you when people use types that promise that the type must store certain fields within itself. There is no way to know that the data types will always contain those fields in the future. Some implementations of the data type might delagate storage of the fields to other data types, and still be able to provide the functionality required for the using code. The only difference is that it might take a different size in memory, or it might require the usage of virtual functions to invoke the interface it provides. So this is a big deal in a language like seeples, but it should never matter in languages like Java. In an environment like that, all methods are virtual and it isn't possible to explicitly allocate an object inside of an array, or on the stack, or in a byte buffer, although you can use encodings and then instantiate the object from the encoding.

But I think static typing of the interfaces is useful for keeping track of what is going on, and what things. By looking at the interface an object implemnts, and looking up the documentation of the interface, you then know what you can do with this object. It is easy to lose track of what is what and what you can do with what in a large project using a dynamically typed langauge, and if there are no comments that indicate what the types actually are.

Name: Anonymous 2012-04-29 19:11

>>69
why does the entire language need to be dynamically typed? just look at lisp, you can make certain things "staticky" by using an OOP library

Name: kodak_gallery_programmer !!kCq+A64Losi56ze 2012-04-29 20:27

And the special olympics of computer science continues...

Name: Anonymous 2012-04-29 20:54

>>71
Kodak-san, I don't think the special olympics of computer science will ever stop.

Name: Anonymous 2012-04-30 0:32

>>71
go scrub another undefined behaviour you mental toilet

Name: Anonymous 2012-04-30 6:51

By looking at the interface an object implemnts, and looking up the documentation of the interface, you then know what you can do with this object.
Yes, it's a good idea to separate the interface from implementation, and only expose a limited set of procedures that can be called. But you don't need manifest typing for that.

A class definition is one way to both minimally document the interface of a module and give its use some restrictions. But if the interface returns an int, and only the documentation specifies which integer values are allowed, then static typing doesn't save you from returning nonsensical values.

Name: Anonymous 2012-04-30 12:17

>>74
Using ints for return values is like using PHP for web development.

Name: Anonymous 2012-04-30 13:39

>>75
I'm sure returning an instance of java.util.Posets.RelativeOrdering is better. You could use it like this:

public static Object[] sortTuple(Object o1, Object o2) {
    java.util.Posets.RelativeOrdering ro = java.util.Comparator(o1, o2);
    if (ro == java.util.Posets.RelativeOrderingConstants.Equal) {
        return {o1, o2}; /* Stable sort */
    } else if (ro == java.util.Posets.RelativeOrderingConstants.GreaterThan) {
        return {o2, o1};
    } else if (ro == java.util.Posets.RelativeOrderingConstants.LessThan) {
        return {o1, o2};
    }
}


SO BEAUTIFUL

Returning ints to signify partial order is an established practice and perfectly acceptable. Wrapping it in another type (for ``clarity'') is ENTERPRISE over-engineering, and doesn't even solve the problem mentioned.
Type systems aren't the answer here; what's needed is a powerful way to make arbitrary invariants explicit, but as far as I know, no general-purpose programming language has the ability to do that at this point (SQL constraints come closest, I guess).

The reason for that is that it isn't actually a problem, because programmers (even Java programmers) can be expected to have a vague idea of what they're doing. It's unnecessary for broadly the same reason static typing is: it attempts to solve a non-problem.
The difference with static typing is that it would actually succeed.

Name: Anonymous 2012-04-30 16:40

>public static void

Name: Anonymous 2012-05-01 6:37

>>76
A few suggestions for improvements:

1. That probably doesn't emit a warning if you forget to check any of the return values, in GCC you can use switch...case with enums (but those are ints so you might be getting some other return value), and in GHC you can use pattern matching (this is optimal).

2. Names are too Enterprise, they should be shortened.  In GHC you have just data Ordering = LT | EQ | GT.

Name: Anonymous 2012-05-01 7:55

>>78
OH GOD, I-I'M CUMMING, UGGGNNN PREMATURE OPTIMIZATION!!!

Name: Anonymous 2012-05-01 13:24

>>78
Not just GHC, but Haskell in general. The great thing about it is that the type system can just replace those names with arbitrary ints or whatever the fastest way of doing it on any particular platform is.

Name: Anonymous 2012-05-01 14:05

>>75
You mean it's pretty much the standard way of doing things?

Name: Anonymous 2012-05-01 14:06

Check out Wt.

Name: Anonymous 2012-05-01 14:07

>>66
I bet you think using articles in any spoken language is considered harmful/

Name: Anonymous 2012-05-01 14:09

>>76
That was ENTERPRISE quality!

Name: Anonymous 2012-05-01 14:46

>>81
Standard, and wrong.

Name: Anonymous 2012-05-01 15:41

>>80
The ``great'' thing about that is that it still doesn't solve the stated problem, you dunce.

Name: Anonymous 2012-05-01 19:36

>>80,81
What am I reading here?

Name: Anonymous 2012-05-01 20:23

DOUBLE INFINITE DUBS

Name: Anonymous 2012-05-01 20:55

is
JAVA

Name: Anonymous 2012-05-02 1:22

Java
web

http://cppcms.com/wikipp/en/page/main

http://test.fastcgi.com/drupal/

Unless you're writing for a shitty generic e-commerce website (in which case GTFO), you need performance and scalability

Name: Anonymous 2012-05-02 3:56

I can't imagine why there are people who claim Python is better than Perl for a web dev.

Name: Anonymous 2012-05-02 6:35

>>90
>CppCMS.com and CppCMS author's blogs (English, Hebrew) run on CppCMS technology.

now there's a surprise!

Name: Anonymous 2012-05-02 6:58

Perl is the  only intelligent choice.

Name: Anonymous 2012-05-02 8:30

>>90
scalability
Back to /r/enterprise, ``please"!

Name: Anonymous 2012-05-02 8:31

Java is a practical joke.

Name: Anonymous 2012-05-02 9:21

No, you can also use C

http://admin.misti.cc/files/www-server.0.0.6.tar.gz
- web server that runs position independant object files

But what can't you do in C right

Name: Anonymous 2012-05-02 9:37

Well, C and Java are both Turing compliant. So everything you can do in C, you can do in Java and vice versa.

Name: Anonymous 2012-05-02 10:24

>>97
Wrong. Java is slower than C, therefore it cannot simulate C. Turing-completeness also implies the ability to simulate time.

Name: Anonymous 2012-05-02 10:38

Check my fuckin dubs!!!!!!

Name: Anonymous 2012-05-02 10:39

check these dubs too... motherfucker

Name: Anonymous 2012-05-02 13:20

>>98
Nope.

Name: Anonymous 2012-05-02 13:44

>>97-98
This is the problem with Turing-completeness: almost nobody who feels qualified to talk about it has the faintest clue what it is.

Name: Anonymous 2012-05-02 14:15

>>102
I really laughed at Turing-compliant.

Name: Anonymous 2012-05-02 17:44

ANAL COMPLIANT

Name: Anonymous 2012-05-02 18:50

|^^^^^^^^^^^^](ノ◕ヮ◕)ノ*:・゚✧
|KAWAII TRUCK | ‘|”“”;.., ___.
|_…_…______===|= _|__|…, ] |
............”(@ )’(@ )”“”“*|(@ )(@ )*****(@

MOTHERFUCKER ONCE U BEEN HIT, U HAVE TO HIT 8 FUCKING KAWAII ASS PEOPLE! IF YOU GET HIT AGAIN YOU’LL KNOW YOUR REALLY SO FUCKING KAWAII IT'S SO FUCKING SUGOI PEOPLE WILL PISS THEIR PANTS AND SHIT BRICKS AND YOU WILL BE THE MOTHERFUCKING LORD OF THE MOTHERFUCKING KAWAII! IF YOU BREAK THIS MOTHERFUCKING CHAIN, YOU'LL BEE CURSED WITH UN*KAWAIINESS AND SHITINESS FOR 9000 YEARS SO PAS EET; HIT WHOEVER YOU THINK IS KAWAII

Name: Anonymous 2012-05-02 18:54

WE ARE GOING TO HAVE A SUPER FUN TIME! SUPER FUN TIME! WE ARE GOING TO! WE ARE! SUPER FUN! TIME! IAM JUST A LITTLE NIGGERFGAGOT PLEASE SPARE ME SOME TIME GO AHEAD AND CONVERGE YOU CONTROLLING AWESOME

Name: Anonymous 2012-05-02 18:55

YOU CONTROLLING AWESOME !YOU CONTROLLING AWESOME !

ghgshjkGDUDHSADUIHASDuihasUIDHDIUHDSAUIHDAUIshdaUIDHHDIUSHDSAAASADSADSDSDASDSADASDASDASDASdasDSADASDASDASDSDASDASDAS DASI  HAVE ANOTHING MORE ELSE GGDUIHFUHDSFUHDSIHFDSFFSFHDHUIHDSFUSS FDLOOK HIDSIUHUSHDASDUIHASD MOUSE FDSHFDSFHSDFHUIDSHUIDSHFUDSF SDSCIRSSORS SHFIODSHFIDOHDSFUIFHSDIUHDSFIHDSFIUFDHSIDHFIUFHD FACE

Name: Anonymous 2012-05-02 18:57

QUITE AN EXPERIENCE TO LIVE IN FEAR IS IT NOT
THAT IS WHAT IT IS TO BE A SLAVE

Name: Anonymous 2012-05-02 18:58

TO HAVE.NOTHING TO FEAR.IS NOHIDE.iS NOtHING FEHId/E
IF YOU HAVE NOTHING.TO.F.ERRRRRRRRRR HId/E

Name: Anonymous 2012-05-02 19:00

I MAY BE YOUR DR4EAM, BUT Y4U ARE MY REALLLLITY

Name: Anonymous 2012-05-02 19:02

CONVERGE MY ANUS
CONVERGE MY SEQUECNE
DESTROY MY TOTAL SPATIAL ORBIT UELLOW
OR-BIT YELL-LOW! CONTROLLING AWESOME! SPARE ME AN ORBIT! SPARE ME TWO! I EXISTENT

Name: Anonymous 2012-05-02 19:27

>>111
excelent trips, man

Name: Anonymous 2012-05-05 3:07

>>5
When you start actually building real web applications with proper test coverage you'll realize this is seldom the issue people make it out to be. It's one of those things that you just have to get over when you start using dynamically typed languages. And once you do you'll see why it has more pros than cons.

Name: Anonymous 2012-05-05 10:42

>>76
needs some more enterprise


interface IComparisonReciever {
  Object comparisonIsGreaterThan();
  Object comparisonIsEqual();
  Object comparisonIsLessThan();
}

interface IComparisonSender {
  Object compare(Object ob1, Object ob2, IComparisonReciever reciever);
}

class example {

  public static Object[] sortTupple(final Object[] tupple, IComparisonSender orderingDecider) {
    return (Object[])orderingDecider.compare(
        tupple[0],
        tupple[1],
        new IComparisonReciever() {
          public Object comparisonIsLessThan() {
            Object[] sortedTupple = new Object[2];
            sortedTupple[0] = tupple[0];
            sortedTupple[1] = tupple[1];
            return sortedTupple;
          }
          public Object comparisonIsEqual() {
            Object[] sortedTupple = new Object[2];
            sortedTupple[0] = tupple[0];
            sortedTupple[1] = tupple[1];
            return sortedTupple;
          }
          public Object comparisonIsGreaterThan() {
            Object[] sortedTupple = new Object[2];
            sortedTupple[0] = tupple[1];
            sortedTupple[1] = tupple[0];
            return sortedTupple;
          }
        });
  }

  public static void main(String[] args) {
    Object[] tupple = new Object[2];
    tupple[0] = new Integer(6);
    tupple[1] = new Integer(3);
    Object[] sortedTupple = sortTupple(
        tupple,
        new IComparisonSender() {
          public Object compare(Object ob1, Object ob2, IComparisonReciever reciever) {
            int int1 = (Integer)ob1;
            int int2 = (Integer)ob2;
            if (int1 < int2) {
              return reciever.comparisonIsLessThan();
            } else if (int1 == int2) {
              return reciever.comparisonIsEqual();
            } else {
              return reciever.comparisonIsGreaterThan();
            }
          }
        });
    System.out.println(tupple[0] + ", " + tupple[1] + " -> " + sortedTupple[0] + ", " + sortedTupple[1]);
  }
}

Name: Anonymous 2012-05-05 11:28

"getters" and "setters" are stupid. Is it so difficult to type:

"grandma.alive = 0;"

This is part of The Stupid Adventure defined by James "The Father of Java" Gosling.

Name: Anonymous 2012-05-05 14:03

>>113
It's great that you have the time to actually test your software, around here we have to use Indian outsourcing and hit deadlines by yesterday.

And I doubt there are and advantages of dynamic languages.

Name: Anonymous 2012-05-05 16:39

>>76
Coq. Probably also Agda.

Name: Anonymous 2012-05-05 16:56

>>115
Once again: getters and setters guard against the logic behind conceptual variables becoming more complicated in the future. In your example, killing grandma may suddenly require automatically notifying the children, which would be trivial to do in the setter, but would require changing every bit of code that could kill grandma without one.
Like every ``design pattern'', they work around language shortcoming, of which Java has a ton.

FIOC probably solves the problem of computed instance variables best. Ruby stumbles in the right direction, but falls short.

Name: Anonymous 2012-05-05 17:45

>>115
They're fucking stupid and most of the times encapsulation isn't needed.

In fact encapsulation is more useful in C where you could be doing something dangerous like using untagged unions in a struct array and you want to have some type safety.

Java would just return java.enterpriseLibraries.robust.turnKey.scalable.NullPointerExceptionFactory.

Name: bampu pantsu 2012-05-29 4:40

bampu pantsu

Don't change these.
Name: Email:
Entire Thread Thread List