Debate = and IS

  • (2 Pages)
  • +
  • 1
  • 2

16 Replies - 1479 Views - Last Post: 10 December 2010 - 01:46 PM

#1 AdamSpeight2008  Icon User is offline

  • MrCupOfT
  • member icon


Reputation: 2240
  • View blog
  • Posts: 9,411
  • Joined: 29-May 08

Debate = and IS

Posted 08 December 2010 - 09:55 AM

View Postlordofduct, on 08 December 2010 - 02:49 PM, said:

Strings are value types, so you should be using '=' like CharlieMay points out. The 'IS' operator is for checking if two object references are the same object (reference types).

Incorrect - Strings are a Reference Type. (They appear to be due the being Immutable.
Dim myString As String


Question: What is the value of MyString?

Quote

You say for values:
If 5 = 5 Then

If "hello" = "hello" Then


etc.


You say for objects:

If This Is That Then

If Me Is You Then


etc


= is for check the values are equal.
Is is for check they point the point to the same reference.
Dim StringA As String="</DREAM.IN.CODE>"
Dim StringB As String=StringA.ToUpper()
Console.WriteLine("A  = B  ({0})",(StringA =  StringB).ToString)
Console.WriteLine("A Is B  ({0})",(StringA Is StringB).ToString)
If TypeOf StringA Is String Then Console.WriteLine("A is a String")
If TypeOf StringB Is String Then Console.WriteLine("B is a String")


How would you write the code to check to see if MyString has no value. (Not the Empty String)?


Quote

Which I never really liked in VB... first off the '=' gets two jobs (assign and compare???).
And then the compare has two operators depending the job ('=' and Is). Way to complicate and obfuscate!

Assignment is easy to spot,
Imagine these two lines of code.
A = 0       ' Assign 0 to A
C = (A = B)/> ' Assign the result of an equality check, to C


The are two different types of comparisons, cause there are two very basic but different things that could be check for. As explained above.


That's why I down repped you.

This post has been edited by AdamSpeight2008: 08 December 2010 - 09:56 AM


Is This A Good Question/Topic? 0
  • +

Replies To: Debate = and IS

#2 lordofduct  Icon User is offline

  • I'm a cheeseburger
  • member icon


Reputation: 2530
  • View blog
  • Posts: 4,630
  • Joined: 24-September 10

Re: Debate = and IS

Posted 08 December 2010 - 11:08 AM

sorry, I used the wrong vocab (.Net isn't my only language). Strings are immutable. Strings 'act' as a value type in comparison. That deserves a -1? You could have just said "you may have wanted to say 'immutable'". But no I don't think that's why you downrepped me, actually your elaboration about Is and = points directly at that...

Sorry, yes I believe two types of comparison, and using the same operator for both setting AND comparing is obfuscating. You can by 'context' understand what they are, but independently you can not. It's a key method of obfuscating code is to hide intent with context.

But instead you downrepped me because I think VB through tradition holds onto practices that obfuscate code. That's my opinion, just as you have yours. Big whoop if you don't agree.

And that's why I downrepped you.






example of obfuscation where even basic context doesn't even help... for those who have been in languages other than VB, this may make more sense:

a = b = c



does this mean a is a bool equal to IF b and c are equal

or does it mean set both a and b to the value of c

In the context of VB, yes we know this is the prior. But coming from say C# or another language, it's not so evident and requires a pretty invested knowledge of VB and the scope of its context to recognize otherwise.



Alas though, I always forget, never speak negatively of the holy VisualBasic or BASIC dialect in general. For you will be denounced as a blasphemous heathen and burned at the stake. For though the VB user will concede they are not the best, they stand hardily by the idea that they're language is perfect in all respects and is undeserving of any criticism, even if in jest. These zealots are to programming as Abrahamic zealots are to religion.

I am a VB user though... am I not allowed to point out my minor annoyances with the language? I have minor annoyances with all the languages I've written. I hate that C# doesn't offer something like 'Handles' in VB, I hate that Java doesn't have a 'get/set' mechanism, I hate that PHP is complete and utter garbage, I hate that I have to create header files in C++ where I essentially duplicate large quantities of code...

This post has been edited by lordofduct: 08 December 2010 - 11:43 AM

Was This Post Helpful? 0
  • +
  • -

#3 AdamSpeight2008  Icon User is offline

  • MrCupOfT
  • member icon


Reputation: 2240
  • View blog
  • Posts: 9,411
  • Joined: 29-May 08

Re: Debate = and IS

Posted 09 December 2010 - 10:35 AM

View Postlordofduct, on 08 December 2010 - 06:08 PM, said:

sorry, I used the wrong vocab (.Net isn't my only language). Strings are immutable. Strings 'act' as a value type in comparison. That deserves a -1? You could have just said "you may have wanted to say 'immutable'". But no I don't think that's why you downrepped me, actually your elaboration about Is and = points directly at that...

Sorry, yes I believe two types of comparison, and using the same operator for both setting AND comparing is obfuscating. You can by 'context' understand what they are, but independently you can not. It's a key method of obfuscating code is to hide intent with context.

But instead you downrepped me because I think VB through tradition holds onto practices that obfuscate code. That's my opinion, just as you have yours. Big whoop if you don't agree.

And that's why I downrepped you.

example of obfuscation where even basic context doesn't even help... for those who have been in languages other than VB, this may make more sense:

a = b = c



does this mean a is a bool equal to IF b and c are equal.

or does it mean set both a and b to the value of c.

The down rep was for a complete fundamental inaccuracies, which you assert as true.

What is this snippet of C# doing?
a += b

Snippet of c# code is this doing
a += b ; a is the result of adding b to a
a += b ; a is the result of string concatenation of b to a
a += b ; attaching a delegate b to a

Which is it?

Quote

In the context of VB, yes we know this is the prior. But coming from say C# or another language,it's not so evident and requires a pretty invested knowledge of VB and the scope of its context to recognize otherwise.

Isn't that a problem with your assumption that programming language will be evaluated the same, given the same set of characters?
Context is always relevant.

Suppose I said: "Do you want a punch?"
Can be seen to be threatening, without the context it was said.
I'm holding a hole-punch and offer it to you, "Do you want a punch?".



a=b=c

What is the context of the code?
The same issues you described also are the same for C# not is it an assignment, or a comparison but it could mean is a the same reference as b.
vb.net
If a IS b



Is an assignment in C# also.
If is part of an expression then
the expression is evaluated left to right, it helps to imagine each operator enclosed in parenthesis. Eg a=b=c ((a = b ) = c)
(a = b ) return a boolean (Assuming the = operators isn't overloaded)
( =c) return the result of comparing the equality of the previous evaluation with c. (Result will be a Boolean (Assuming the = operator is not overloaded)

Quote

Alas though, I always forget, never speak negatively of the holy VisualBasic or BASIC dialect in general. For you will be denounced as a blasphemous heathen and burned at the stake. For though the VB user will concede they are not the best, they stand hardily by the idea that they're language is perfect in all respects and is undeserving of any criticism, even if in jest. These zealots are to programming as Abrahamic zealots are to religion.


So I'm a not allow to defend the VB.net programming language when someone attacks it?
Or point out fundamental errors in your vb.net programming assumptions.

I wish Microsoft had name it B# to dis associate it from its past. vb.net is not vb6

String are reference type (it inherits from System.ReferenceType if it was a Value type the you could create a nullable version of one.
It inherits from ReferenceType (MSDN vb.net language reference)
Dim ns As New Nullable(Of String)


And you're the one claiming superior programming abilities.



Quote

I am a VB user though... am I not allowed to point out my minor annoyances with the language?

Sarcastic Yes

Quote

I have minor annoyances with all the languages I've written. I hate that C# doesn't offer something like 'Handles' in VB, I hate that Java doesn't have a 'get/set' mechanism, I hate that PHP is complete and utter garbage, I hate that I have to create header files in C++ where I essentially duplicate large quantities of code...

I never said you couldn't state your annoyances.

This post has been edited by AdamSpeight2008: 09 December 2010 - 10:38 AM

Was This Post Helpful? 0
  • +
  • -

#4 lordofduct  Icon User is offline

  • I'm a cheeseburger
  • member icon


Reputation: 2530
  • View blog
  • Posts: 4,630
  • Joined: 24-September 10

Re: Debate = and IS

Posted 09 December 2010 - 10:50 AM

Be clear why don't you. Did you down rep me because I said "value type" instead of "immutable". Or did you because I said:

lordofduct said:

Which I never really liked in VB... first off the '=' gets two jobs (assign and compare???). And then the compare has two operators depending the job ('=' and Is). Way to complicate and obfuscate!



If the prior, I already said. Yep, I was wrong, sorry. Seems kind of petty to down rep me for a fairly innocuous error.

The next bit of post wasn't wrong... it compared the use of 'Is' vs '=', and accurately at that. The misuse of the words "value type" was really the only inaccuracy. (Save for checking if a String is null... I usually use the String.IsNullOrEmpty method in that case)

AdamSpeight2008 said:

= is for check the values are equal.
Is is for check they point the point to the same reference.


see? You said nearly the same thing I exemplified in my example... or was I wrong? You downrepped me because I said you should use '=' for String... ok why didn't you downrep 'CharlieMay' for saying the same thing?

But you seem to have taken a whole lot of posting time commenting about those 3 little sentences there, which really forces the implication you downrepped me for a simple "I never really liked" comment.

Let's try this with another topic... just going to replace the relevant topic.

hypothetical guy 1 said:

Which I never really liked about fish... first off the taste is so oily. And it smells the same no matter if its bad or good. Way to disguise your edibility!


hypothetical guy 2 said:

Oh no you didn't motha fucka... fish is not bad.




And what is this?

AdamSpeight2008 said:

What is this snippet of C# doing?
1
a += b

Snippet of c# code is this doing
a += b ; a is the result of adding b to a
a += b ; a is the result of string concatenation of b to a
a += b ; attaching a delegate b to a


Did I say that C# doesn't have code that can be confusing and appear obfuscated? No I didn't say that. Do you assume I'm a C# fanboy or something? I write VB, as well as other languages, and actually C# is on the lower end of the list at this point in time. What this actually does is support my statement that I have minor annoyances with almost all languages.

Key word there... 'minor'. I have 'minor' annoyances. This includes my annoyances with VB.Net, they're only minor. My annoyance with people like you who take my minor annoyances out of scale, that's a pretty grand annoyance.

AdamSpeight2008 said:

I wish Microsoft had name it B# to dis associate it from its past. vb.net is not vb6

String are reference type (it inherits from System.ReferenceType if it was a Value type the you could create a nullable version of one.
It inherits from ReferenceType (MSDN vb.net language reference)


Yep, I already said before I was wrong. Wow dude... way to NOT READ what I said.

ME from earlier:

lordofduct said:

sorry, I used the wrong vocab (.Net isn't my only language). Strings are immutable. Strings 'act' as a value type in comparisons.


I agree with you I completely mixed the words up. I MEANT to say what is called immutable, I merely said 'value type' because I've been freelancing in AS3 for a few years, in which we refer to all immutable types with the name 'value types'. Sorry, my fucking bad. I was wrong. You feel good now?

AdamSpeight2008 said:

And you're the one claim superior programming abilities.


Where the fuck did I claim that?


AdamSpeight2008 said:

I never said you couldn't state your annoyances.


You clearly reacted the other way around.

This post has been edited by lordofduct: 09 December 2010 - 11:19 AM

Was This Post Helpful? 0
  • +
  • -

#5 AdamSpeight2008  Icon User is offline

  • MrCupOfT
  • member icon


Reputation: 2240
  • View blog
  • Posts: 9,411
  • Joined: 29-May 08

Re: Debate = and IS

Posted 09 December 2010 - 11:21 AM

Quote

But you seem to have taken a whole lot of posting time commenting about those 3 little sentences there, which really forces the implication you downrepped me for a simple "I never really liked" comment.

No is doesn't. It for the information in that particular post is misinformation. Nothing more, Nothing Less.
Your reply is after an code example that demonstrate that IS and = are doing different things.

Quote

And what is this?

Did I say that C# doesn't have code that can be confusing and appear obfuscated? No I didn't say that.

Quote

Do you assume I'm a C# fanboy or something?

Nope. Read the the context of these quotes.

Quote

In the context of VB, yes we know this is the prior. But coming from say C# or another language, it's not so evident and requires a pretty invested knowledge of VB and the scope of its context to recognize otherwise

lordofduct said:

Which I never really liked in VB... first off the '=' gets two jobs (assign and compare???). And then the compare has two operators depending the job ('=' and Is). Way to complicate and obfuscate!


Assignment and comparisions are two different things in vb.net .
It is the c style languages that confuse things, in those which allow assignment mid expression.

This post has been edited by AdamSpeight2008: 09 December 2010 - 11:25 AM

Was This Post Helpful? 0
  • +
  • -

#6 lordofduct  Icon User is offline

  • I'm a cheeseburger
  • member icon


Reputation: 2530
  • View blog
  • Posts: 4,630
  • Joined: 24-September 10

Re: Debate = and IS

Posted 09 December 2010 - 11:35 AM

yes and yet other languages get by just fine with out needing two different operators to do the same thing. Compare.

And sorry, but one operator that performs 2 distinctly different jobs based on context. That's confusing.


My opinion...

but damn, my opinion must be wrong because you know... I don't know VB.Net as well as you.

This post has been edited by lordofduct: 09 December 2010 - 11:37 AM

Was This Post Helpful? 0
  • +
  • -

#7 AdamSpeight2008  Icon User is offline

  • MrCupOfT
  • member icon


Reputation: 2240
  • View blog
  • Posts: 9,411
  • Joined: 29-May 08

Re: Debate = and IS

Posted 09 December 2010 - 12:02 PM

You seem to not understand in .net there two types of equality checking;
Value
Identity

If you use the same symbol = for both, how do you know which it is doing?

In c#
if ( System.Object.ReferenceEquals(a, B)/> ) {
 Console.WriteLine(" a and b point at the same reference.");
 }



In vb.net
If System.Object.ReferenceEquals(a, B)/> = True Then
[code]
or use the keyword IS to do the Identity equality checking.
[code] 
If a Is b Then Console.WriteLine(" a and b point at the same reference.")


I'd prefer to write the second (Less Typing)

It is confusing because in some c style languages assignment mid expression.
In .net assignment is a separate statement.
In pseudo BNF it defined as
AssignmentSymbol::= '='
      Assignment::= StartOfStatement Variable AssignmentSymbol Exppression EndOfLine


And yes I do know I spelt Expression incorrectly, it to prevent <b></br> being inserted (highlight version bug)
And since it (assignment) can only happen on a separately how can it be confused with = (Compare).

C# use == for Compare because that what Java and c-style languages uses, but in the grammar it could easily replaced with = and be understood. (Given a Parser change)

This post has been edited by AdamSpeight2008: 09 December 2010 - 12:10 PM

Was This Post Helpful? 0
  • +
  • -

#8 lordofduct  Icon User is offline

  • I'm a cheeseburger
  • member icon


Reputation: 2530
  • View blog
  • Posts: 4,630
  • Joined: 24-September 10

Re: Debate = and IS

Posted 09 December 2010 - 04:48 PM

Actually I do understand that.

Doesn't mean I have to like it.

I certainly don't have to like '=', it could easily be replaced by '=='. Cause you know why? I think it's more readable. I also think using '==' in place of 'Is' with reference types is more readable as well, because it's consistent. If I need to check if something is pointing somewhere explicitly, I'll then take the explicit route, instead of having to hobble back and forth between two operators that 99% of the time accomplish the same job.

You have your opinion, I have mine. Get over it.

This post has been edited by lordofduct: 09 December 2010 - 05:00 PM

Was This Post Helpful? 0
  • +
  • -

#9 AdamSpeight2008  Icon User is offline

  • MrCupOfT
  • member icon


Reputation: 2240
  • View blog
  • Posts: 9,411
  • Joined: 29-May 08

Re: Debate = and IS

Posted 09 December 2010 - 06:12 PM

You still don't get the difference and why the same symbol can't be use for both equality checks.

How would you check the type of an object?
How would you check for a NullReference?

This post has been edited by AdamSpeight2008: 09 December 2010 - 06:19 PM

Was This Post Helpful? 0
  • +
  • -

#10 lordofduct  Icon User is offline

  • I'm a cheeseburger
  • member icon


Reputation: 2530
  • View blog
  • Posts: 4,630
  • Joined: 24-September 10

Re: Debate = and IS

Posted 10 December 2010 - 07:58 AM

explicitly...

the 'is' operator for 'type checking' sounds completely legite.

if (obj is ISomeType)



What I don't like is this... overlapping oddness.


here's vb:

use '=' to set a reference or a value
use '=' to compare if two values are the same (inconsistent w/ previous IMO)
use 'Is' to compare if two object references are the same object in memory
use 'Is' to compare if an object's type is some Type (in practice is slightly different, other languages make a clear difference between checking type and checking reference, a method I prefer)


let's see some psuedo c-like code:

//set value, set object
int value = 5;
Object obj = Factory.CreateObject();//just showing that new isn't always going to be there

//compare
if (value == 5) {}
if (obj == Factory.LastInstance) {}

//check type of
if (value is int) {}
if (obj is ISomeType) {}

//check null
if (value == null) {} //fail, int doesn't have a null state
if (obj == null) {}



IMO it's consistent. Does that mean you must like it... no, you don't have to. And I bet you have issues with it maybe, you might dislike something about this method (you voiced an opinion about checking immutable ref types, I get to that later)


Let's compare this to VB.Net
''set value, set object
Dim value As Integer = 5
Dim obj As Object = Factory.CreateObject()

''check type of
If value = 5 Then ''this inconsistency I do not prefer
If obj Is Factory.LastInstance This

''check type of
If TypeOf value Is GetType(Integer) Then
If TypeOf obj Is GetType(ISomeType) Then

''check null
If value Is Nothing Then ''fail, int doesn't have a null state
If obj Is Nothing Then ''note how the 'Is' operator satisfies all 3 jobs



The 'Is' operator satisfies all jobs for ref types. Why couldn't '=' take its place? Why can't you say

value = Nothing



couldn't the compiler understand, or be made to understand, what I'm saying? It certainly deciphers the difference between setting and comparing.

I mean really I just think it's more readable. That's all.



The only job we have missing here is testing the reference of a String with another String (or an immutable ref type vs an immutable ref type). In which case I can think of very few times I've ever needed to do this, and it's a little on the odd side. For instance if you set two independent strings to the literal "hello" they will compare the same because the literal is the same object.

In my opinion there is Object.ReferenceEquals as you said. And I don't mind being so explicit for that special case with types that sit in limbo because they're reference types that are immutable. And some languages actually have another operator for it... the explicit equality '===', which I have varying opinions about, depending the language using it.

I also have varying opinions about the 'Not' operations and have a preference toward !, such as

value != 5
obj != null

as opposed to

value <> 5 OR Not value = 5
value IsNot Nothing

It probably makes sense to tell you I come from a heavy math background and I'm used to terse 'symbols' being used through out what I'm working on. I'm anal about reducing the amount of stuff I write and soliciting 1 job to an operator. This way context doesn't change the meaning of something making it easy to read through large functions (that's algebraic functions like f(x), dx/dy, D', E(), etc). That's me.


Now are either of us right? No... we enjoy the pleasures of our own reasoning. I get slightly annoyed by what I consider inconsistencies, they aren't the way I would have done things. And I voiced a mild dislike of it, with my own valid reasons for it. And don't assume that because you think I'm wrong then thusly I "don't understand".

This post has been edited by lordofduct: 10 December 2010 - 10:05 AM

Was This Post Helpful? 0
  • +
  • -

#11 AdamSpeight2008  Icon User is offline

  • MrCupOfT
  • member icon


Reputation: 2240
  • View blog
  • Posts: 9,411
  • Joined: 29-May 08

Re: Debate = and IS

Posted 10 December 2010 - 10:10 AM

Quote

use '=' to set a reference or a value
use '=' to compare if two values are the same (inconsistent w/ previous IMO)

How is it inconsistant?

Assignment
Dim x As Integer = 10
Dim y As Integer = 12
Dim z As Boolean = False
z = x = y


In an assignment the first '=' is the assigment operator, the right hand-side of it is the expression.
The second = is comparision equals as in an expression.

Quote

''set value, set object
Dim value As Integer = 5
Dim obj As Object = Factory.CreateObject()



These are Assignments (Correct)

Quote

''check type of
If value = 5 Then ''this inconsistency I do not prefer



If value = 5 Then
The red parts are a statement, in this case an if statement.
Inside that statement is the green part which is an expression that is evaluated (to a Boolean) to determine whether the next statement should be run.
Since the = is use inside an expression is an comparison and not an assignment statement.

So it is not inconsistent.

Quote

If obj Is Factory.LastInstance Then


This checking to see if the reference in variable is pointing to the same object reference as the variable Factory.LastInstance.

If you wanted to compare the values then use
If obj = Factory.LastInstance Then




Quote

''check type of
If TypeOf value Is GetType(Integer) Then
If TypeOf obj Is GetType(ISomeType) Then


There no need for the GetType() method in this context.
''check type of
If TypeOf value Is Integer Then
If TypeOf obj Is ISomeType Then


but if you remove the TypeOf and it changes the meaning .
If obj Is GetType(ISomeType) Then


You are now checking to see if obj the same object as the type. Not the same thing

''check null
If value Is Nothing Then ''fail, int doesn't have a null state
If obj Is Nothing Then ''note how the 'Is' operator satisfies all 3 jobs


vb.net error message for the first
'Is' operator does not accept operands of type 'Integer'. Operands must be reference or nullable types

If you had used '=', then meaning is subtly different if it the value is value type then is the default value of the type (Typically 0) if it a reference type then the Nothing is the absence of a reference (ie Null)

vb.net's IS different to C#'s (vb.net version is a Mathematical purer.)
Don't blame me for that, it Erik Meijers for vb.net and Anders Hejlsberg for C# what 99% of user expect.
(Personally I prefer to have the Mathematical purity)

Quote

Use 'Is' to compare if two object references are the same object in memory
use 'Is' to compare if an object's type is some Type (in practice is slightly different, other languages make a clear difference between checking type and checking reference, a method I prefer)

But there is a clear difference.
If TypeOf obj Is String
' Type Checking
If obj Is String
Identity Check (ie Same References)

You need to take more context into account, and not each symbol on its own.

If did have a unique symbol for every possible operation in every possible context, I think the language wouldn't be used.
It be overly complex and hard to learn, akin to CISC vs RISC processors. (I think RISC is winning in terms of number in use. ie ARM chips.)
Let me give you a good a example why context is needed.
The character < at the moment is vb10 has at least 18 possible meanings(That's task for the curious) without context, take in context it has one or is a parsing error.

This post has been edited by AdamSpeight2008: 10 December 2010 - 10:12 AM

Was This Post Helpful? 0
  • +
  • -

#12 lordofduct  Icon User is offline

  • I'm a cheeseburger
  • member icon


Reputation: 2530
  • View blog
  • Posts: 4,630
  • Joined: 24-September 10

Re: Debate = and IS

Posted 10 December 2010 - 10:29 AM

sorry, yes the GetType wasn't necessary, it is in other places and I'm just used to typing it. (an oddity that bothers me, and you don't need to explain when I do and don't, I get it... we make mistakes sometimes when typing quickly... blargh).

and yes the Is with int fails... because it's not allowed... that's why I put the comment 'fails'. It was there for consistency with the psuedo c-like code.

And yes Is in the case of TypeOf is slightly different in the sense of context. That has been part of my point.



As for = vs =, I think it's inconsistent, because in one job (depending context) it does one thing, and in another it does a different thing. Now yes, if you read the context you can decipher which it is that it's doing. I didn't say it was illogical, I just said I find it inconsistent for the operator to do two completely different things.

I understand context, I take it into account, every time I write code I take it into account. It's how I make money, so I have to know it. My annoyance is that I prefer a different method... not that I'm a hurka durka who just doesn't get it.




I mean seriously dude, you can validate your reasons all you want, and I can validate mine all I want. YOU HAVE YOUR OPINION, I HAVE MINE.

Do you see me trying to convince you otherwise of yours? No, I'm validating why I believe what I believe. Hence my reuse of the words "I think" "In my opinion" "I believe". I also express that I respect your opinion in saying "you may not agree", "we may have varying opinion", "Now are either of us right? No... we enjoy the pleasures of our own reasoning."

What the fuck is the problem?


So I'm done, if you can't realize that I understand, I'm not a fucking idiot, and that I just happen to have my own opinion, and I fully respect yours, I just don't agree with yours. I'm outs... this isn't a debate (I love that you called it one), this is the both of us screaming our opinion at each other... yet you can't get it through your head that IT'S OPINION!



you wanna know why I think it's a moot point. Because there's a huge crowd of people who agree with me and dislike the design of VB.Net... some of whom use it, some of whom do not. There is also a large group of people who do prefer it (and you are one of them, though I shutter to challenge you on that VB is the more math pure...). And it serves the purpose of being how those who like it get to use it. Thing is I have to use it, and this is one of the parts that I do not like. I'm not asking Microsoft to change it, I'm not telling you that you need to do it my way. In that case why even have different languages.

I'm just saying I don't like it. If I seriously need to break down and define every single part of the object I've formed an opinion on, and show the I understand it from the tiniest of rare applications to the most generic... I'm going to go crazy.


It's as if I said "I don't like Inception"

"Well you didn't see it all the way then"

"Yes I did, I didn't like it. This part annoyed me. *loosely explain scene*"

"Yes but you didn't get what that part meant. *explain scene in more depth, explain how it relates to other scenes*"

"Yes I did, I just didn't like it... because specifically this and this. *explain scene a little more and explain other scenes as well*, I also don't like those other scenes"

"No, it means this. *explain in even greater depth, and reiterate in slightly different manner with minor mistake fixes*"

"Yeah I know, and I didn't like it for those reasons. *highlight the opinions I states as opinions and validate that we have varying opinion*"

"Yeah but you're wording it ever so different then me. *repeat own personal opinion as if it should be obvious you're right, because if you just look at it this way it makes sense*"

"Yeah but I still didn't like it. It's not a matter of if it makes sense, it's a matter of I don't like it."

"But I do."

"Good for you!"

This post has been edited by lordofduct: 10 December 2010 - 10:53 AM

Was This Post Helpful? 0
  • +
  • -

#13 raziel_  Icon User is offline

  • Like a lollipop
  • member icon

Reputation: 464
  • View blog
  • Posts: 4,255
  • Joined: 25-March 09

Re: Debate = and IS

Posted 10 December 2010 - 11:05 AM

so lordofduct you dont like VB :)
and btw in C# this:
string value=null;
if (value == null) {} //don`t fail
if(value==string.Empty){} //fail because its not empty string



and in .NET there is no such thing as variable as you know it in C.
Public NotInheritable Class String
Inherits System.Object
Member of System
Summary:
Represents text as a series of Unicode characters.


Public Structure Integer
Member of System
Summary:
Represents a 32-bit signed integer.

etc. :)
i dont see the point about this argue any way lets kiss and make up :)

This post has been edited by NoBrain: 10 December 2010 - 11:07 AM

Was This Post Helpful? 0
  • +
  • -

#14 lordofduct  Icon User is offline

  • I'm a cheeseburger
  • member icon


Reputation: 2530
  • View blog
  • Posts: 4,630
  • Joined: 24-September 10

Re: Debate = and IS

Posted 10 December 2010 - 11:25 AM

Oh yeah, I hate VB, it's the scourge of the Earth ;P
Was This Post Helpful? 1
  • +
  • -

#15 AdamSpeight2008  Icon User is offline

  • MrCupOfT
  • member icon


Reputation: 2240
  • View blog
  • Posts: 9,411
  • Joined: 29-May 08

Re: Debate = and IS

Posted 10 December 2010 - 11:56 AM

If we going to get along then respect the customs, traditions and culture.
You don't go into Red-Neck Bible Belt Country and spout bad shit against God and
Jesus, and not expect a reaction. When you get a reaction I suggest you run like fu-k.

This post has been edited by AdamSpeight2008: 10 December 2010 - 11:58 AM

Was This Post Helpful? 0
  • +
  • -

  • (2 Pages)
  • +
  • 1
  • 2