I maintain a couple of and contribute to a few free software projects. I can build and test on a couple of architectures and a couple of operating systems on my own. I don't have Windows installed, and if it weren't for one machine a roommate uses only to run an accounting program, there wouldn't be an installation of Windows in my home. (That machine has no network connection.)
If I want to know that that software runs on Windows, I have to rely on other programmers who not only can and do run Windows but can and do build software there. I can understand why there seem to be so few of them -- the last time I tried, it was an awful experience -- but telling developers that they should write software that works on Windows is fairly useless.
If you want good free software that runs on Windows, go to this supposedly huge, untapped market, find people capable of developing, testing, and submitting bugs, and point them at those projects that wouldn't mind running on Windows if they had a little help.
I think you're making Spolsky's point more specific than he intended it.
Sure, the result of the Mozilla rewrite is better now, but would Mozilla 1.0 still have taken over four years to come out if Netscape hadn't thrown away the entire codebase? Going from a project (barely) worth using to absolutely nothing for at least three years is a stupid decision no matter whether you're doing it for profit.
Mozilla was exceedingly lucky, not smart. I can't think of any other consumer-level software product that could survive for four years between releases.
Does it help to talk about context as it applies linguistically? Native English speakers usually do pretty well at pluralizing nouns, choosing the right pronouns, and making subjects and verbs agree in terms of number. Perl makes it easier because it has no irregular nouns or verbs.
Maybe I'm weird in understanding it that way because I'm a writer (though the linguists in the Perl community have no trouble with it either), but it seems like that explanation ought to clear up almost all of the confusion.
I think it's more natural if you already understand context.
Many of the tutorials and beginner books I've read explain context pretty poorly and many gloss over the important differences between arrays and lists. Those are fundamental to Perl as is the type system to ML and its derivatives. It's also a stumbling block.
I wouldn't expect that someone who lacks programming experience would have any useful basis for intuition. Maybe it's more useful to talk about how consistently and coherently references are in relation to the rest of Perl; I doubt that asking whether they make immediate sense to someone who has just come across them is as useful as it might seem at first.
I also wouldn't expect that someone just learning to program would want to or need to use complex datastructures. In four years and several hundred thousand posts at Perl Monks, I've seen more often new programmers asking how to use variables in variable names than having trouble figuring out references. They're not even reaching the point of the idea of complex data structures.
because it flattened out the list for some reason.
As the documentation indicates.
Why didn't the outer list need brackets?
Because of context, as the documentation indicates.
Of course, how could I have missed that??
You didn't read the documentation. If you had, you'd know that the parentheses don't do anything besides expression grouping. You'd know that arrays can only contain scalars. You'd know how to store a list in a scalar by using an anonymous array or array reference.
You can agree or disagree with that decision, but until you understand context in Perl and its implications, Perl will continue to confuse you.
At the surface level, it shows what comics might be in a world where superheroes are real.
At a thematic level, it tells a story smaller than yet similar to Veidt's. Consider what the narrator of the pirate comic realizes at the end; at the end of Watchmen, Veidt has done the same sort of thing for the same reason. However, Veidt doesn't show that insight.
... something needs to be done to make it so that developers can release a single rpm (and source rpm), and that rpm will always work on every installation. That's fairly close to how it works on OS X and Windows.
Remember, though, that Mac OS X runs on PPC only and Windows runs on x86 only. Would you throw out all non-x86 Linux installations or would your RPMs have really fat binaries?
Half the country has just entirely lost its representation in the US government.
Your senator or representative refuses to represent you because you belong to a different party? There was a sneak Constitutional amendment and there are only 50 senators and 218 representatives now? A space-time vortex has eaten one side of the Capitol building?
Call your senator and representative in the U. S. Congress.
Re:I find this quote more interesting
on
Linus Interviewed
·
· Score: 1
Sure he can. He just can't redistribute code to which he doesn't hold the copyright without following the terms of the GPL or making some other arrangement with the copyright holder.
I've been working on something similar, encouraging people to write their life stories in short, daily segments. Anything that helps people to write something deliberately, every day, is a good idea. It doesn't have to be perfect. You don't have to show anyone. You just have to practice putting words to paper (so to speak) every day for a month.
Why would people who write compilers have to write their own register allocators? I'd target PIR and use symbolic registers that IMCC will analyze and allocate automatically anyway.
That seems to be what the second half of your comment says, but I really don't understand what you mean here. Doesn't any IR have to emit some sort of unique symbols?
How did you compile Parrot? Right now, the default is to disable the JIT to help find bugs in the non-JIT codepaths. An optimized build might be even better.
That's not entirely fair. I suspect that with the CLR guys concentrating on providing a better platform for dynamic languages,.NET is a much more attractive target now than it was three years ago. How well would IronPython have worked on the CLR from 2001?
Your analogy would be better if the racist used the fax machine, not the photocopier. It subverts your point, but it's more accurate that way.
It's not that simple.
I maintain a couple of and contribute to a few free software projects. I can build and test on a couple of architectures and a couple of operating systems on my own. I don't have Windows installed, and if it weren't for one machine a roommate uses only to run an accounting program, there wouldn't be an installation of Windows in my home. (That machine has no network connection.)
If I want to know that that software runs on Windows, I have to rely on other programmers who not only can and do run Windows but can and do build software there. I can understand why there seem to be so few of them -- the last time I tried, it was an awful experience -- but telling developers that they should write software that works on Windows is fairly useless.
If you want good free software that runs on Windows, go to this supposedly huge, untapped market, find people capable of developing, testing, and submitting bugs, and point them at those projects that wouldn't mind running on Windows if they had a little help.
I think you're making Spolsky's point more specific than he intended it.
Sure, the result of the Mozilla rewrite is better now, but would Mozilla 1.0 still have taken over four years to come out if Netscape hadn't thrown away the entire codebase? Going from a project (barely) worth using to absolutely nothing for at least three years is a stupid decision no matter whether you're doing it for profit.
Mozilla was exceedingly lucky, not smart. I can't think of any other consumer-level software product that could survive for four years between releases.
No, but Sam Ruby is making really good progress on Pirate, which is Python on Parrot.
Does it help to talk about context as it applies linguistically? Native English speakers usually do pretty well at pluralizing nouns, choosing the right pronouns, and making subjects and verbs agree in terms of number. Perl makes it easier because it has no irregular nouns or verbs.
Maybe I'm weird in understanding it that way because I'm a writer (though the linguists in the Perl community have no trouble with it either), but it seems like that explanation ought to clear up almost all of the confusion.
I think it's more natural if you already understand context.
Many of the tutorials and beginner books I've read explain context pretty poorly and many gloss over the important differences between arrays and lists. Those are fundamental to Perl as is the type system to ML and its derivatives. It's also a stumbling block.
I wouldn't expect that someone who lacks programming experience would have any useful basis for intuition. Maybe it's more useful to talk about how consistently and coherently references are in relation to the rest of Perl; I doubt that asking whether they make immediate sense to someone who has just come across them is as useful as it might seem at first.
I also wouldn't expect that someone just learning to program would want to or need to use complex datastructures. In four years and several hundred thousand posts at Perl Monks, I've seen more often new programmers asking how to use variables in variable names than having trouble figuring out references. They're not even reaching the point of the idea of complex data structures.
As the documentation indicates.
Because of context, as the documentation indicates.
You didn't read the documentation. If you had, you'd know that the parentheses don't do anything besides expression grouping. You'd know that arrays can only contain scalars. You'd know how to store a list in a scalar by using an anonymous array or array reference.
You can agree or disagree with that decision, but until you understand context in Perl and its implications, Perl will continue to confuse you.
At the surface level, it shows what comics might be in a world where superheroes are real.
At a thematic level, it tells a story smaller than yet similar to Veidt's. Consider what the narrator of the pirate comic realizes at the end; at the end of Watchmen, Veidt has done the same sort of thing for the same reason. However, Veidt doesn't show that insight.
Remember, though, that Mac OS X runs on PPC only and Windows runs on x86 only. Would you throw out all non-x86 Linux installations or would your RPMs have really fat binaries?
Stephen Fishman's Open Source Licenses Are Not All The Same divides the most popular licences into four categories. You might find it useful.
The Crazy PPM Repository has a PPM for DBD::Pg.
It's x86 only. That won't do him much good.
I meant is a, not a the. (I don't normally write Franglais.)
Polymorphism a the building block of OO, not inheritance. It's a shame that so few popular languages make this clear.
Your senator or representative refuses to represent you because you belong to a different party? There was a sneak Constitutional amendment and there are only 50 senators and 218 representatives now? A space-time vortex has eaten one side of the Capitol building?
Call your senator and representative in the U. S. Congress.
Sure he can. He just can't redistribute code to which he doesn't hold the copyright without following the terms of the GPL or making some other arrangement with the copyright holder.
I've been working on something similar, encouraging people to write their life stories in short, daily segments. Anything that helps people to write something deliberately, every day, is a good idea. It doesn't have to be perfect. You don't have to show anyone. You just have to practice putting words to paper (so to speak) every day for a month.
See Write Your Life.
Issue:
to clear out all old objects, then: to build an optimized build with JIT enabled. The latter works best on x86 platforms. Then make and test as normal.I think you may be confusing "free" with "has no consequences".
Point taken, but all three of those have (or will have) representations in Parrot.
Why would people who write compilers have to write their own register allocators? I'd target PIR and use symbolic registers that IMCC will analyze and allocate automatically anyway.
That seems to be what the second half of your comment says, but I really don't understand what you mean here. Doesn't any IR have to emit some sort of unique symbols?
How did you compile Parrot? Right now, the default is to disable the JIT to help find bugs in the non-JIT codepaths. An optimized build might be even better.
That's not entirely fair. I suspect that with the CLR guys concentrating on providing a better platform for dynamic languages, .NET is a much more attractive target now than it was three years ago. How well would IronPython have worked on the CLR from 2001?