Imagine a WoW that was 100% PK all the time and super guild based. Imagine a WoW with permanent death, no levels, heavy into RP, and an iron fisted adminstrative staff that enforced it. Imagine a purely RvR game, or a game that is nothing but epic dungeon crawls.
Doesn't sound like a game I would be interested in playing, so I'll just stick with WoW. Thanks.
At a comfortable level in both languages, I find Scala easier to read but less terse--the key being mostly Scala's descriptive inline operators.
That's probably the correct level of abstraction to think about it. Repeated sequences of anything are going to be mind numbing. Shorter sequences are going to be easier to grasp at first sight. But only on average and the 4-letter P-word has certainly proved that very short code isn't necessarily readable or maintainable.
add an integer and a string, and you'll probably get a numerical result, but it may not be what you expect, because just like Javascript, Perl does dynamic coercion at run time.
Because objects are typed. What would the result be in weakly typed language like C where you do 1 + "1234"?
So I have to violently disagree with you, here. The minute a language does free type conversions at runtime without erroring out it's most definitely *not* strongly typed.
Um, that's part of the definition I gave as a distinction between statically typed languages and strongly typed languages.
No, strong typing means the compiler and/or runtime *enforce* the typing rules, either statically (ie, at compile time) or dynamically (ie, at runtime). The minute a language (like Perl or Javascript, both of which behave identical in this regard) performs dynamic coercion automagically, sorry buddy, you don't have a strong typing system.
It's late, I'm tired, just pass the bowl over to me brother/.er and I'll take a hit off of whatever it is you're smoking.
Strong typing != static typing. Period. Nearly all modern languages and all "scripting" languages are strongly typed, but not necesarily statically typed.
I don't mean to sound pedantic, or borish, but C is actually "yeah baby yeah" typed, to enable pointer arithmetic, stack space exhaustion, buffer overflows, and system level development. It's not incorrect to say that it is weakly typed, per se. It's just awkward having to try to explain the direct parallels between the C type system and a 70s style love-in (where anything goes) -- to your manager.
I hear where you're coming from, brother/.er.
I'm rather amazed at what work has been done in the Linux kernel regarding moving the code towards the static typing model with innovations in C and GCC extensions. Much of the Linux kernel *can* be statically type checked.
I am *so* hoping that Linus writes the Mythical Penguin Month as Fred Brooks did for O/S 360 the 3nd most important O/S, but most important at the time. For all his sometimes abrasive writing style, he has done something I didn't think could not be done. Well more than one something.
Terseness is largely irrelevant. The right question is not "does this language let me express something in the minimal number of keypresses", but rather "does this language force me to repeat myself endlessly".
I did not mean "terseness" to be a pejorative. Length of code can sometimes and sometimes not be of assistance to the poor bastards maintaining it after the original developer has gone.
It's my fate in my career that I have been primarily maintaining other people's code and personally, I have an easier time reading small snippets of code in small functions than the multi-K lines of deeply nested if-else/etc. that certain coders prefer.
That was actually a dig on the four-letter P-word which can be compressed into incomprehensibilty.
The stuff I saw on the Scala website looked quite nice and terseness and reducing repetition appears to be one of their stated goals. I applaud them for that. Any time you have enforced repetition, maintenance costs go up regardless of how strict or sane the development environment is.
I need to rewrite a bunch of super-crap CGI code from scratch and I was planning on looking at something Scheme-ish to see if that would work (the core code I would like reuse is all in Emacs Lisp). I do plan on looking deeper into Scala before I propose anything because the Java tie-in might be easier for me to handle politically.
I'll pass on Javascript as with PHP. Perl is strongly typed, but not statically typed - you add an integer variable to a floating point variable and you will get a numerically reasonable result, unlike something like B.
Lisp is strongly typed. Using an example from an implementation I know best, Emacs Lisp is strongly typed - a cons cell always has a type tagged to it that is enforced by the interpreter. The fact that symbols may be bound to different cons cells in their lifetime matters nothing with respect to strong typing. Obviously, there is no static typing whatsoever.
C was originally a weakly typed language that has moved in the direction of static (but not strong) typing (with GCC extensions). Obviously, untagged unions blow any kind of type checking out of the window. Tagged, honor system unions also defeat static analysis. Unconstrained typecasts prevent C from ever being more than that.
The Unix Shell, has always been strongly typed. The grandfather of them all had every type as a string. More modern equivalents have integer and floating point types and those are strictly tagged.
If a language is strongly typed, then a + i where a is 1.0 and i is 1 will give a sensible result because either the runtime or the compiler will convert the integer to floating point and give the numerically correct answer. In a statically typed language, an error will be thrown at compile time.
Static type checking is particularly important for critical code like CGI and core O/S. The only grey area is when your input consists of bits coming across a wire or from some random H/W device. In that case you must always handcode the type checking.
Strong typing means that the compiler and the (optional) runtime always knows what type an object is. Static typing means the compiler always knows what type an object is and can refuse to compile something in violation of the established typing rules. There is a big difference.
The crux is that you really can't teach programming. A good programmer has an intuitive feel for how to solve a problem. You can't get that from lectures and books.
You can kinda sorta, but you're still missing something. You have to choose your books carefully.
Very much so. Those with a passion for it always rise to the top. (I know I'm quoting you out of context, you were right before you added in all the weasel language).
in the end, practice is the only way to get anywhere.
Exactly. But isn't that true with anything worthwhile?
What you're missing is that writing new code is only a tiny facet of being a Real Programmer. Requoting:
A good programmer has an intuitive feel for how to solve a problem.
I add: and can get an intuitive feel for how a body of code does (or needs to) work.
Unless you're just a hit & run coder, you'll spend the majority of your career doing software maintenance or be dealing with some different aspect of the software life cycle. Developing the ability to fix issues in software that you haven't written, quickly, is the ticket for always having people willing to pay you for doing what you want to do in the first place.
Virtual property may have a tangible value in a few circumstances, which are mostly tech-dependent; But rather than list hard rules, let's give some examples where there's a real cost;
By your same arguments and examples your own True Name is Virtual Property, as is your passport number, etc.
It's all just data in a computer (by now) somewhere, so what makes it special?
I would argue that virtual property is valid and needs some legal controls; But that laws should be carefully crafted to disallow constraints being intentionally created to create artificial markets.
Maybe some day pigs will fly. Laws don't deter anyone determined enough. Murder has been illegal basically forever and what has that done? You must be new here (and I don't necessarily mean to/.).
There is a murder crisis in the US. Why are there not any new laws being proposed to get the murder rate down? If it's just so simple to get rid of an activity by banning it, why is there so much drug use after a nearly century long War on (some) Drugs? A century ago, the active ingredient of Coca-cola was cocaine. Where is there a problem now and not then?
Umm, my bank account doesn't pretend to represent something tangible. It does represent something tangible. I can go in and get stacks of $100 bills any time I want.
And if the bank isn't open?
Been there done that. You are dangerously naive brother slashdotter. Banks can close at any time and I have suffered through a bank holiday before in Japan when I had *no* access to my hard earned yen.
Your Blizzard comments are spot on though.
May I ask why you think banks and bankers are perfect?
Some might say, "yes, but this property has no bearing on the 'real' world". But this is a shortsighted argument, and one that any insightful person can see will become increasingly blurry with time.
Could somebody mod me insightful so that I will understand?
There's more, but that's enough for now. The next place for you to look at is how the "Federal" Reserve (which is privately owned and not Federal) does inter-bank transfers.
Your stock represents tangible equity? Really? Prove it in some other way than buying or selling the stock. Try exchanging it for some of that "tangible" equity. Try taking a chunk of land, a brick from a building or a box of office staplers.
The value represented in stock is just as virtual as in-game property because its only real-world relevance is an exchange for monetary value.
That's insightful and it's a pity you posted anonymously.
The difference between Wall Street, Linden Labs and Blizzard is that political power in the US is centered in Wall Street. The US government has been a negative force for a century now and break everything they touch. I would prefer to keep them out of gaming.
<sarcasm>Personally, I would be more than delighted to see IRS tax collectors show up in Dalaran to enforce capital gains taxes (on AH sales), income taxes (on quest rewards) and require tax forms to be filed every year. Great fun! It might even force the gold sellers out of the game, so there's a benefit!</sarcasm>
On the other hand, insofar as scarcity is maintained artificially, there's no assurance that your character won't just evaporate one day and complete cease to exist. How much value do you want to assign to an asset like that?
That kind of sounds like the current crisis in financial derivatives markets, no?
This makes "ownership" more complicated. If, for instance, Ford could change the color, passenger capacity, cargo room, and gas mileage of any car, by any amount, at any time, what it means to "own" a car would be quite different. In the virtual world, every single item is like that.
That's an excellent car analogy. Blizzard has done something exactly like that with 3.2. They've cut prices on ground mounts (vehicles) to a tiny fraction of what they used to be. Do I deserve a refund because I can now buy the epic ground mount for under 50g, when some of my characters bought them for 540g? Blizzard doesn't think so and neither do I. I don't currently use any of the regular flying mounts that just had their speed almost tripled, but my wife is happier.
I'm kind of upset with what they did a few months ago with the Kalu'ak fishing pole - nerfed the price to almost free, down from ~100g, and removed all the damage dealing capability. Oh well.
The unintended consequence of "Virtual Property" is probably going to be that none of us get to play any more and I see that as a bad thing - WoW, Second Life, <insert your MMO here>.
You're incorrect from what I read from the article. He did not sell all rights to his artwork and it was basically moved to a different game with his name removed.
I can see his point, but if he didn't have it in a contract in writing, he's probably screwed. I sympathize. My only real payment for my Open Source work in Linux is that if you grep for my name in the various ChangeLogs, you will find it. I do feel his pain.
Oh, look, I can already see in the distance the World of Warcraft players flooding into Slashdot to tell people to get a first life.
I had no idea such a thing existed in the US. Somehow it never got mentioned in my public education. Thanks for the reference and never mind your misspelling, this spelling and grammar nazi forgives you.
People who own things take care of them. Private property is a Good Thing.
Actually, no one owns property in the US today. It's only rented, though the rent is called "property taxes". Just decide to stop paying property taxes and see how long you are permitted to keep "your" property.
In California it's a bit worse, because mineral "rights" are retained by the government.
May be theory of how planets form this wrong. Maybe planets do not form out of a cloud of dust that rotates, but in some other way and with other and additional forces, such as electricity, besides gravity.
Theories change all the time. The first astronomy book I ever read (which would have been around the time we were putting men on the moon, but the book was probably written in the late 50s) still treated seriously the idea that planetary systems were only created when there was a near collision of two stars. We know now that planetary systems are too common for this to be the case, but we didn't know it then.
you must be much much older than I if you wrote an OS kernel in assembly in school
I took my OS class at CSULB and was in the last class that did the kernel project in HP 1000 assembly in 1986.
Imagine a WoW that was 100% PK all the time and super guild based. Imagine a WoW with permanent death, no levels, heavy into RP, and an iron fisted adminstrative staff that enforced it. Imagine a purely RvR game, or a game that is nothing but epic dungeon crawls.
Doesn't sound like a game I would be interested in playing, so I'll just stick with WoW. Thanks.
And what does Pakistan have to do with gaming?
At a comfortable level in both languages, I find Scala easier to read but less terse--the key being mostly Scala's descriptive inline operators.
That's probably the correct level of abstraction to think about it. Repeated sequences of anything are going to be mind numbing. Shorter sequences are going to be easier to grasp at first sight. But only on average and the 4-letter P-word has certainly proved that very short code isn't necessarily readable or maintainable.
What would the result be in weakly typed language like C where you do 1 + "1234"?
My guess would be it's the memory location where the "2" from that string is stored.
Correct.
add an integer and a string, and you'll probably get a numerical result, but it may not be what you expect, because just like Javascript, Perl does dynamic coercion at run time.
Because objects are typed. What would the result be in weakly typed language like C where you do 1 + "1234"?
So I have to violently disagree with you, here. The minute a language does free type conversions at runtime without erroring out it's most definitely *not* strongly typed.
Um, that's part of the definition I gave as a distinction between statically typed languages and strongly typed languages.
No, strong typing means the compiler and/or runtime *enforce* the typing rules, either statically (ie, at compile time) or dynamically (ie, at runtime). The minute a language (like Perl or Javascript, both of which behave identical in this regard) performs dynamic coercion automagically, sorry buddy, you don't have a strong typing system.
It's late, I'm tired, just pass the bowl over to me brother /.er and I'll take a hit off of whatever it is you're smoking.
Strong typing != static typing. Period. Nearly all modern languages and all "scripting" languages are strongly typed, but not necesarily statically typed.
I don't mean to sound pedantic, or borish, but C is actually "yeah baby yeah" typed, to enable pointer arithmetic, stack space exhaustion, buffer overflows, and system level development. It's not incorrect to say that it is weakly typed, per se. It's just awkward having to try to explain the direct parallels between the C type system and a 70s style love-in (where anything goes) -- to your manager.
I hear where you're coming from, brother /.er.
I'm rather amazed at what work has been done in the Linux kernel regarding moving the code towards the static typing model with innovations in C and GCC extensions. Much of the Linux kernel *can* be statically type checked.
I am *so* hoping that Linus writes the Mythical Penguin Month as Fred Brooks did for O/S 360 the 3nd most important O/S, but most important at the time. For all his sometimes abrasive writing style, he has done something I didn't think could not be done. Well more than one something.
Terseness is largely irrelevant. The right question is not "does this language let me express something in the minimal number of keypresses", but rather "does this language force me to repeat myself endlessly".
I did not mean "terseness" to be a pejorative. Length of code can sometimes and sometimes not be of assistance to the poor bastards maintaining it after the original developer has gone.
It's my fate in my career that I have been primarily maintaining other people's code and personally, I have an easier time reading small snippets of code in small functions than the multi-K lines of deeply nested if-else/etc. that certain coders prefer.
That was actually a dig on the four-letter P-word which can be compressed into incomprehensibilty.
The stuff I saw on the Scala website looked quite nice and terseness and reducing repetition appears to be one of their stated goals. I applaud them for that. Any time you have enforced repetition, maintenance costs go up regardless of how strict or sane the development environment is.
I need to rewrite a bunch of super-crap CGI code from scratch and I was planning on looking at something Scheme-ish to see if that would work (the core code I would like reuse is all in Emacs Lisp). I do plan on looking deeper into Scala before I propose anything because the Java tie-in might be easier for me to handle politically.
I'll pass on Javascript as with PHP. Perl is strongly typed, but not statically typed - you add an integer variable to a floating point variable and you will get a numerically reasonable result, unlike something like B.
Lisp is strongly typed. Using an example from an implementation I know best, Emacs Lisp is strongly typed - a cons cell always has a type tagged to it that is enforced by the interpreter. The fact that symbols may be bound to different cons cells in their lifetime matters nothing with respect to strong typing. Obviously, there is no static typing whatsoever.
C was originally a weakly typed language that has moved in the direction of static (but not strong) typing (with GCC extensions). Obviously, untagged unions blow any kind of type checking out of the window. Tagged, honor system unions also defeat static analysis. Unconstrained typecasts prevent C from ever being more than that.
The Unix Shell, has always been strongly typed. The grandfather of them all had every type as a string. More modern equivalents have integer and floating point types and those are strictly tagged.
If a language is strongly typed, then a + i where a is 1.0 and i is 1 will give a sensible result because either the runtime or the compiler will convert the integer to floating point and give the numerically correct answer. In a statically typed language, an error will be thrown at compile time.
Static type checking is particularly important for critical code like CGI and core O/S. The only grey area is when your input consists of bits coming across a wire or from some random H/W device. In that case you must always handcode the type checking.
Strong typing means that the compiler and the (optional) runtime always knows what type an object is. Static typing means the compiler always knows what type an object is and can refuse to compile something in violation of the established typing rules. There is a big difference.
Scala is statically typed. Most languages are strongly typed so that's not a particularly useful metric.
Static typing means that every object type is known at compile time and thus type safeness can be enforced before the code is executed.
My point is that Scala is most certainly not re-inventing Perl.
True, it also doesn't appear to be a reimplementation of anything. It's somewhat related to Java (Scala programs execute with the JVM).
The code snippets on the website http://www.scala-lang.org/ are intriguing. It's certainly a terse language. That's both good and bad.
One important thing about American money is that it's heavily circulated, even internationally
Um no. It is extremely rare that you can use US currency in foreign countries. You need to exchange it first.
Electronic money of the sort you are referring to is unlikely to have encountered cocaine.
The crux is that you really can't teach programming. A good programmer has an intuitive feel for how to solve a problem. You can't get that from lectures and books.
You can kinda sorta, but you're still missing something. You have to choose your books carefully.
http://www.amazon.com/Elements-Programming-Style-Brian-Kernighan/dp/0070342075
http://www.amazon.com/Psychology-Computer-Programming-Silver-Anniversary/dp/0932633420
http://www.amazon.com/Mythical-Man-Month-Software-Engineering-Anniversary/dp/0201835959
programming is a lot like art
Very much so. Those with a passion for it always rise to the top. (I know I'm quoting you out of context, you were right before you added in all the weasel language).
in the end, practice is the only way to get anywhere.
Exactly. But isn't that true with anything worthwhile?
What you're missing is that writing new code is only a tiny facet of being a Real Programmer. Requoting:
A good programmer has an intuitive feel for how to solve a problem.
I add: and can get an intuitive feel for how a body of code does (or needs to) work.
Unless you're just a hit & run coder, you'll spend the majority of your career doing software maintenance or be dealing with some different aspect of the software life cycle. Developing the ability to fix issues in software that you haven't written, quickly, is the ticket for always having people willing to pay you for doing what you want to do in the first place.
Virtual property may have a tangible value in a few circumstances, which are mostly tech-dependent; But rather than list hard rules, let's give some examples where there's a real cost;
By your same arguments and examples your own True Name is Virtual Property, as is your passport number, etc.
It's all just data in a computer (by now) somewhere, so what makes it special?
I would argue that virtual property is valid and needs some legal controls; But that laws should be carefully crafted to disallow constraints being intentionally created to create artificial markets.
Maybe some day pigs will fly. Laws don't deter anyone determined enough. Murder has been illegal basically forever and what has that done? You must be new here (and I don't necessarily mean to /.).
There is a murder crisis in the US. Why are there not any new laws being proposed to get the murder rate down? If it's just so simple to get rid of an activity by banning it, why is there so much drug use after a nearly century long War on (some) Drugs? A century ago, the active ingredient of Coca-cola was cocaine. Where is there a problem now and not then?
Umm, my bank account doesn't pretend to represent something tangible. It does represent something tangible. I can go in and get stacks of $100 bills any time I want.
And if the bank isn't open?
Been there done that. You are dangerously naive brother slashdotter. Banks can close at any time and I have suffered through a bank holiday before in Japan when I had *no* access to my hard earned yen.
Your Blizzard comments are spot on though.
May I ask why you think banks and bankers are perfect?
Some might say, "yes, but this property has no bearing on the 'real' world". But this is a shortsighted argument, and one that any insightful person can see will become increasingly blurry with time.
Could somebody mod me insightful so that I will understand?
/target FiloEleven
/cast Spell of Insight
First of all, check out the Grace Commission report - http://www.uhuh.com/taxstuff/gracecom.htm
Income taxes do not fund anything in the budget. It is used to take US$ out of circulation (and thus contain inflation).
Second. No one "owns" corporate stock in the traditional sense of the word unless you have made very special arrangements. Check out DTCC, start here - http://tycoonreport.tycoonresearch.com/articles/498930687/who-really-owns-your-stocks-hint-it-s-not-you
All stock in the US is a Virtual Property unless you have physical stock certificates in hand.
There's more, but that's enough for now. The next place for you to look at is how the "Federal" Reserve (which is privately owned and not Federal) does inter-bank transfers.
Your stock represents tangible equity? Really? Prove it in some other way than buying or selling the stock. Try exchanging it for some of that "tangible" equity. Try taking a chunk of land, a brick from a building or a box of office staplers.
The value represented in stock is just as virtual as in-game property because its only real-world relevance is an exchange for monetary value.
That's insightful and it's a pity you posted anonymously.
The difference between Wall Street, Linden Labs and Blizzard is that political power in the US is centered in Wall Street. The US government has been a negative force for a century now and break everything they touch. I would prefer to keep them out of gaming.
<sarcasm>Personally, I would be more than delighted to see IRS tax collectors show up in Dalaran to enforce capital gains taxes (on AH sales), income taxes (on quest rewards) and require tax forms to be filed every year. Great fun! It might even force the gold sellers out of the game, so there's a benefit!</sarcasm>
If you try to take my stuff from my house, or try to live in my house, I will call the cops and have you arrested for trespassing.
Nope. Not if the "you" you are referring to is an IRS agent processing a tax case or something. You will be the one going to jail if you complain.
On the other hand, insofar as scarcity is maintained artificially, there's no assurance that your character won't just evaporate one day and complete cease to exist. How much value do you want to assign to an asset like that?
That kind of sounds like the current crisis in financial derivatives markets, no?
This makes "ownership" more complicated. If, for instance, Ford could change the color, passenger capacity, cargo room, and gas mileage of any car, by any amount, at any time, what it means to "own" a car would be quite different. In the virtual world, every single item is like that.
That's an excellent car analogy. Blizzard has done something exactly like that with 3.2. They've cut prices on ground mounts (vehicles) to a tiny fraction of what they used to be. Do I deserve a refund because I can now buy the epic ground mount for under 50g, when some of my characters bought them for 540g? Blizzard doesn't think so and neither do I. I don't currently use any of the regular flying mounts that just had their speed almost tripled, but my wife is happier.
I'm kind of upset with what they did a few months ago with the Kalu'ak fishing pole - nerfed the price to almost free, down from ~100g, and removed all the damage dealing capability. Oh well.
The unintended consequence of "Virtual Property" is probably going to be that none of us get to play any more and I see that as a bad thing - WoW, Second Life, <insert your MMO here>.
You're incorrect from what I read from the article. He did not sell all rights to his artwork and it was basically moved to a different game with his name removed.
I can see his point, but if he didn't have it in a contract in writing, he's probably screwed. I sympathize. My only real payment for my Open Source work in Linux is that if you grep for my name in the various ChangeLogs, you will find it. I do feel his pain.
Oh, look, I can already see in the distance the World of Warcraft players flooding into Slashdot to tell people to get a first life.
/rude
That was uncalled for.
I had no idea such a thing existed in the US. Somehow it never got mentioned in my public education. Thanks for the reference and never mind your misspelling, this spelling and grammar nazi forgives you.
People who own things take care of them. Private property is a Good Thing.
Actually, no one owns property in the US today. It's only rented, though the rent is called "property taxes". Just decide to stop paying property taxes and see how long you are permitted to keep "your" property.
In California it's a bit worse, because mineral "rights" are retained by the government.
Wait until they get around to v2, 'smart' pure evil and find out they have to use a white guy for that as well.
Here's a sneak preview of v2 - http://www.therawfeed.com/2008/05/why-microsoft-ceo-steve-ballmer-should.html Looks like you're correct.
May be theory of how planets form this wrong. Maybe planets do not form out of a cloud of dust that rotates, but in some other way and with other and additional forces, such as electricity, besides gravity.
Theories change all the time. The first astronomy book I ever read (which would have been around the time we were putting men on the moon, but the book was probably written in the late 50s) still treated seriously the idea that planetary systems were only created when there was a near collision of two stars. We know now that planetary systems are too common for this to be the case, but we didn't know it then.
I think they are, though I'm sure that they're a little overwhelmed by the amount of data involved.
In the most recent patch 3.2 they removed "twinks" from regular battlegrounds and added XP. The vast majority of us cheered.