Live data from Hacker News

I finally understand why I'm not allowed to use Lisp

groups.google.com

51–60 of 121 posts

Re: I finally understand why I'm not allowed to use Lisp

#51
post #37
post #14

Earlier quoted context omitted.

Re Mono: Microsoft is not suing Google for patents on operating systems but instead pressures the handset manufacturers using Android. Is there a guarantee that a customer can use Mono for commercial applications, without a shake down from Microsoft?

IP in Mono falls into several categories. 1. There is stuff covered by the ECMA/ISO standards. This is covered by the Microsoft Community Promise, which is legally binding. This stuff is safe from Microsoft. 2. There is a lot of .NET stuff that Microsoft has released under the Apache 2 license, which includes a patent pledge. If any of this stuff is implemented in Mono, it is safe. 3. There is stuff in .NET that is n…

My understanding is that Microsoft hired the IronPython developer full-time for a period of years.

I think that it's only natural that MS would target Mono if they felt it was a threat. Right now it is in their interest to support Mono because it introduces more people to C# and MS feels that this is good for the long-term health of their platforms. They are also able to iterate quickly enough that Mono (and Moonlight, the Mono-based Silverlight implementation) is always playing "catch-up" and the cool kids are all going to want to use the official implementations with the Cool New Stuff before it makes it into Mono two years later.

Mono developers can easily become Windows developers, and the likelihood of that happening is not that low if a given hacker falls on hard times and needs a job. This hacker will then buy Windows and Visual Studio (or get his company to buy them, either way works), probably multiple times. Hence, supporting Mono makes sense for now.

If Mono ever becomes a threat to Windows' dominance instead of a help, MS is going to go after it hard and try to kill it, just as they go after anything else perceived to threaten Windows or Office. Mono will be targeted because it makes things that used to be Windows-specific accessible on other platforms, destroying Microsoft's lock-in, leveling the playing field and making Microsoft an undesirable option. This is not something MS likes, and they will do everything possible, including patent suits if possible, to get Mono out of the way if they have to. They have already postured for it with their indemnification deals for Novell customers.

The same applies to WINE, although Microsoft for the moment just never mentions this because they're never asked about it, and they don't want people to find out about it and discover that they don't need Windows to run Windows applications. There is no benefit to promoting WINE like there is with promoting C# and other MS-centric languages.

Re: I finally understand why I'm not allowed to use Lisp

#52
post #49
post #44

Earlier quoted context omitted.

You cited a site that routinely makes claims either without citing sources, or with cites to sources that contradict those claims. To a large part, it appears to simply make up stuff, and does not issue corrections when its errors are pointed out. Citing Boycott Novell about software (or about anything, actually) is about equivalent of citing your Astrologer in a science argument.

You keep making ad hominems against techrights rather than addressing the substance of their argument. Why don't you actually address what they wrote in their article?

I would be glad to address the substance of their argument if they ever manage to produce an argument with substance.

Re: I finally understand why I'm not allowed to use Lisp

#53
post #20

Kudos to his manager for actually looking at the code and recognizing the problem. Maintainable code is extremely important. Just keep your code simple. Adding another layer of abstraction instead of writing a simple and readable loop (if the language doesn't have accumulators) is not a good solution. I've seen this too many times. Smart developers write complex code, just because they can (and often it does make it…

I agree. I suspect any manager who looks at code and says it is not maintainable would have a very different side of the story, that might sound something like, "We already had an accumulator that did exactly what was needed. It just used a named delegate. I told him to either use that, or refactor the existing code to use his new and get rid of the old one. Maintaining both is wasteful. He seemed to get in a tissy about it."

Re: I finally understand why I'm not allowed to use Lisp

#54
post #29
post #18

Earlier quoted context omitted.

For me type inference changes the picture, since it reduces the duplication you see throughout Java-style statically typed code, but doesn't give up all the benefits.

The main thing that make programming in statically typed languages painful isn't the additional type declarations (which, as you rightly point out, need not even exist in languages that do competent type inference), but with the constant need to wrestle with the type system to get your code to compile at all. This is made doubly painful by the incredibly obtuse error messages spat out by some compilers, like: This ex…

Interestingly enough, the sort of error messages that you mention in OCaml occurs partly due to the inference itself. Because inference is essentially a unification between implicit constraints, once it finds an anomaly, the engine can't always predict correctly which among the conflicting constraints is the actual error from a user point of view.

Anyway just an aside

Re: I finally understand why I'm not allowed to use Lisp

#55
post #26
post #18

Earlier quoted context omitted.

For me type inference changes the picture, since it reduces the duplication you see throughout Java-style statically typed code, but doesn't give up all the benefits.

The only benefit I'm aware of is slightly faster code and even then the dynamic version is almost always more readable and easier to maintain and refactor. The ideal would be a dynamic language with optional static typing but I have yet to see a language like that.

Perl 6? http://en.wikipedia.org/wiki/Perl_6

Re: I finally understand why I'm not allowed to use Lisp

#56
post #48
post #43

Earlier quoted context omitted.

Your character wasn't attacked, your credibility was. It's perfectly legitimate to question your credibility if the questioner believes your source to be biased. An ad Hominem attack would be calling you stupid for linking the biased source. That didn't happen.

The ad hominem was made against techrights, not against me. I didn't even make an argument. I just linked to a few articles that criticized Microsoft's "Promise". Did tsz address the substance of techrights' argument? No. He just smeared them by implying that merely citing an article by them would make me lose credibility. That is a perfect example of an ad hominem. Attacking me was more of a case of shooting the mes…

> smeared them

If you do a Google site search on that blog you'll see that the term 'smear' is used endlessly and quite carelessly by the author. It's interesting to see that you use it in the same way - and like the author I don't think you understand very well what the term means. I sure hope "gnosis" isn't one of the various aliases the guy allegedly uses across the internet, including on Slashdot where he became a bit of a legend for maintaining dozens of them.

Re: I finally understand why I'm not allowed to use Lisp

#57
post #48
post #43

Earlier quoted context omitted.

Your character wasn't attacked, your credibility was. It's perfectly legitimate to question your credibility if the questioner believes your source to be biased. An ad Hominem attack would be calling you stupid for linking the biased source. That didn't happen.

The ad hominem was made against techrights, not against me. I didn't even make an argument. I just linked to a few articles that criticized Microsoft's "Promise". Did tsz address the substance of techrights' argument? No. He just smeared them by implying that merely citing an article by them would make me lose credibility. That is a perfect example of an ad hominem. Attacking me was more of a case of shooting the mes…

Stop. Stop. Stop.

Instead of dancing in circles, please look at the contact information I posted above. Miguel de Icaza is a good guy. I am certain he will answer any questions you might have.

Re: I finally understand why I'm not allowed to use Lisp

#58
post #20

Kudos to his manager for actually looking at the code and recognizing the problem. Maintainable code is extremely important. Just keep your code simple. Adding another layer of abstraction instead of writing a simple and readable loop (if the language doesn't have accumulators) is not a good solution. I've seen this too many times. Smart developers write complex code, just because they can (and often it does make it…

> Kudos to his manager for actually looking at the code and recognizing the problem.

Huh?

> My manager looked at the code and asked "Who's going to maintain this? How will they understand it?" That's not the first time I've encountered these questions. I heard it when I used function pointers in C. I heard it when I used templates in C++.

So essentially the manager bans the use of basic language features because they have hired incompetent programmers who shouldn't be working in the languages before understanding them. How exactly did the manager "recognize the problem"? The problem isn't that people use languages like they are supposed to be used, it's that they have made bad hires, which is not the competent programmers fault.

Re: I finally understand why I'm not allowed to use Lisp

#59
post #20

Kudos to his manager for actually looking at the code and recognizing the problem. Maintainable code is extremely important. Just keep your code simple. Adding another layer of abstraction instead of writing a simple and readable loop (if the language doesn't have accumulators) is not a good solution. I've seen this too many times. Smart developers write complex code, just because they can (and often it does make it…

I agree. I suspect any manager who looks at code and says it is not maintainable would have a very different side of the story, that might sound something like, "We already had an accumulator that did exactly what was needed. It just used a named delegate. I told him to either use that, or refactor the existing code to use his new and get rid of the old one. Maintaining both is wasteful. He seemed to get in a tissy a…

Sure that's one possibility. Some other things the manager might say:

* Whose idea was it to hire developers that are smarter than I am?

* Of course I told him not to use function pointers. You have to put programmers in their place from time to time. You know, show them who the boss really is.

* Function pointers? Are you serious? He could have put someone's eye out.

Re: I finally understand why I'm not allowed to use Lisp

#60
post #21
post #16

Earlier quoted context omitted.

* Mono is backed by Novell and not Google * From the Mono Licensing FAQ [1]: "Microsoft has announced that the ECMA standards for C# and the CLI are covered under the Community Promise patent license. Basically a grant is given to anyone who want to implement those components for free and for any purpose." * The Novell-Microsoft agreements provide further protection for companies that choose to use Mono. [1] * Many c…

There's been some criticism of Microsoft's "Community Promise", such as this: http://techrights.org/2009/07/09/community-promise-sham/ and http://www.fsf.org/news/2009-07-mscp-mono and of Mono in general: http://www.fsf.org/news/dont-depend-on-mono

> http://www.fsf.org/news/dont-depend-on-mono

...The danger is that Microsoft is probably planning to force all free C# implementations underground some day using software patents. ... This is a serious danger, and only fools would ignore it...

It seems as if they are passing off wild speculation as inevitable fact. What is to prevent MS from using its portfolio of patents on any given project? Is a free C# implementation infringing on more patents? The supporting links just looked like general anti-patent pages.

Post reply on HN