128 |
freedoms in question, and thus renders the program nonfree. |
freedoms in question, and thus renders the program nonfree. |
129 |
</p> |
</p> |
130 |
|
|
131 |
<p>The rest of this page clarifies certain points about what makes |
<h3>Clarifying the line at various points</h3> |
132 |
specific freedoms adequate or not.</p> |
|
133 |
|
<p>In the rest of this article we expain more precisely how far the |
134 |
|
various freedoms need to extend, on various issues, in order for a |
135 |
|
program to be free.</p> |
136 |
|
|
137 |
<h4>The freedom to run the program as you wish</h4> |
<h4>The freedom to run the program as you wish</h4> |
138 |
|
|
154 |
functioning in any given environment, or whether it is useful for any |
functioning in any given environment, or whether it is useful for any |
155 |
particular computing activity.</p> |
particular computing activity.</p> |
156 |
|
|
157 |
|
<p>For example, if the code arbitrarily rejects certain meanimgful |
158 |
|
inputs—or even fails unconditionally—that may make the |
159 |
|
program less useful, perhaps even totally useless, but it does not |
160 |
|
deny users the freedom to run the program, so it does not conflict |
161 |
|
with freedom 0. If the program is free, the users can overcome the |
162 |
|
loss of usefulness, because freedoms 1 and 3 permit users and |
163 |
|
communities to make and distribute modified versions without the |
164 |
|
arbitrary nuisanc ecode.</p> |
165 |
|
|
166 |
<h4>The freedom to study the source code and make changes</h4> |
<h4>The freedom to study the source code and make changes</h4> |
167 |
|
|
168 |
<p> |
<p> |
169 |
In order for freedoms 1 and 3 (the freedom to make changes and the |
In order for freedoms 1 and 3 (the freedom to make changes and the |
170 |
freedom to publish the changed versions) to be meaningful, you must have |
freedom to publish the changed versions) to be meaningful, you need to have |
171 |
access to the source code of the program. Therefore, accessibility of |
access to the source code of the program. Therefore, accessibility of |
172 |
source code is a necessary condition for free software. Obfuscated |
source code is a necessary condition for free software. Obfuscated |
173 |
“source code” is not real source code and does not count |
“source code” is not real source code and does not count |
460 |
|
|
461 |
<ul> |
<ul> |
462 |
|
|
463 |
<li><a href="http://web.cvs.savannah.gnu.org/viewvc/www/philosophy/free-sw.html?root=www&r1=1.162&r2=1.163">Version |
<li><a href="http://web.cvs.savannah.gnu.org/viewvc/www/philosophy/free-sw.html?root=www&r1=1.164&r2=1.165">Version |
464 |
1.163</a>: Clarify that the four freedoms apply to any and all users, |
1.165</a>: Clarify that arbitrary annoyances in the code do not |
465 |
and that requiring users to pay to exercise some of these freedoms is |
negate freedom 0, and that freedoms 1 and 3 enable users to remove them.</li> |
|
a way of denying them.</li> |
|
466 |
|
|
467 |
<li><a href="http://web.cvs.savannah.gnu.org/viewvc/www/philosophy/free-sw.html?root=www&r1=1.152&r2=1.153">Version |
<li><a href="http://web.cvs.savannah.gnu.org/viewvc/www/philosophy/free-sw.html?root=www&r1=1.152&r2=1.153">Version |
468 |
1.153</a>: Clarify that freedom to run the program means nothing stops |
1.153</a>: Clarify that freedom to run the program means nothing stops |