Slashdot Mirror


User: Raenex

Raenex's activity in the archive.

Stories
0
Comments
7,132
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 7,132

  1. Re:I think I grok this on Theo de Raadt Responds to Linux Licensing Issues · · Score: 1

    However any derivative of this work must also have BOTH licenses included. Where does it say that in the meta-license? You just made up that requirement out of thin air. The meta-license explictly allows you to pick either license. If I pick the GPL, what says I cannot remove the meta-license and the BSD license?

    Why even have dual licensing if this is the case? The point of dual-licensed code is to allow software under both licenses. If, in fact, you were not allowed to remove the meta-license, then that would be an additional restriction outside of GPLv2, and hence incompatible with GPLv2.
  2. Re:The more I learn about JavaScript... on GWT in Action · · Score: 1

    Yes, ALL. Embed it in the browser, write the browser in it (and the webserver), write little scripts to run your system, use it as a command shell, use it to write games or OS kernels.. I sympathize with this point of view, but I think being comparable to C speed is a pretty hard sticking point. Having a language like Python be faster than C is a pretty lofty goal. I'd love to see it accomplished, but I'm skeptical.

    Also, static vs dynamic typing is another sticking point. I know there is research being done to get the best of both worlds, but it's hard. There's no way a general purpose language will take over the world if it only appeals to one side.

    Despite all that, I think it's a very interesting time for language development. There are lots of languages blooming with neat ideas. I just don't see any on the horizon that fit the bill of being high-level, C-fast, and a satisfying mix of dynamic and static capabilities.

    Anyways, it was nice talking to you. Good luck on your langauge search.
  3. Re:Addressing a few comments... on GPL Violations On Windows Go Unnoticed? · · Score: 1

    As I understand it, the linking method doesn't matter as much as whether or not your program depends upon the GPL code. If it can't run without the GPL code, then it's considered to "include" the code, and that makes it a derived work, which means you're infringing the GPL'd code's copyright if you distribute the result as anything other than GPL. Cite a case law that backs this up. What you are saying is that you can't write code that works with other code, even if you don't distribute that other code. Which is complete nonsense. That's like saying I couldn't write Windows applications without Microsoft's approval. There's plenty of case law arguing that you can't copyright interfaces required for functionality.
  4. Re:The more I learn about JavaScript... on GWT in Action · · Score: 1

    I'm not arguing for the JVM to replace Javascript on the browser. In the context of GWT, I'm arguing why I would choose a language like Scala on the server side to generate my Javascript for me.

  5. Re:The more I learn about JavaScript... on GWT in Action · · Score: 1

    So implement closures with reflections... Not so easy, is it? Implement a type system in Javascript that gives me the power of Eclipse. Not so easy, is it?

    I prefer flexibility. I think it's easier to build a restrictive subset of a flexible language than it is to tack on flexibility to a restrictive language. I prefer a language that is practical and makes it as easy as possible to use 3rd party libraries together. Take Scheme, for instance. That was the language out of which all the "Lambda the Ultimate" papers came out of, a language that prides itself on minimalism. Just a few days ago the new version of Scheme was ratified. It was something of an identity crisis for Scheme. There are lots of problems writing portable, composable code in Scheme, and the new version tried to address it, but at the cost of flexibility and simplicity.

    Will Clinger's apology is an interesting read. In it he describes first why he is going to vote yes (he later votes no because of last minute changes), and this is from the guy known for the quote: "Programming languages should be designed not by piling feature on top of feature, but by removing the weaknesses and restrictions that make additional features appear necessary."

    Quote from the above apology: "When evaluating the R6RS, I look at it as a programmer who has written, is maintaining, and wants to write more portable programs and libraries in Scheme. [...] The proposed R6RS offers improvement in several areas where absent or weak or incompatible standards have been making it unnecessarily difficult to write portable programs and libraries."
  6. Re:The more I learn about JavaScript... on GWT in Action · · Score: 1

    And anything with documentation is going to be able to tell me what the type is. And in Ruby you have to manually dig out the documentation. In Eclipse it's all there with a click. I get code completion. I get type errors while I'm coding. It's compiler checked documentation that helps me reason about code.

    Be more specific. Looking at a few random ones, I only saw various strings, or occasionally a hash table of strings, so no, not much type information to care about here. How do you even know that they are just strings or a hashtable of strings? That, in and of itself, is type information.

    The sad fact is, even C++ has more type inference than Java. Sure, but the point is that there are languages like Scala that work on the JVM, have closures, first class functions, etc., and are also strongly typed with support for type inference. So if the question is "why not Javascript?", my answer will be "why not Scala?"
  7. Re:The more I learn about JavaScript... on GWT in Action · · Score: 1

    It's not the types that are there, it's the interfaces. Interfaces are a subset of types.

    And I like Javascript because I don't have to know about types anyway. It doesn't care what type something is, only what it can do. But of course you care! You have to know that alert() takes an object with toString() defined. That's type information. alert() is a cherry-picked example anyways -- it is simple and ubiquitous. Look at all the methods in the Rails documentation I linked to in my previous post. Are you honestly telling me that you don't have to care about types when calling those methods?

    In which case, it gets closer to a dynamically-typed language. And if you don't have to write it out all the time, it also gets rid of your "find everything you need with a simple click" advantage. Nope. It works as if I had written it out. The compiler knows the types by inferring them. Wikipedia has an entry on it.
  8. Re:The more I learn about JavaScript... on GWT in Action · · Score: 1

    But as far as I'm concerned, by the time we're talking about reflection, it's more than just "not built-in", we're getting into the realm of "Well, you can do anything you want, as long as you write a preprocessor..." Reflection isn't hard, and it's built into the language.

    Compared to, for example, the claimed lack of namespace -- that can be done so easily it may as well have been a language feature. But it wasn't, and so ad-hoc solutions are proposed, which breaks down when you try to compose 3rd party libraries. It sure is nice having it built-in from the start.

    Turing-completeness has nothing to do with power. It would be difficult for me to define what I mean by "powerful", but I think we can all agree that assembly language isn't particularly powerful, and neither is Basic. Other common terminology is "expressive" and "higher-level". I know what you mean -- doing more with less in a natural manner. However what you gain via dynamic hacks you lose in explicitly expressing your abstractions. Take "goto" as an example. In one sense it is low-level, but in another sense it is powerful. It has been replaced by higher-level structural programming, but goto is powerful enough to implement all that stuff, and quite useful and natural when breaking out of some nested code.
  9. Re:The more I learn about JavaScript... on GWT in Action · · Score: 1

    That's not compile time, that's IDE time. In which case, you can use Eclipse for Javascript. But it works by compiling while you're typing. I don't see how a Javascript plugin for Eclipse can give you the same benefits you get in Java without static type information. I went to the home page for Aptana and it seems like it has built-in knowledge for standardized things like CSS properties, but not the code you are writing.

    I never really found types useful, just one more thing I had to keep track of -- kind of like memory management. I find this hard to believe. I've seen enough dynamically written code to know that the types are there, but latent. For example, if a method takes a "foo" argument, the method is written with knowledge of what a foo is. Look at the API for something like Ruby on Rails. It's chock full of types, and if you're calling some method you'll want to know the types of arguments it expects. So you'll have to infer it by the name, documentation, or reading the implementation. With Java and Eclipse I can find out what I need to know with a simple click.

    As for your comparison to garbage collection, I'm glad you made that analogy. The garbage collector is keeping track of memory for you, and you say "It's just nice to be able to work in a garbage-collected language." And I say it's nice when the compiler keeps track of types for me! That's why I get immediate error detection while I'm typing, code completion, and hyperlinks to code and documentation.

    Now, Java's implementation of static typing is incredibly verbose and tedious. But there are much better statically typed systems that infer the type for you, so you don't have to write it out all the time.
  10. Re:The more I learn about JavaScript... on GWT in Action · · Score: 1

    Because I could come up with a very long list of things that are nowhere to be found in Java, but are actually cleverly hid in Javascript. In this thread you've made statements along the lines that features which are lacking in Javascript can be mimicked with hacking. Well guess what, the same goes for Java. Want dynamic typing? Want to extend your class at runtime? Want higher order functions or closures? Then use some hashtable hackery with anonymous classes, casts, reflection, etc. You can break out of the type system if you want to.

    Now you'll cry out that all these features aren't conveniently built into the language. The same goes for the features Javascript lacks. Language design is all about tradeoffs. There isn't some magical "power" number you can ascribe to them, especially when they're Turing complete.
  11. Re:The more I learn about JavaScript... on GWT in Action · · Score: 1

    And in any case, what is so magically better about compile time? The faster you find and fix errors the more productive you are. In a Java IDE like Eclipse, you find lots of errors while you're typing in your code. You get code completion. Hyperlinks to documentation. Hyperlinks to source code implementations. You can see the types of all arguments to functions, which makes it easier to reason about code. Refactorings like rename are a trivial operation.

    I've used both dynamic and statically typed languages, and I find dynamic languages end up slowing me down. Static types are just too useful. I acknowledge there are some benefits to dynamic typing and some downsides to static typing, but there will always be tradeoffs.
  12. Re:And it damn well should be. on Judge — "Making Available" Is Stealing Music · · Score: 1

    Just because a decision sounds reasonable on its face doesn't mean it is Granted, and maybe you are right. However, I'm not going to dig through all the cited cases. I find it strange that placing a copyrighted song on a p2p network can be considered "merely making available" and that in 2007 this is not a settled issue.
  13. Re:And it damn well should be. on Judge — "Making Available" Is Stealing Music · · Score: 1

    That all said, I think this judgement is horse shit. Having Kazaa or any other p2p sharing software installed doesn't imply intent to distribute, and AFAIK there is no real way to say that it was or was not set up for sharing. You can find the judgement here. It's only 9 pages and is pretty straightforward. I scanned it in just a few minutes.

    My opinion: The judgement was very reasonable. The defendants weren't ruled against just because they had Kazaa installed. They had copyrighted songs available on Kazaa. They had a flimsy excuse amounting to either a third party or a computer malfunction caused the files to end up in a shared folder.

    Read the judgement. It's an open and shut case, and a very vanilla one at that. The judge cites numerous case law that tears apart the defense. What is horse shit is the summary provided by the Slashdot submitter. Full of screechy hyperbole and outright lies. There is absolutely nothing new in this judgement.
  14. Re:No, really on New Method To Detect and Prove GPL Violations · · Score: 1

    If the government barricades your house so you can't leave, is that against your freedom of movement? Its not really disallowing you - you just can't. You're talking about somebody actively thwarting a liberty you previously possesed, but trying to pass it off as something else. It's like the kid who puts his finger his finger in his sister's face and claims "I"m not touching you! I'm not touching you!".

    I'm talking about somebody who gave you something that you accepted of your own free will, and then you demand that they give you more.

    There is no real difference between practical difficulty/impossibility and lack of freedom. Don't you see what you've done? You have accepted a position that rests on a lie used for marketing. Now you have to defend a position that makes no sense.
  15. Re:No, really on New Method To Detect and Prove GPL Violations · · Score: 1

    Having no source means not having the freedom to modify, in practice. There's a huge difference between being allowed to do something and being entitled to services that help you accomplish your goals. You have the freedom to do all kinds of things that practically you cannot. Obligating that others must help you detracts from their freedoms.

    If I wanted to sell you some appliance, but I lost the manual, am I forbidden from selling you the appliance? If I invented my own appliance and sold it to you, am I obligated to tell you exactly how it works? If I wrote my code in assembler, and you don't understand assembler, am I obligated to write it in your favorite language?

    Freedom entails being allowed to hack, reverse engineer, and redistribute what you have received. It does not place obligations on others. Such fundamental principles shouldn't be subverted just because Stallman thinks he is entitled to the source for a printer driver.
  16. Re:No, really on New Method To Detect and Prove GPL Violations · · Score: 1

    How can you practice the freedom to modify a program without the source? Freedom would entail being free to modify whatever you receive. It does not entail being entitled to receiving the source. That would be a matter of convenience, not freedom.
  17. Re:No, really on New Method To Detect and Prove GPL Violations · · Score: 1

    If there weren't copyright, the GPL would carry no weight and wouldn't be needed in the first place, a situation that RMS would have undoubtedly preferred. You're ignoring the main point of contention here: FSF considers access to source code one of the fundamental "freedoms" and "rights" of users. That aspect can only be enforced with copyright and the GPL. Alternatively, if there was no copyright, the FSF would require a law mandating something like the GPL, which in my view would be decidedly anti-freedom.

    I full agree with the FSF that being able to copy, use, and modify is an aspect of freedom. But being entitled to source is not.
  18. Re:Slightly Strange on Content-Aware Image Resizing · · Score: 1

    You may aswell just add a nice blue frame round the edge of the picture to make it fit. The whole point is to avoid artificial techniques that stand out, like frames. A trivial application would be expanding an image to fit as your desktop background. If you're trying to fit a picture into a rectangle with particular dimensions, you may want to both squeeze it one dimension *and* expand it in another to give you the most natural looking effect.

    For example, think how a 4:3 TV screen often displays wide-screen movies: They scale (shrink) the image to fit and put bars on the top and bottom. Instead of doing that, they could both push it in on the sides, and if they could only push it so far before losing too much information, fit the rest by scaling and then expanding the top and bottom. That would result in less scaling and no bars.

    Or consider the opposite: Some widescreen TVs expand 4:3 media to avoid bars, but they do so by stretching the image horizontally.
  19. Re:No, really on New Method To Detect and Prove GPL Violations · · Score: 1

    Access to source code != freedom. It is a convenience.

    Copyright denies freedom, and it is debatable whether this is ultimately justified, but you don't hear people claiming that the benefits of copyright enable "freedoms" of copyright holders. Yet that's the same kind of nonsense that the FSF wants everybody else to swallow.

  20. Re:You're a dumbass. on Sun's Trading Symbol Going From SUNW To JAVA · · Score: 1

    Nothing is stopping a third party from writing their own JRE from scratch. Apache seems to be having some trouble. I like Java, and I hate proprietary platforms like Flash, so this kind of bothers me. It's great that Sun GPL'd their implementation, but the platform isn't truly open if a group like Apache is having legal trouble.
  21. Re:s/Java/Microsoft/g on Sun's Trading Symbol Going From SUNW To JAVA · · Score: 1

    if you replace all instances of Java with Microsoft So you're saying Microsoft is cross-platform and doesn't have a lot of buffer-overflow problems?

    several people would be pointing out your bandwagon fallacy The point about popularity is a valid one, given the "Java is doomed" comment. I've often seen that same point modded *up* when made in reference to Microsoft -- despite all Microsoft's woes, every year their profits keep rising and they really are entrenched.
  22. Re:Is ODF really much better? on India Decides to Vote "No" For OOXML · · Score: 1

    If by fully specified, you mean "[ODF] completely avoided the formula issue", then yes. An interesting comment. I haven't been following the Microsoft vs Open Office battle in detail, so I googled around and found this blog entry presenting the ODF side on the formula issue. The blog comments there hash it out further.

  23. Re:More info here on Astronomers Find Huge Hole in Universe · · Score: 1

    Are these attepts at Slashdot book sales working out for you?

  24. Re:I'm not sure it was the best timing ... on Paramount to Drop Blu-Ray for HD-DVD · · Score: 1

    With Sony's recent price drop, the sales of their console have increased. I don't understand all the hoopla over Sony's price drop. It went from $600 -> $500. The 20GB model was already selling for $500, which included HDMI, and it just wasn't selling. Now all of a sudden the 60GB version at $500 is a great deal?
  25. Re:GPL prevents exploitation of programmers on Microsoft's New Permissive License Meets Opposition · · Score: 1

    IMO, the major difference between the GPL and "more liberal" licenses is the fact that with GPL licensed code, nobody can walk away with your code, modify it and sell it without showing the code. They *have to* give the added code back for everyone. The LGPL would serve the same purpose, without making any claims on code not written by the original author.

    With BSD-like licenses, they can simply steal your work and you cannot do a thing about it. Some developers don't consider it stealing -- they released the code knowing full well this was a possibiltiy. Each developer has to make their own choice. Many developers live in both worlds: They write proprietary software for a living, and also write and use open source.

    Programmers who are lazy enough to accept the "shared" and "permissive" licenses without properly thinking of the possible consequences, are doomed to feel robbed and cheated eventually. I often see the opposite problem: Programmers who are lazy and default to GPL when they should use something like the LGPL. They even think it is ok for people to use their GPL software in non-GPL projects, as long as the GPL code isn't closed. That's what the LGPL is for!

    Your BSD-licensed code has no chance to fight a re-branded *cosmetically* improved version of your product, sold in competition to your own. But there is something the BSD project has that the corporate project doesn't: It's free (no cost) and open! That means the legions of programmers who appreciate that will contribute to the BSD project, thus keeping it alive.

    This *isn't* reverse-FUD. But it is one-sided advocacy.