Java-Gaming.org    
Featured games (91)
games approved by the League of Dukes
Games in Showcase (581)
games submitted by our members
Games in WIP (500)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
   Home   Help   Search   Login   Register   
  Show Posts
Pages: [1] 2 3 ... 6
1  Discussions / General Discussions / Re: Creating dev team Java 2d!! on: 2014-04-06 05:42:42
What IDE will the team use?
- This is no choose, you need to have eclipse to join the team or this wont work out!.

Why not standardize on one of the great build tools like Gradle or SBT and let devs use any IDE or no IDE?

What version of Java? What is the rest of the tech stack?
2  Discussions / General Discussions / Re: Libraries You Wish For on: 2014-04-06 05:35:36
I'm sure some of you have at some point been annoyed at having to open a file reader with:
1  
new BufferedReader(new InputStreamReader(new FileInputStream(file)));


If you are using Java 7+, you can use the NIO.2 API which is pretty simple:

1  
Files.newBufferedReader(filePath, Charset.defaultCharset());


IMO, the Java community has pretty amazing libraries that cover all the basics.
3  Discussions / General Discussions / Re: The Big Linux Distro Thread on: 2014-04-04 06:07:32
I've used cygwin. I've used msys bash shell on Windows much more heavily. It's distantly inferior to Linux/Mac. First, all Windows GUI apps use "C:\dir\path\file.txt" while the shell uses "/C/dir/path/file.txt" so you have to usually manually convert between the two notations.
Define "distantly inferior".  In what way?  Same source compiled with the same compiler...the only difference is the POSIX glue services.  The filesystem differences are pretty much: so what?  It's true if you directly launch something like bash in cygwin you're not going to get what you expect in terms of GUI, but that's because it's a console app so it's limited by its launching GUI app...in this case command.com.  Which we all can agree blows chunks.  So don't do that and launch in it emacs instead if you plan on doing any serious work.

I'm doing quite a bit of work on a Windows VM and I've installed msys Git + Bash. Define "distantly inferior":

- The GUI window for the shell is all crappy and cmd.exe style. To resize the shell window, I have to right click -> props and futz with GUI settings.
- all the main things work: grep works, ls works, find works. but it's less integrated into the rest of the OS. I mentioned the hassle in copy/pasting paths. But Linux is fundamentally designed around a shell something like a bash shell, in Windows it's a foreign transplant. I haven't tried to use Bash more seriously on Windows to articulate more specific details. If I did, I probably would try cygwin instead of msys bash and I would try soft links, which I know exist on Windows with NTFS.

There's no such animal as a "linux shell".  There are POSIX shells and there are UNIX shells.  Linux is a kernel...

You are pedantic, but right. Most people call casually call bash a Linux shell because it is a common default, but you are more technically specific.
4  Discussions / General Discussions / Re: The Big Linux Distro Thread on: 2014-04-03 18:09:13
^this, I don't want to type in a long path name and misspell a single character.  I like a GUI (that is keyboard navigable) that I can navigate files and folders with.

Linux shells have advanced tab completion, tab preview, and wildcard features so that users do not "type in a long path name and misspell a single character".

Every major Linux does have a GUI file browser. Even I use that from time to time. It's nothing amazing, but it does all the basic stuff...

Also, I've noticed the same strange mouse behaviors on all linux distros I've tried, feels very sloppy.

I have never seen "strange mouse behaviors" on any Linux system I've used in the past five years. This isn't a real issue.

I've thought about dual booting linux before, but it's just too much hassle.  Sure everything is customizable, but I don't want to spend a week trying to find all the configuration files and understanding all their different formats just to get my system working as smoothly as a default windows installation Cranky

All the basics should work right off the bat.

You should do the obvious config stuff: install your favorite apps. Load up your launcher bar. Pick your favorite web browser. Install all your favorite IDEs and dev tools...

You shouldn't need to learn any esoteric config files.
5  Discussions / General Discussions / Re: The Big Linux Distro Thread on: 2014-04-03 17:56:31
Cygwin64.  The only iffiy thing is when you're mixing and matching cygwin vs. non-cygwin app with symbolic links.  And that might have been fixed.

I've used cygwin. I've used msys bash shell on Windows much more heavily. It's distantly inferior to Linux/Mac. First, all Windows GUI apps use "C:\dir\path\file.txt" while the shell uses "/C/dir/path/file.txt" so you have to usually manually convert between the two notations.

Quote
If you're spending more that statistically zero percent of your time install stuff on any OS...rethink your workflow.

I just installed virtualbox yesterday... I frequently discover, install new programs, and more frequently patch existing ones. This is a legitimate benefit.

Many Windows apps also use their own custom update/patch system or require manual patching which are both headaches. Much easier on Linux.

Quote
End user think.  So Dash doesn't show me a bunch of crap if I type something in it?  I must be confused.

Linux isn't perfect, Dash is mildly annoying, but in general, there is much less screen noise in normal Linux usage.
6  Discussions / General Discussions / Re: The Big Linux Distro Thread on: 2014-04-02 23:39:57
Although I manually install the JDK and Eclipse because the package manager only has OpenJDK.

When you want to run software made by others, use the repos for runtime libraries such as JRE or Ruby or Python.

When you are developing your own software, you should usually have your own JDK/Ruby/Python environment setup outside the Linux repos. You can use the exact version/config you want and not interfere or be intered with by the repo system.
7  Discussions / General Discussions / Re: The Big Linux Distro Thread on: 2014-04-02 22:12:44
The story so far: every time I try Linux, I discover that it is in some way shit, for example, the various sound drivers available ("so now the user can choose in what way his audio is broken"), graphics drivers (some sort of ideological bullshit about open source vs. closed drivers), and ultimately, shitty, ugly desktops that almost make me retch to gaze upon (Unity, I despise you only slightly more than all of the others).

Three reasons Linux is perfect for developers:

- The shell. A great shell is central for developers and science/engineering types. Windows cmd.exe is absolutely horrible. Microsoft tried to one-up the UNIX shell people with PowerShell, but it sucks and only appeals to the ultra-Microsoft types. Most of the Java ecosystem is designed for shell use. You should be using the shell for your primary build with a tool like Gradle or SBT (Maven is the dominant tool but it is not as good). You should be using the shell for git. You should use the shell for browsing files. Also Matlab/Octave/R/Python/Ruby work all are designed to be run in shells. Macs do have the same high quality shells that Linux does, but Windows is terrible for shell use.
- Repos: A large base of software is available through the repo system which just makes installation much simpler. None of the headaches associated with Mac/Windows installers.
- Clean and hyper customizable: None of the crap that Apple/Microsoft and various peripheral vendors want to put on your system. Linux is ideal if you like a lean, clean, elegant system. The GUI is minimal and that's great.

I'm not sure what you mean by "ugly desktops"? Do you mean the background wallpaper image when you hide everything else you are doing? Usually you should be using a web browser, text editor, IDE, or a shell window, and all those look great. The point-and-click widget type apps are terrible on desktop Linux.

If you need to resize an image or convert from one format to another, a Windows user would use a point-and-click app. A Linux user would just use a command line utility, which is far simpler and batchable if you can think that way.

BTW, I'm a fan of Canonical's Unity as it minimizes the point-and-click GUI elements, which are probably the worst part of desktop Linux. I want to use a shell window, IDE, or web browser, and I want the rest of the computer to disappear.
8  Discussions / General Discussions / Re: My thoughts as a programmer making games while on police riot duty on: 2014-03-29 14:44:37
What is your project? How do you like AIDE? I'd love to try AIDE if I had a netbook style Android device.

Currently doing programming on AIDE, but couldn't help myself from settling down.
9  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-28 16:31:16
Wasn't talking about embedded there... just system VMs. The JRE is otherwise awesome, if a little overlarge these days.

Cas Smiley

Oracle should kill or at least formally deprecate the system VMs.
10  Discussions / General Discussions / Re: Fewer end users? on: 2014-03-28 16:29:39
So do I get a nice concise argument for why they shouldn't remove Java from their systems for when moderators on that site suggest they do? Preferably in a way that Joe public (and I) can understand. Or should I just accept that the only way I can release software is as an exe and expect Joe public to download a new runtime for each install.

The latter. Regular people should remove the system JRE and developers should use embedded JREs.

.bat/.sh files are fine as well as .exe files.
11  Discussions / General Discussions / Re: Fewer end users? on: 2014-03-27 17:41:34
Unfortunately popular confusion is everything. The reason almost no-one uses Java to make games is because it was shit.

<edit> I see confusion even extends here Smiley Android is not Java. It looks superficially like Java, but Java it ain't.

Cas Smiley

Android uses some pieces of Java and supports apps to be written in Java source with very Java tools. It also offers C SDKs and much of Android itself is written in C.
12  Discussions / General Discussions / Re: Fewer end users? on: 2014-03-27 15:31:41
I'm an advisor on a PC forum and I've noticed a strong dislike of Java these days. Here's an example from one of today's threads:
"I still strongly feel most people would be better off without Java and, if they have software that depends on Java, replace it with software that doesn't require it. It may require buying some of the software needed and/or learning how to use new software (granted, that can be daunting) but that is better than leaving one's computer vulnerable to attack. "
Is anything being done to reverse this general opinion? I know Java 8 has Lamda expressions but perhaps 8.1 might have something that will encourage users to trust Java again.

All of the dislike and complaints is against the Java web plugin and not Java itself. Java is a major part of the server infrastructure of Netflix, Google, LinkedIn, or Amazon and people are fine with that. They are also fine with client-side embedded JREs like those used in Matlab or games like Wakfu. The Java web plugin is annoying and not useful and people are right to uninstall it and avoid it.

BTW, the Java 8 features are awesome but they really have nothing to do with the web plugin gripes or the popular confusion between Java itself and Java the web plugin.
13  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-27 15:28:23
The toolbar crap and totally broken auto-updater cost them a vast amount of goodwill.

Cas Smiley

That is all the Java web plugin. If you just embed a client-side JRE like Matlab, Wakfu, IntelliJ, users aren't bothered by that stuff.
14  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-27 14:43:37
Clientside Java pissed off developers: unstable plugin, no backwards compatibility whatsoever.
Clientside Java pissed off average Joe: unstable plugin, guaranteed browser freezes, constant nagging for updates shipped with nasty toolbars.

Clientside Java pissed everybody off. So there. That's the problem right there. You can't blame aforementioned Joe for a healthy aversion regarding Java, trying to obliterate every single JRE he can find, for the sake of browser security, too.

No! The Java applet plugin pissed everyone off. Every copy of Matlab embeds a JDK, just like Wakfu, or the Windows version of IntelliJ (IIRC). That is all client side and there are no complaints about that at all.
15  Discussions / General Discussions / Re: Programming Careers and Life Lessons... on: 2014-03-27 14:41:31
Do you guys regret or are depressed for being programmers in a company?

it seems like it.

I've been the super optimistic one. I've been gung ho about new tech like Java 8, Scala, Akka, etc. I'm even more excited about the non-programming stuff I'm learning about.

My mindset is more about pushing forward now, and doing what I want to do on this Earth, rather than feeling bad about past regrets and issues.
16  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-26 23:16:06
"Look at games like Wakfu that embed a Java runtime where most users don't even realize the game was completely written in Java."

This. This is the problem right here...

Since when did writing in a language become so bad that we have to make it seem like we don't write in it. I'm proud to say when I write something in Perl, Python, C++, C#, Haskell, and JavaScript.

Console games often use C++ for the base game and something like Lua for higher level scripting and use various middleware library like Havok physics: At no point does the user need to be aware or understand what C++ or Lua or Havok is. The game just works. And programmer types can learn more and read developer Q&A. Java should work the same way.

Game devs don't have to be ashamed of something like Lua, but users should be able to play the end game without thinking about the development end of things.

However, what use is there for a fast program if we still have to deal with the security and user access issues. It just seems counter-productive to me...

There are no security or user access issues with something like Wakfu, at least not compared to than any other downloadable game made in any other dev tool.
17  Discussions / General Discussions / Re: Programming Careers and Life Lessons... on: 2014-03-26 17:43:59
 - Lots of programming is fun. The salaried job reality is often not as good as you would think. There are some definite high points, but a lot of the reality of the day to day is very stifling, hard, demanding, really really boring work. There is regular frustration in going years without ever getting to try one of your own ideas and spending vast amounts of your life fixing the obscure details of someone else's ideas and tools and code.
 
 - Most professional careers have similar dynamics. The common reality is somewhat miserable and most people wash out. But there are many super stars with amazing success stories. There are lots of well known famous programmers who have enjoyed amazingly respected and exciting careers like Odersky or John Carmack. More importantly, there is a lot of room between the wash outs and the celebrities for great programmers who aren't famous or outrageously special, but are just really good at a particular niche and enjoy amazing long lived desirable careers.
 
 - Look at almost any professional track, such as the lawyer track. Most lawyers hate their jobs and the reality for the common lawyer is really terrible. But the top end lawyers often have the most desirable positions in society. Frequently, the mega CEO types or mega politician types, such as Obama, come from master lawyer backgrounds. I suspect programming actually offers a better middle ground between the super successes and the common wash outs.
 
 - Medicine is regarded as the evergreen safety field where even a basic nurse or doctor has a good job. There generally is neverending demand for nurse and general practioner type work, but I've heard that really isn't that desirable a career. The successful specialists have really enviable careers that are mega highly paid and respected, but the basic general practitioners work much harder and in general don't have an unusually amazing career.

 - Creating video games is one of those semi-fantasy entertainment vocations like movie director or actor or novelist or musician: if you have an unusual skill or love for the work, that's great and no one wants to kill a beautiful dream, but empirically, the career outcomes tend to be poor, and it's often best kept as a hobby and a side interest.
 
 - Programming Fads: We've all seen a ton of programming fads come and go, and it's easy to snicker at the many that turned out to be lame ducks with the benefit of hindsight. However, there have been some realy important developments that weren't just dumb fads. Java had some very important major improvements over C++. Now Scala (and Haskell and others) have some over Java. As matheus23 points out, there are legitmate design improvements over "null": Java "Optional" or Scala "Option" or Haskell "Maybe" really is a better solution. Java 8 adds map/filter/fold/flatMap which were previously only available in add on libraries: these features are really important for regular code. Scala goes further with dozens of syntax improvements and refinements and you can make the case for Haskell or Clojure or others as well.
 
 - My story: I am 38 with two daughters. I've been programming full time since 19. I've been a key player in one mega hit startup company, and I've always been regarded as a super programmer at every job I'm at, but most of jobs were less remarkable. I started with an interest in video games but I never actually got to do that; today I still love programming and the thrill of creating something hasn't diminished, but I'm more excited about non-programming stuff. For the past ten years or so, I've been seriously pursuing skills and classes in a science/biotech direction which has much more deep purpose to me than programming or games, and I have a few more years before it can bear fruit, and I may be too old to switch or a total failure, but I am enjoying the ride Smiley
 
 
to princec: If your happy with your life as it is, there is no reason to change. But I think it's a mistake to overlook the innovations of something like Scala and dismiss it as yet another trend or just another toolset to do the same stuff.


You're doing the same things every day – solve the same problem PRIMITIVE every day - almost no self growth or technology improvement, even if you learn something new and will use it year or two, and then you look for a new job you're surprised to see that even though you grew up and learned new technologies, but the rest world have not changed over this years, as they deal with the same problems as couple years ago.

There is some truth to this, but it's a very negative slant. Programmers aren't solving the same problems. Computers aren't even used in the same way. Computers used to be just fancy calculators, now they are often fancy communication devices, or the brains of large companies. And sure, lots of job, are miserable, and don't let you grow much, but that's every field. You have to be creative and find a way. And there is opportunity. And there are lots of happy stories of people who don't get washed out of the field.
18  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-26 16:30:25
Type erasure sucks.  Again: type refinement as an example.  The real problem isn't the coding (which is easy) of the thing...it's that it would have required a change in the verifier.  As since the verifier isn't enforcing we have to jump through dumb hoops that everyone (compiler & runtime) "know" aren't needed.

I don't follow what you are saying at all. The verifier internal to the JDK? Are you talking about performance issues?
19  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-26 16:28:34
Well, syntax improvements are important in one area: advanced concurrency code. The anonymous inner class syntax really got in the way of writing maintainable code. Barely anybody uses Java for this usecase, but we'll have to see whether that was a chicken and egg problem.

- LOTS of people use Java for advanced concurrency.
- Java is actually awesome for concurrency. The concurrency library is generally excellent. Executor Service, fork/join, concurrent collections, atomics, Futures. Java 8 adds a Promise (they call it CompletableFuture), "Adder"s, big improvements to concurrent collections, and of course lambdas.
- Great async libraries like Netty. Also Play Framework which has a Java API.
- Akka. That's a pretty cutting edge framework for parallel and distributed applications. Much better than classic MQ type products. This is updated to take full advantage of Java 8.
- Scala is slightly nicer some syntactic flourishments (for comprehensions, pattern matching), but it's not necessary. Java is completely adequate for writing great clean, elegant, parallel, distributed software. BTW, Scala's concurrency features are built completely on top of JDK and use Java ExecutorService, fork/join, etc, so Scala benefits from JDK 8 too.
20  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-26 15:17:02
Reified types would be nice, but I don't think they're going to happen. Too many problems with backwards compatibility.

- What's important is to support primitives in generics without any boxing cost. Scala already does this. Notice with Java 8, you can have Stream<Integer> with boxing but they also offer IntStream, LongStream, etc that don't have boxing. Ideally, Java wouldn't need this type of complexity and could just do Stream<int> with no boxing cost.
- Runtime type erasure is not a big deal. It breaks reflection. If you want a super advanced compiler that does maximum code checking and verification at compile time and _not_ at runtime, you should be not be using much reflection. Type erasure is still slightly negative in terms of runtime debugging profiling tools.
- Reified types is on the list for Java 9.
21  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-26 15:09:22
I just feel as though Java 8 is a very small step, but it lacks direction. The update doesn't change anything for users. It barely changes anything for us, other than helping our programs be a little smaller and faster for less readable code. I just hope our user base stays long enough to hit Java 9...

- Java 8 is a big change, with a clear direction. Proper lambdas and streams are big deals. I'll say it again: map, filter, fold, Optional. Big deal. Plus tons of library and VM level changes.
- Java 8 is more about developer facing improvement rather than user facing improvement.

It is shameful that we can't even guarantee each user will be able to share a similar experience due to them blocking Java completely.

Java applets are dead and that's a good thing. Users should block Java in their browser. But users are fine with embedded runtimes and libraries that they don't have to think about. Look at games like Wakfu that embed a Java runtime where most users don't even realize the game was completely written in Java.

I just hope our user base stays long enough to hit Java 9...

If you are waiting for a new version of Java or some other external factor to make the product that you want, you are just making excuses for yourself.

Nothing should be holding you back today from making the product you want to create.
22  Discussions / General Discussions / Programming Careers and Life Lessons... on: 2014-03-25 22:05:37
Forking this thread from the jdk 8 thread...

Respect that you managed to hang on for so long, I'm pretty sure I'm going to stop doing programming for a living when I hit the 20 year mark to prevent becoming busted, cynical and jaded before I get old. Maybe because I want to stop or maybe because the market forces me, I don't like the way its evolving right now.

I've been programming 19 years. I might have a few useful words:

- In work, people should aim for a balance between what they enjoy and what the world wants.
- If you don't like programming, try to get out of it. If you need the money or whatever, at least invest in some other piece of personal growth. Take a class, start a family...
- I hate much of programming. 90% of it is hard, boring, crap work dealing with legacy code bases on issues that I don't care about, and most of the world doesn't care about.
- Some new technologies are genuinely fun! Like JDK8 or Scala or Haskell or even a nice build tool like Gradle is really cool. Going from a lifetime of Microsoft Windows to Linux and realizing, wow, cmd.exe sucks and zsh is such a better product! Or going from a lifetime of Microsoft Word and Excel to going wow: Markdown or LaTeX are just better tools for authoring documents and Google Docs or R does everything that Excel did better by a hundred fold! Learning and using these tools is fun!
- Some programming is actually fun. Taking an old product and making it better, designing something and writing it, and seeing it come together is gratifying.
- I choose a career of programming with my heart set on video games. Now, I find other areas of the world much more interesting than video games. I still like the programmer talk around it though. And I would potentially write a video game if it were part of some other ambition. The game would just be a means to an end though.
- As an adult I developed a passion for learning academic subjects like higher math, signal processing, philosophy, and various engineering disciplines.
- Older people often have developed a useful specialty that holds a lot of value in this world. If you just do basic general programming stuff and get old, that's an unhappy path, but that's how every career track works. Tons of age 50+ programmers who are at the peak of their game and are extremely valuable and have really exciting and desirable careers. There are also a lot of people who wash out or just move on to something else, and that's how almost all careers work.
23  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-25 21:46:27
Respect that you managed to hang on for so long, I'm pretty sure I'm going to stop doing programming for a living when I hit the 20 year mark to prevent becoming busted, cynical and jaded before I get old. Maybe because I want to stop or maybe because the market forces me, I don't like the way its evolving right now.

Interesting subject, but completely off topic from JDK 8. I'll start a new thread...
24  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-25 20:36:39
If/when he replies, you will likely see the massive irony here.

I eagerly await the unveiling of this massive irony Smiley

Especially since he never said either was objectively 'better' than the other, he merely is stating his opinion. Everyone has the right to their opinion.

Ideally the opinions shared are interesting or relevant. If you don't like Scala syntax because it involves change and you have some dark personal trauma to deal with... You should probably be dealing with the dark trauma and not posting on this board.

If you want to help with on-topic discussion, let's talk objectively why the new JDK is better than what it was.

Didn't I just post on several specific JDK 8 features that I feel are really useful: map, filter, fold, and Optional?!?! No one commented on those.
25  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-25 19:59:00
I'll let him tell you his situation, but you don't know the people behind the screen names. You can't make assumptions about people without any background.

I'm not trying to judge his soul or worth as a human. If he says he is sick of programming, I will tell him to at least consider giving it a rest and trying something else for a change. There are minimal personal assumptions being made.

Since this thread is about JDK 8 programming language and syntax innovation: you can't counter a point about type inference or types on the right vs C-style with all kinds of personal issues.
26  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-25 19:32:10
I am old, and busted, and cynical, and jaded. I've been programming now for 33 years. Quite frankly I'm sick of it. I'm especially sick of having the rug pulled out from underneath me. I like the slow pace of change in Java because it gives what's left of my brain time to figure out how to use the changes.

Cas, this is really a horrible attitude.

You should probably give programming as a whole a rest and try something else. Find a better balance between personal satisfaction and your basic obligations to society. Take some classes, ramp up another skill set, do some consulting in another industry. Try raising a family - that often gives people deep purpose and satisfaction. You can't just stew in a career that you've lost interest in. And you can't fault the rest of the tech world for any of your weird personal issues.
27  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-25 19:21:37
I understand gene9 completely in the way that he is so enthusiastic about his favorite tool, but of course also the other side which is a bit annoyed about the derailing of this topic.

The big Java 8 features: lambdas and streams are very Scala-esque features. And on the discussion of Java syntax changes, Scala is really completely relevant. It's a very Java-like language with many cut & dry pareto enhancements. The principal guy behind Scala used to be a JDK guy so this makes sense. That is unfair to claim comments regarding Scala as off topic.

And to give the syntax side of the discussion one more argument. Syntax like the try with resources is very needed, because it let us do the right thing without burden us with unnecessary boilerplate(having to close resource by hand in a safe way).

Sure, the try-with-resources, was a mild improvement in Java 7.

Java 8 is bigger. I am maintaining a large Java 6/7 code base. There are dozens of time I see:

- Code manually converting a collection of one type to another type. Could be simplified with a "map" operation in Java 8 or even JavaScript.
- Code manually filtering a collection. Could be simplified with a "filter" operation in Java 8 or even JavaScript.
- Code manually aggregating a collection. Could be simplified with a "fold" operation in Java 8.
- Code manually dealing with null issues. Could be simplified with a decent "Optional" type as in Java 8.

Honestly, all of the above could be done in Java 6/7 with an add-on library like Functional Java, but it's nice to have a high quality implementation in the core library. And have nice lambda syntax rather than the anonymous inner class system.
28  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-25 16:51:02
It "fixes" a whole load of problems I just don't have and breaks a whole load of things that I like. The syntax is wilfully different and more difficult to read.

Sure, the syntax is different, but that's merely a learning curve issue. Almost every syntax change from Java is a good one. What does it break that you don't like? Can you name specifics?

Types on the right and type inferencing are good things. Both C++ and C# added much more limited type inference but in C# for example type inference is limited to local variables and doesn't work for class variables, static, or function return types like Scala.

Also, the compiler speed has mostly been fixed in recent versions of Scala especially with the official IDE and the "fast scala compiler"

Even Java 8 is a big improvement on eliminating a lot of manual iteration loop writing and temporary variables that Java <=7 requires.

Indeed, the only thing actually at the VM level that really needs addressing is the structs problem. That'll solve most of my performance problems and complexity headaches at a stroke.

JVM architect John Rose has a pretty solid grasp on value types (aka structs): https://blogs.oracle.com/jrose/entry/value_types_in_the_vm

That's a likely feature for Java 9. VM also needs TCE (tail cail elimination) and Jigsaw which are obviously both planned for JVM 9.

Scala has native tuples and a very limited form of value types. Isn't that useful?
29  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-25 16:26:06
I don't get why they haven't done multidimensional arrays yet.  It's trivial sugar.

From Oracle architect John Rose's Arrays 2.0 talk: http://cr.openjdk.java.net/~jrose/pres/201207-Arrays-2.pdf

"What Java coders say they want... Item #1: Rank > 1 (Fortran matrices, etc.)"

Read the slides. They clearly know what they are doing.

30  Discussions / General Discussions / Re: JDK 8 is released on: 2014-03-25 16:16:30
I don't get why they haven't done multidimensional arrays yet.  It's trivial sugar.

You can write your own mega simple wrapper class. There are almost zero limitations to that. I don't see how this is holding anyone back at all.

@gene9 et al.: All this this syntax talk is just pure wankery on all of our parts.  Really who cares? Java is internally consistent (OK mostly) and that's just fine.  Basically we're discussing "use semicolons or not?"

The syntaxes advances over Java 7 are legitimately important. They definitely aren't petty things like semicolons or not. You can write much cleaner, more concise, maintainable code with something like Scala.

You guys are just content with Java syntax and haven't understood that stuff enough to appreciate the value.

Do you guys have any publically hosted code that you think is decent? I guarantee that if I could look at some mildly non-trivial code you guys write, I could show you and possibly convince you how it could be better in Scala.

Pages: [1] 2 3 ... 6
 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

xsi3rr4x (57 views)
2014-04-15 18:08:23

BurntPizza (55 views)
2014-04-15 03:46:01

UprightPath (68 views)
2014-04-14 17:39:50

UprightPath (51 views)
2014-04-14 17:35:47

Porlus (68 views)
2014-04-14 15:48:38

tom_mai78101 (93 views)
2014-04-10 04:04:31

BurntPizza (153 views)
2014-04-08 23:06:04

tom_mai78101 (249 views)
2014-04-05 13:34:39

trollwarrior1 (205 views)
2014-04-04 12:06:45

CJLetsGame (213 views)
2014-04-01 02:16:10
List of Learning Resources
by SHC
2014-04-18 03:17:39

List of Learning Resources
by Longarmx
2014-04-08 03:14:44

Good Examples
by matheus23
2014-04-05 13:51:37

Good Examples
by Grunnt
2014-04-03 15:48:46

Good Examples
by Grunnt
2014-04-03 15:48:37

Good Examples
by matheus23
2014-04-01 18:40:51

Good Examples
by matheus23
2014-04-01 18:40:34

Anonymous/Local/Inner class gotchas
by Roquen
2014-03-11 15:22:30
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!