Why include a TCP/IP stack in your OS? Surely some people use other types of networks. Why include a libc, since clearly there are hundreds of other programming languages? Why include a syslog facility when some apps target some other logging facility or manage log files themselves? Why even have a local filesystem when people can just write to S3? Why ship framebuffer support since everyone eventually installs a vendor-specific accelerated video driver?
Here are some relevant soundbite-sized quotes.
- “Computer languages differ not so much in what they make possible, but in what they make easy.”
- “When they first built the University of California at Irvine they just put the buildings in. They did not put any sidewalks, they just planted grass. The next year, they came back and put the sidewalks where the trails were in the grass. Perl is just that kind of language. It is not designed from first principles. Perl is those sidewalks in the grass.”
-
"Perl is designed to give you several ways to do anything, so consider picking the most readable one."
-
"Portability should be the default.”
-
“Part of language design is perturbing the proposed feature in various directions to see how it might generalize in the future.”
-
“A journey of a thousand miles continues with the second step.”
-
"Although the Perl Slogan is There's More Than One Way to Do It, I hesitate to make 10 ways to do something."
-
“We're really serious about reinventing everything that needs reinventing.”
Do you know who said any of those? They're all from timtoady and I can't think of a better indicator of the Perl nature than its creator. We've had many, many ways to do it. Now there are some pretty good ideas where the paths are in the grass. The language should have a way to do the things we need it to do, to perturb the OO feature in a direction that in this case is already being generalized for the future. It can finally be a a readable way to do things that goes everywhere recent versions of the core language tools will be installed. That will help Perl make OO easy.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|