The equivalent of that bad code in C++ is any one of a million clueless pointer manipulations.
Design pattern cancer I think actually came from the environment - whichever language ended up as the Enterprise Language of the 90s/00s was going to going to get it. You can do Java without it, certainly.
Anyway I can't call Java spooky. That would be like calling a cow spooky. It's just big and smelly and it farts a hell of a lot and it takes more effort than it should to get it to do anything.
I'd love to get an opportunity to be paid to learn Haskell - I just don't learn languages very well without a motivating environment. From the little bits I learned of Ruby before that company died, I think it's a little more of an inheritor of Perl than I like, though I think it may be the language in which to write domain languages. Rails felt to me like a language built out of Ruby.
You are right that Java's idiot-magnetism is less spooky in context, although I do think there is something strange about how it just keeps having this effect even years after then ill-conceived 90s. Haunted by the ghost of long-dead enterprises.
Java feels retro in a way -- like it will be remembered as somehow inherently 90s. Like future movies set in the 90s will show people programming in Java next to grunge and Monica Lewinsky jokes in order to establish setting, the same way that any film set in the 50s is required to show a long car with fins in the first five minutes.
Well it is still one of the major enterprise languages, and enterprises have this dream of being able to get the programs they want built without having to employ competent programmers... so that's why these technologies are created and are still being created.
Haskell is certainly very much like a grail. Of the changes that could be made without compromising its core nature, only making its syntax less quirky would really substantially improve it.
On the other hand, my patience for theoretical programming languages is low. The functional purity of haskell makes a number of relatively simple alterations of one's program just astoundingly tedious. For instance, "If this large, complex calculation takes more than ten wall-clock milliseconds, give up and toss me an exception" is all but impossible to express if you didn't design the entire system for it from the start. Worse, if you did design for it from the start then you had to write the whole thing in a slightly different, decidedly worse part of the language
( ... )
To be fair, haskell is quite capable of handling this situation. What it handles poorly is the software engineering activity of going from the "enh, I'll just try it" case to the timeout case -- the implementation has to change completely because once you read from something like system time you are no longer in the pleasant functionally pure world but rather have entered the rather uglier world of The IO Monad (or The Monadstrosity, as I have come to know it).
Small differences in what you want, when they involve things like time, cause large changes in implementation.
Perhaps I will inject a bug deliberately just to see how it's done.
LOL
I remember SML of New Jersey in college. It doesn't sound quite as bad (good?) as haskell, but coming from a C background, getting it to compile was hard.
Comments 25
Design pattern cancer I think actually came from the environment - whichever language ended up as the Enterprise Language of the 90s/00s was going to going to get it. You can do Java without it, certainly.
Anyway I can't call Java spooky. That would be like calling a cow spooky. It's just big and smelly and it farts a hell of a lot and it takes more effort than it should to get it to do anything.
I'd love to get an opportunity to be paid to learn Haskell - I just don't learn languages very well without a motivating environment. From the little bits I learned of Ruby before that company died, I think it's a little more of an inheritor of Perl than I like, though I think it may be the language in which to write domain languages. Rails felt to me like a language built out of Ruby.
Reply
Java feels retro in a way -- like it will be remembered as somehow inherently 90s. Like future movies set in the 90s will show people programming in Java next to grunge and Monica Lewinsky jokes in order to establish setting, the same way that any film set in the 50s is required to show a long car with fins in the first five minutes.
Reply
Reply
Reply
Reply
On the other hand, my patience for theoretical programming languages is low. The functional purity of haskell makes a number of relatively simple alterations of one's program just astoundingly tedious. For instance, "If this large, complex calculation takes more than ten wall-clock milliseconds, give up and toss me an exception" is all but impossible to express if you didn't design the entire system for it from the start. Worse, if you did design for it from the start then you had to write the whole thing in a slightly different, decidedly worse part of the language ( ... )
Reply
The real world involves stuff not going according to theory. I've already gone down this timeouts road many times.
Reply
Small differences in what you want, when they involve things like time, cause large changes in implementation.
Reply
LOL
I remember SML of New Jersey in college. It doesn't sound quite as bad (good?) as haskell, but coming from a C background, getting it to compile was hard.
--Beth
Reply
Leave a comment