www-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

www/gnu/po rms-lisp.es.po


From: Xavier Reina
Subject: www/gnu/po rms-lisp.es.po
Date: Wed, 28 Jul 2010 10:46:04 +0000

CVSROOT:        /web/www
Module name:    www
Changes by:     Xavier Reina <xavi_>    10/07/28 10:46:03

Added files:
        gnu/po         : rms-lisp.es.po 

Log message:
        Added translation

CVSWeb URLs:
http://web.cvs.savannah.gnu.org/viewcvs/www/gnu/po/rms-lisp.es.po?cvsroot=www&rev=1.1

Patches:
Index: rms-lisp.es.po
===================================================================
RCS file: rms-lisp.es.po
diff -N rms-lisp.es.po
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ rms-lisp.es.po      28 Jul 2010 10:45:57 -0000      1.1
@@ -0,0 +1,1250 @@
+# Spanish translation of http://www.gnu.org/gnu/rms-list.html
+# Copyright (C) 2009 Free Software Foundation, Inc.
+# This file is distributed under the same license as the gnu.org article.
+#
+# Rafa Pereira <address@hidden>, 2009.
+# Xavier Reina <address@hidden>, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: rms-list.html\n"
+"POT-Creation-Date: 2009-04-28 16:25-0300\n"
+"PO-Revision-Date: 2010-07-28 12:44+0200\n"
+"Last-Translator: Xavier Reina <address@hidden>\n"
+"Language-Team: Español <address@hidden>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Lokalize 1.0\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+# type: Content of: <title>
+msgid ""
+"My Lisp Experiences and the Development of GNU Emacs - GNU Project - Free "
+"Software Foundation (FSF)"
+msgstr ""
+"Mis experiencias con Lisp y el desarrollo de Emacs de GNU - Proyecto GNU - "
+"Free Software Foundation (FSF)"
+
+# type: Content of: <h2>
+msgid "My Lisp Experiences and the Development of GNU Emacs"
+msgstr "Mis experiencias con Lisp y el desarrollo de Emacs de GNU"
+
+# type: Content of: <h3>
+msgid ""
+"(Transcript of Richard Stallman's Speech, 28 Oct 2002, at the International "
+"Lisp Conference)."
+msgstr ""
+"(Transcripción de la conferencia pronunciada por Richard Stallman el 28 de "
+"octubre de 2002 en el Congreso Internacional de Lisp [<span "
+"style=\"font-style:italic;\">International Lisp Conference</span>])."
+
+# type: Content of: <p>
+msgid ""
+"Since none of my usual speeches have anything to do with Lisp, none of them "
+"were appropriate for today. So I'm going to have to wing it.  Since I've "
+"done enough things in my career connected with Lisp I should be able to say "
+"something interesting."
+msgstr ""
+"Dado que ninguna de mis charlas habituales tiene nada que ver con Lisp, "
+"ninguna era apropiada para hoy. Así que voy a tener que improvisar. Como he "
+"hecho bastantes cosas relacionadas con Lisp a lo largo de mi carrera, "
+"debería ser capaz de decir algo interesante."
+
+# type: Content of: <p>
+msgid ""
+"My first experience with Lisp was when I read the Lisp 1.5 manual in high "
+"school. That's when I had my mind blown by the idea that there could be a "
+"computer language like that. The first time I had a chance to do anything "
+"with Lisp was when I was a freshman at Harvard and I wrote a Lisp "
+"interpreter for the <abbr title=\"Programmed Data Processor\">PDP</abbr>-11. "
+"It was a very small machine &mdash; it had something like 8k of memory "
+"&mdash; and I managed to write the interpreter in a thousand instructions. "
+"This gave me some room for a little bit of data. That was before I got to "
+"see what real software was like, that did real system jobs."
+msgstr ""
+"Mi primera experiencia con Lisp tuvo lugar en la escuela secundaria, cuando "
+"leí el manual de Lisp 1.5. Entonces quedé maravillado con la idea de que "
+"pudiera haber un lenguaje de programación así. La primera vez que tuve la "
+"oportunidad de hacer algo en Lisp fue siendo un novato en Harvard, cuando "
+"escribí un intérprete de Lisp para el <abbr title=\"Programmed Data "
+"Processor\" lang=\"en\">PDP</abbr>-11. Era una máquina muy pequeña, tenía "
+"algo así como 8k de memoria, y me las arreglé para escribir el intérprete "
+"en unas mil instrucciones. Eso me dejó sitio para unos pocos datos. Aquello "
+"fue antes de que llegara a conocer cómo era el software real, el que hacía "
+"el trabajo en los sistemas reales."
+
+# type: Content of: <p>
+msgid ""
+"I began doing work on a real Lisp implementation with JonL White once I "
+"started working at <abbr title=\"Massachusetts Institute of Technology"
+"\">MIT</abbr>. I got hired at the Artificial Intelligence Lab not by JonL, "
+"but by Russ Noftsker, which was most ironic considering what was to come "
+"&mdash; he must have really regretted that day."
+msgstr ""
+"Fue tras comenzar mi trabajo en el <abbr title=\"Instituto de Tecnología de "
+"Massachusetts\">MIT</abbr> cuando empecé a trabajar en una "
+"implementación real de Lisp con JonL White. No fui contratado para el "
+"Laboratorio de Inteligencia Artificial gracias a JonL, sino por Russ "
+"Noftsker, "
+"lo que es de lo más irónico teniendo en cuenta lo que vendría después, "
+"debe de haber lamentado realmente lo ocurrido aquel día."
+
+# type: Content of: <p>
+msgid ""
+"During the 1970s, before my life became politicized by horrible events, I "
+"was just going along making one extension after another for various "
+"programs, and most of them did not have anything to do with Lisp. But, along "
+"the way, I wrote a text editor, Emacs. The interesting idea about Emacs was "
+"that it had a programming language, and the user's editing commands would be "
+"written in that interpreted programming language, so that you could load new "
+"commands into your editor while you were editing. You could edit the "
+"programs you were using and then go on editing with them. So, we had a "
+"system that was useful for things other than programming, and yet you could "
+"program it while you were using it. I don't know if it was the first one of "
+"those, but it certainly was the first editor like that."
+msgstr ""
+"En la década de los 70, antes de que mi vida se politizara a causa de "
+"terribles sucesos, simplemente me dedicaba a hacer una extensión tras otra "
+"de varios programas, la mayoría de los cuales no tenía nada que ver con "
+"Lisp. Pero, al mismo tiempo, escribí un editor de textos: Emacs. Lo "
+"interesante de Emacs era que incluía un lenguaje de programación, y las "
+"órdenes de edición de texto a utilizar por usted como usuario serían "
+"escritas en ese lenguaje de programación interpretado, de forma que  "
+"podría cargar nuevas órdenes en el editor mientras estaba editando. Podría 
"
+"modificar los programas que estaba utilizando e, inmediatamente, editar "
+"utilizando los programas recién modificados. Es decir, teníamos un sistema "
+"que resultaba útil para algo más que para programar, y, sin embargo, "
+"permitía que usted lo programara mientras lo estaba usando. No sé si era el 
"
+"primer sistema de estas características, pero, desde luego, sí el primer "
+"editor así."
+
+# type: Content of: <p>
+msgid ""
+"This spirit of building up gigantic, complicated programs to use in your own "
+"editing, and then exchanging them with other people, fueled the spirit of "
+"free-wheeling cooperation that we had at the AI Lab then. The idea was that "
+"you could give a copy of any program you had to someone who wanted a copy of "
+"it. We shared programs to whomever wanted to use them, they were human "
+"knowledge. So even though there was no organized political thought relating "
+"the way we shared software to the design of Emacs, I'm convinced that there "
+"was a connection between them, an unconscious connection perhaps. I think "
+"that it's the nature of the way we lived at the AI Lab that led to Emacs and "
+"made it what it was."
+msgstr ""
+"Esta construcción de programas complejos y gigantescos para usarlos en las "
+"ediciones de textos de uno, y después intercambiarlos con otros, alimentó 
el "
+"espíritu de cooperación espontánea que teníamos entonces en el 
Laboratorio "
+"de Inteligencia Artificial. La idea era que podía dar una copia de cualquier 
"
+"programa que tuviera a quien quisiera una. Compartíamos programas "
+"con todo el que deseara usarlos, eran conocimiento humano. Así que, a pesar "
+"de que no había un pensamiento político organizado que relacionara la forma 
"
+"en que compartíamos software con el diseño de Emacs, estoy convencido de 
que "
+"había una conexión entre ellos, quizá una conexión inconsciente. Creo que 
"
+"fue la naturaleza de la forma de vida que llevábamos en el Laboratorio de "
+"Inteligencia Artificial lo que condujo a Emacs e hizo de él lo que fue."
+
+# type: Content of: <p>
+msgid ""
+"The original Emacs did not have Lisp in it. The lower level language, the "
+"non-interpreted language &mdash; was <abbr>PDP</abbr>-10 Assembler. The "
+"interpreter we wrote in that actually wasn't written for Emacs, it was "
+"written for <acronym title=\"Text Editor and COrrector\">TECO</acronym>. It "
+"was our text editor, and was an extremely ugly programming language, as ugly "
+"as could possibly be. The reason was that it wasn't designed to be a "
+"programming language, it was designed to be an editor and command language. "
+"There were commands like &lsquo;5l&rsquo;, meaning &lsquo;move five "
+"lines&rsquo;, or &lsquo;i&rsquo; and then a string and then an ESC to insert "
+"that string. You would type a string that was a series of commands, which "
+"was called a command string. You would end it with ESC ESC, and it would get "
+"executed."
+msgstr ""
+"El Emacs original no incluía Lisp. Su lenguaje, de más bajo nivel y no "
+"interpretado, era Ensamblador del <abbr>PDP</abbr>-10. El intérprete que "
+"escribimos nosotros en realidad no fue escrito para Emacs, sino para "
+"<acronym title=\"Text Editor and COrrector\" lang=\"en\">TECO</acronym>. "
+"<acronym>TECO</acronym> era nuestro editor de textos y era un lenguaje "
+"de programación extremadamente feo, no podía haber sido más "
+"feo. La razón era que no fue diseñado para ser un lenguaje de 
programación, "
+"sino como un lenguaje de órdenes y un editor de textos. Había órdenes como 
"
+"«5l», que significaba «mover cinco líneas», o «i» seguido de una 
cadena de "
+"caracteres y después ESC para insertar esa cadena de caracteres. Podría "
+"escribir una cadena de caracteres que fuera una secuencia de órdenes, lo "
+"que se llamaba una cadena de órdenes, terminada con ESC ESC, y sería "
+"ejecutada."
+
+# type: Content of: <p>
+msgid ""
+"Well, people wanted to extend this language with programming facilities, so "
+"they added some. For instance, one of the first was a looping construct, "
+"which was &lt; &gt;. You would put those around things and it would loop. "
+"There were other cryptic commands that could be used to conditionally exit "
+"the loop. To make Emacs, we <a href=\"#foot-7\">(7)</a> added facilities to "
+"have subroutines with names. Before that, it was sort of like Basic, and the "
+"subroutines could only have single letters as their names. That was hard to "
+"program big programs with, so we added code so they could have longer names. "
+"Actually, there were some rather sophisticated facilities; I think that Lisp "
+"got its unwind-protect facility from <acronym>TECO</acronym>."
+msgstr ""
+"Bien. La gente quería extender este lenguaje con elementos útiles para la "
+"programación, así que añadió algunos. Por ejemplo, uno de los primeros 
fue "
+"una estructura iterativa: &lt; &gt;. Encerrar algo entre estos signos hacía "
+"que se ejecutara en un bucle. Había otras crípticas órdenes que podían "
+"usarse para salir del bucle condicionalmente. Para construir Emacs, nosotros "
+"<a href=\"#foot-7\">(7)</a> añadimos mecanismos para tener subrutinas con "
+"nombres. Antes de esto, de forma análoga a lo que ocurre con Basic, los "
+"nombres de las subrutinas sólo podían estar formados por una letra. Con 
esta "
+"limitación era difícil escribir programas grandes, así que añadimos 
código "
+"que permitió que pudieran tener nombres más largos. De hecho, había 
algunos "
+"mecanismos bastante sofisticados; creo que Lisp tomó su mecanismo <span "
+"style=\"font-style:italic;\">unwind-protect</span> de "
+"<acronym>TECO</acronym>."
+
+# type: Content of: <p>
+msgid ""
+"We started putting in rather sophisticated facilities, all with the ugliest "
+"syntax you could ever think of, and it worked &mdash; people were able to "
+"write large programs in it anyway. The obvious lesson was that a language "
+"like <acronym>TECO</acronym>, which wasn't designed to be a programming "
+"language, was the wrong way to go. The language that you build your "
+"extensions on shouldn't be thought of as a programming language in "
+"afterthought; it should be designed as a programming language. In fact, we "
+"discovered that the best programming language for that purpose was Lisp."
+msgstr ""
+"Empezamos a añadir otros mecanismos sofisticados, todos ellos con la "
+"sintaxis más horrible que puedan imaginar, y funcionó, por lo menos "
+"la gente fue capaz de escribir programas extensos con él. La lección "
+"obvia fue que utilizar un lenguaje como <acronym>TECO</acronym>, "
+"que no había sido diseñado como lenguaje de programación, fue una opción "
+"equivocada. El lenguaje sobre el que construye sus extensiones no debería "
+"ser considerado como un lenguaje de programación a posteriori, sino "
+"que debería ser diseñado como un lenguaje de programación desde un "
+"principio. De hecho, nosotros descubrimos que el mejor lenguaje de "
+"programación para ese propósito era Lisp."
+
+# type: Content of: <p>
+msgid ""
+"It was Bernie Greenberg, who discovered that it was <a href=\"#foot-5\">(5)</"
+"a>. He wrote a version of Emacs in Multics MacLisp, and he wrote his "
+"commands in MacLisp in a straightforward fashion. The editor itself was "
+"written entirely in Lisp. Multics Emacs proved to be a great success &mdash; "
+"programming new editing commands was so convenient that even the secretaries "
+"in his office started learning how to use it. They used a manual someone had "
+"written which showed how to extend Emacs, but didn't say it was a "
+"programming. So the secretaries, who believed they couldn't do programming, "
+"weren't scared off. They read the manual, discovered they could do useful "
+"things and they learned to program."
+msgstr ""
+"Fue Bernie Greenberg quien descubrió que lo era <a href=\"#foot-5\">(5)</a>. 
"
+"Escribió una versión de Emacs en Multics MacLisp, y programó sus órdenes 
en "
+"MacLisp de forma sencilla. El propio editor estaba escrito enteramente en "
+"Lisp. Multics Emacs fue un gran éxito: programar nuevas órdenes de "
+"edición era tan práctico que incluso los administrativos empezaron a "
+"aprender a hacerlo en sus oficinas. Utilizaban un manual que mostraba cómo "
+"extender Emacs, pero que no lo llamaba programación, de forma que los "
+"administrativos, que pensaban que no sabían programar, no se asustaran. "
+"Leyeron el manual, descubrieron que podían hacer cosas útiles y aprendieron 
"
+"a programar."
+
+# type: Content of: <p>
+msgid ""
+"So Bernie saw that an application &mdash; a program that does something "
+"useful for you &mdash; which has Lisp inside it and which you could extend "
+"by rewriting the Lisp programs, is actually a very good way for people to "
+"learn programming. It gives them a chance to write small programs that are "
+"useful for them, which in most arenas you can't possibly do. They can get "
+"encouragement for their own practical use &mdash; at the stage where it's "
+"the hardest &mdash; where they don't believe they can program, until they "
+"get to the point where they are programmers."
+msgstr ""
+"Así que Bernie vio que una aplicación, un programa que hace algo útil "
+"para usted, con Lisp en su interior y que pueda extender reescribiendo "
+"los programas Lisp, es realmente una muy buena manera de que la gente "
+"aprenda a programar. Le da la oportunidad de escribir pequeños programas "
+"que le son útiles, algo que, en la mayoría de las situaciones, no puede "
+"hacer. "
+"Le puede estimular para transitar mediante su propio uso en la práctica, en "
+"la que es la fase más dura, desde su creencia en su propia incapacidad para "
+"programar, hasta el momento en el que ya es un programador."
+
+# type: Content of: <p>
+msgid ""
+"At that point, people began to wonder how they could get something like this "
+"on a platform where they didn't have full service Lisp implementation. "
+"Multics MacLisp had a compiler as well as an interpreter &mdash; it was a "
+"full-fledged Lisp system &mdash; but people wanted to implement something "
+"like that on other systems where they had not already written a Lisp "
+"compiler. Well, if you didn't have the Lisp compiler you couldn't write the "
+"whole editor in Lisp &mdash; it would be too slow, especially redisplay, if "
+"it had to run interpreted Lisp.  So we developed a hybrid technique. The "
+"idea was to write a Lisp interpreter and the lower level parts of the editor "
+"together, so that parts of the editor were built-in Lisp facilities. Those "
+"would be whatever parts we felt we had to optimize. This was a technique "
+"that we had already consciously practiced in the original Emacs, because "
+"there were certain fairly high level features which we re-implemented in "
+"machine language, making them into <acronym>TECO</acronym> primitives. For "
+"instance, there was a <acronym>TECO</acronym> primitive to fill a paragraph "
+"(actually, to do most of the work of filling a paragraph, because some of "
+"the less time-consuming parts of the job would be done at the higher level "
+"by a <acronym>TECO</acronym> program). You could do the whole job by writing "
+"a <acronym>TECO</acronym> program, but that was too slow, so we optimized it "
+"by putting part of it in machine language. We used the same idea here (in "
+"the hybrid technique), that most of the editor would be written in Lisp, but "
+"certain parts of it that had to run particularly fast would be written at a "
+"lower level."
+msgstr ""
+"Llegado este punto, la gente se empezó a preguntar cómo podría conseguir "
+"algo así en una plataforma que no poseyera una implementación de Lisp "
+"completa. Multics MacLisp tenía tanto un compilador como un intérprete, "
+"era un sistema Lisp con todas las de la ley, pero la gente quería "
+"implementar "
+"algo similar en otros sistemas para los cuales todavía no había programado "
+"un "
+"compilador de Lisp. Bien, si no tenía el compilador de Lisp no podía "
+"escribir "
+"todo el editor en Lisp: resultaría demasiado lento, especialmente al "
+"refrescar "
+"la pantalla, si tenía que ejecutarse en Lisp interpretado. Así que "
+"desarrollamos "
+"una técnica híbrida. La idea era escribir conjuntamente un intérprete de "
+"Lisp y "
+"los fragmentos de nivel más bajo del editor, de forma que algunos fragmentos 
"
+"del "
+"editor fueran mecanismos incorporados en el intérprete de Lisp. Estos "
+"fragmentos "
+"serían todas aquellas partes que consideráramos que teníamos que 
optimizar. "
+"Ya "
+"habíamos utilizado esta técnica en el Emacs original, cuando reescribimos 
en "
+"lenguaje máquina algunas funciones de nivel relativamente alto, "
+"transformándolas "
+"en primitivas <acronym>TECO</acronym>. Por ejemplo, había una primitiva "
+"<acronym>TECO</acronym> para rellenar un párrafo (en realidad, para hacer "
+"casi todo el trabajo necesario para rellenar un párrafo, porque algunas de "
+"las "
+"tareas que menos tiempo consumían eran realizadas en un nivel superior por "
+"un programa <acronym>TECO</acronym>). Se podría haber hecho todo el "
+"trabajo con un programa <acronym>TECO</acronym>, pero habría resultado "
+"demasiado lento, por eso lo optimizamos escribiendo parte de él en lenguaje "
+"máquina. Esa misma idea es la que usamos aquí (en la técnica híbrida): "
+"escribimos la mayoría del editor en Lisp, pero escribimos en un nivel "
+"inferior "
+"algunas partes que tenían que ejecutarse particularmente rápido."
+
+# type: Content of: <p>
+msgid ""
+"Therefore, when I wrote my second implementation of Emacs, I followed the "
+"same kind of design. The low level language was not machine language "
+"anymore, it was C. C was a good, efficient language for portable programs to "
+"run in a Unix-like operating system. There was a Lisp interpreter, but I "
+"implemented facilities for special purpose editing jobs directly in C "
+"&mdash; manipulating editor buffers, inserting leading text, reading and "
+"writing files, redisplaying the buffer on the screen, managing editor "
+"windows."
+msgstr ""
+"Por lo tanto, cuando escribí mi segunda implementación de Emacs seguí el "
+"mismo esquema. El lenguaje de bajo nivel ya no era lenguaje máquina, sino C. 
"
+"C era un lenguaje bueno y eficiente para programas portátiles que fueran a "
+"ejecutarse en un sistema operativo tipo Unix. Había un intérprete de Lisp, "
+"pero implementé directamente en C funciones para tareas de edición de "
+"propósito específico: manipular las zonas de memoria intermedia [buffers] "
+"del editor, insertar texto por delante, leer y escribir ficheros, refrescar "
+"la "
+"pantalla con el contenido de la memoria intermedia y gestionar la ventanas "
+"del editor."
+
+# type: Content of: <p>
+msgid ""
+"Now, this was not the first Emacs that was written in C and ran on Unix. The "
+"first was written by James Gosling, and was referred to as GosMacs. A "
+"strange thing happened with him. In the beginning, he seemed to be "
+"influenced by the same spirit of sharing and cooperation of the original "
+"Emacs. I first released the original Emacs to people at <abbr>MIT</abbr>. "
+"Someone wanted to port it to run on Twenex &mdash; it originally only ran on "
+"the Incompatible Timesharing System we used at <abbr>MIT</abbr>. They ported "
+"it to Twenex, which meant that there were a few hundred installations around "
+"the world that could potentially use it. We started distributing it to them, "
+"with the rule that &ldquo;you had to send back all of your "
+"improvements&rdquo; so we could all benefit. No one ever tried to enforce "
+"that, but as far as I know people did cooperate."
+msgstr ""
+"Ahora bien, este no fue el primer Emacs escrito en C y que se ejecutaba en "
+"Unix. El primero lo escribió James Gosling, y era conocido como GosMacs. Con 
"
+"James ocurrió algo extraño. Al principio parecía estar influido por el 
mismo "
+"espíritu de participación y cooperación del Emacs original. En primer 
lugar "
+"liberé el Emacs original para personal del <abbr>MIT</abbr>. Alguien quería 
"
+"adaptarlo para su ejecución en Twenex, inicialmente sólo se podía ejecutar 
"
+"sobre "
+"el <span style=\"font-style:italic;\">Incompatible Timesharing System</span> "
+"[sistema de tiempo compartido incompatible] que usábamos en el "
+"<abbr>MIT</abbr>. Lo adaptaron a Twenex, lo cual significaba que había "
+"unos pocos cientos de instalaciones alrededor del mundo que podían, "
+"potencialmente, usarlo. Empezamos a distribuírselo junto con la norma de que 
"
+"«usted debía enviarnos todas sus mejoras» para que así todos nos 
pudiéramos "
+"beneficiar. Nadie intentó nunca hacer cumplir esta norma pero, hasta donde "
+"yo sé, la gente cooperaba."
+
+# type: Content of: <p>
+msgid ""
+"Gosling did, at first, seem to participate in this spirit. He wrote in a "
+"manual that he called the program Emacs hoping that others in the community "
+"would improve it until it was worthy of that name. That's the right approach "
+"to take towards a community &mdash; to ask them to join in and make the "
+"program better. But after that he seemed to change the spirit, and sold it "
+"to a company."
+msgstr ""
+"Inicialmente Gosling parecía participar de este espíritu. Escribió en un "
+"manual que llamó Emacs al programa con la esperanza de que otros miembros de 
"
+"la comunidad lo mejoraran hasta que llegara a ser merecedor de ese nombre. "
+"Esa es la forma correcta de enfocar la relación con la comunidad,  "
+"pedirle que se una al proyecto y mejore el programa. Pero más adelante "
+"pareció cambiar el espíritu, y lo vendió a una empresa."
+
+# type: Content of: <p>
+msgid ""
+"At that time I was working on the GNU system (a free software Unix-like "
+"operating system that many people erroneously call &ldquo;Linux&rdquo;).  "
+"There was no free software Emacs editor that ran on Unix. I did, however, "
+"have a friend who had participated in developing Gosling's Emacs. Gosling "
+"had given him, by email, permission to distribute his own version. He "
+"proposed to me that I use that version. Then I discovered that Gosling's "
+"Emacs did not have a real Lisp. It had a programming language that was known "
+"as &lsquo;mocklisp&rsquo;, which looks syntactically like Lisp, but didn't "
+"have the data structures of Lisp.  So programs were not data, and vital "
+"elements of Lisp were missing.  Its data structures were strings, numbers "
+"and a few other specialized things."
+msgstr ""
+"Por aquel entonces yo estaba trabajando en el sistema GNU (un sistema "
+"operativo libre tipo Unix al que mucha gente llama erróneamente «Linux»). "
+"No había ningún editor Emacs que pudiera ejecutarse en Unix y que fuera "
+"software libre. No obstante, tenía un amigo que había participado en el "
+"desarrollo del Emacs de Gosling. Gosling le había dado permiso, por correo "
+"electrónico, para distribuir su propia versión. Me propuso que usara esa "
+"versión. Entonces me di cuenta de que el Emacs de Gosling no incluía un "
+"Lisp real. Tenía un lenguaje de programación conocido como «mocklisp», "
+"que sintácticamente parece Lisp pero que no tiene sus estructuras de "
+"datos. Así, los programas no eran datos, y carecía de elementos vitales "
+"de Lisp. Sus estructuras de datos eran cadenas de caracteres, números "
+"y unos pocos elementos especializados más."
+
+# type: Content of: <p>
+msgid ""
+"I concluded I couldn't use it and had to replace it all, the first step of "
+"which was to write an actual Lisp interpreter. I gradually adapted every "
+"part of the editor based on real Lisp data structures, rather than ad hoc "
+"data structures, making the data structures of the internals of the editor "
+"exposable and manipulable by the user's Lisp programs."
+msgstr ""
+"Llegué a la conclusión de que no podía utilizarlo y tuve que reemplazarlo "
+"por completo, para lo cual el primer paso fue escribir un intérprete de Lisp 
"
+"real. Gradualmente adapté cada componente del editor basándolo en "
+"estructuras de datos de Lisp real, en lugar de estructuras de datos ad hoc, "
+"y haciendo visibles y manipulables por los programas Lisp del usuario las "
+"estructuras de datos internas del editor."
+
+# type: Content of: <p>
+msgid ""
+"The one exception was redisplay. For a long time, redisplay was sort of an "
+"alternate world. The editor would enter the world of redisplay and things "
+"would go on with very special data structures that were not safe for garbage "
+"collection, not safe for interruption, and you couldn't run any Lisp "
+"programs during that. We've changed that since &mdash; it's now possible to "
+"run Lisp code during redisplay. It's a quite a convenient thing."
+msgstr ""
+"La excepción fue <span style=\"font-style:italic;\">redisplay</span>. "
+"Durante "
+"mucho tiempo, <span style=\"font-style:italic;\">redisplay</span> fue una "
+"especie de universo paralelo. El editor pasaba al universo de <span "
+"style=\"font-style:italic;\">redisplay</span> y todo funcionaba con "
+"estructuras "
+"de datos muy especiales que no eran seguras para la recolección de memoria "
+"[<span style=\"font-style:italic;\">garbage collection</span>], no eran "
+"seguras "
+"frente a interrupciones, y no podía ejecutar ningún programa Lisp mientras "
+"tanto. Posteriormente lo hemos modificado, ahora se puede ejecutar código "
+"Lisp concurrentemente con <span style=\"font-style:italic;\">redisplay</span>"
+". "
+"Es algo muy práctico."
+
+# type: Content of: <p>
+msgid ""
+"This second Emacs program was &lsquo;free software&rsquo; in the modern "
+"sense of the term &mdash; it was part of an explicit political campaign to "
+"make software free. The essence of this campaign was that everybody should "
+"be free to do the things we did in the old days at <abbr>MIT</abbr>, working "
+"together on software and working with whomever wanted to work with us.  That "
+"is the basis for the free software movement &mdash; the experience I had, "
+"the life that I've lived at the <abbr>MIT</abbr> AI lab &mdash; to be "
+"working on human knowledge, and not be standing in the way of anybody's "
+"further using and further disseminating human knowledge."
+msgstr ""
+"Este segundo Emacs era «software libre» en el sentido moderno del "
+"término: formaba parte de una campaña política explícita para la "
+"elaboración de software libre. La esencia de la campaña era que todo el "
+"mundo debería ser libre de hacer lo que nosotros hacíamos en el "
+"<abbr>MIT</abbr> en los viejos tiempos: trabajar conjuntamente en "
+"el software y colaborar con todo el que quisiera trabajar con nosotros. "
+"Esta es la base del movimiento por el software libre, la experiencia que "
+"tuve, la vida que viví en el Laboratorio de Inteligencia Artificial del "
+"<abbr>MIT</abbr>: trabajar para el conocimiento, y no obstaculizar "
+"su uso ni su expansión."
+
+# type: Content of: <p>
+msgid ""
+"At the time, you could make a computer that was about the same price range "
+"as other computers that weren't meant for Lisp, except that it would run "
+"Lisp much faster than they would, and with full type checking in every "
+"operation as well. Ordinary computers typically forced you to choose between "
+"execution speed and good typechecking.  So yes, you could have a Lisp "
+"compiler and run your programs fast, but when they tried to take <tt>car</"
+"tt> of a number, it got nonsensical results and eventually crashed at some "
+"point."
+msgstr ""
+"En esa época, podía construir un ordenador por un precio similar al de "
+"otros ordenadores que no estaban pensados para usar Lisp, en el cual Lisp se "
+"ejecutaría mucho más rápido y que incluiría validación de tipos en cada "
+"operación. Los ordenadores normales típicamente le forzaban a elegir "
+"entre velocidad de ejecución y buena validación de tipos. O sea que sí, "
+"podía tener un compilador de Lisp y ejecutar sus programas con "
+"velocidad, pero cuando sus programas intentaban tomar <tt>car</tt> de un "
+"número, obtenían resultados absurdos y terminaban por fallar o bloquearse."
+
+# type: Content of: <p>
+msgid ""
+"The Lisp machine was able to execute instructions about as fast as those "
+"other machines, but each instruction &mdash; a car instruction would do data "
+"typechecking &mdash; so when you tried to get the car of a number in a "
+"compiled program, it would give you an immediate error. We built the machine "
+"and had a Lisp operating system for it. It was written almost entirely in "
+"Lisp, the only exceptions being parts written in the microcode. People "
+"became interested in manufacturing them, which meant they should start a "
+"company."
+msgstr ""
+"La máquina Lisp podía ejecutar instrucciones aproximadamente a la misma "
+"velocidad que esas otras máquinas, pero cada instrucción validaría los 
tipos "
+"de los datos, así cuando usted intentara obtener el <tt>car</tt> de un "
+"número en un programa compilado, obtendría un error inmediato. "
+"Construimos la máquina y un sistema operativo Lisp para ella. Estaba escrito 
"
+"en Lisp casi en su totalidad, con las únicas excepciones de algunos "
+"fragmentos escritos en microcódigo. Hubo quien se interesó en fabricarla, 
lo "
+"que significaba fundar una empresa."
+
+# type: Content of: <p>
+msgid ""
+"There were two different ideas about what this company should be like.  "
+"Greenblatt wanted to start what he called a &ldquo;hacker&rdquo; company. "
+"This meant it would be a company run by hackers and would operate in a way "
+"conducive to hackers. Another goal was to maintain the AI Lab culture <a "
+"href=\"#foot-1\">(1)</a>. Unfortunately, Greenblatt didn't have any business "
+"experience, so other people in the Lisp machine group said they doubted "
+"whether he could succeed. They thought that his plan to avoid outside "
+"investment wouldn't work."
+msgstr ""
+"Había dos visiones diferentes sobre cómo debería ser esa empresa. 
Greenblatt "
+"quería fundar lo que él llamaba una empresa «hacker». Esto quería decir "
+"que sería una empresa gestionada por hackers y que operaría de un modo "
+"propicio para hackers. Otro objetivo era mantener la cultura del Laboratorio "
+"de Inteligencia Artificial <a href=\"#foot-1\">(1)</a>. Desafortunadamente, "
+"Greenblatt no tenía experiencia empresarial, por lo que otros miembros del "
+"grupo de la máquina Lisp expresaron sus dudas sobre el éxito de la empresa. 
"
+"Pensaban que su plan para evitar inversiones externas no funcionaría."
+
+# type: Content of: <p>
+msgid ""
+"Why did he want to avoid outside investment? Because when a company has "
+"outside investors, they take control and they don't let you have any "
+"scruples. And eventually, if you have any scruples, they also replace you as "
+"the manager."
+msgstr ""
+"¿Por qué quería evitar la inversión externa?. Porque cuando una empresa "
+"tiene "
+"inversores externos, éstos toman el control y no permiten que tenga ningún "
+"escrúpulo. Y, si usted tiene algún escrúpulo, finalmente le relevan de sus 
"
+"funciones directivas."
+
+# type: Content of: <p>
+msgid ""
+"So Greenblatt had the idea that he would find a customer who would pay in "
+"advance to buy the parts. They would build machines and deliver them; with "
+"profits from those parts, they would then be able to buy parts for a few "
+"more machines, sell those and then buy parts for a larger number of "
+"machines, and so on. The other people in the group thought that this "
+"couldn't possibly work."
+msgstr ""
+"La idea de Greenblatt era encontrar un cliente que pagara sus máquinas "
+"por adelantado para poder comprar las piezas necesarias. Construirían las "
+"máquinas y las entregarían; con los beneficios obtenidos podrían comprar "
+"las piezas para unas pocas máquinas más, venderlas, comprar piezas "
+"para un número mayor de máquinas, y así sucesivamente. Los otros "
+"miembros del grupo pensaban que lo más probable era que el plan no "
+"saliera bien."
+
+# type: Content of: <p>
+msgid ""
+"Greenblatt then recruited Russell Noftsker, the man who had hired me, who "
+"had subsequently left the AI Lab and created a successful company.  Russell "
+"was believed to have an aptitude for business. He demonstrated this aptitude "
+"for business by saying to the other people in the group, &ldquo;Let's ditch "
+"Greenblatt, forget his ideas, and we'll make another company.&rdquo; "
+"Stabbing in the back, clearly a real businessman. Those people decided they "
+"would form a company called Symbolics. They would get outside investment, "
+"not have scruples, and do everything possible to win."
+msgstr ""
+"Entonces Greenblatt reclutó a Russell Noftsker, la persona que me había "
+"contratado, quien había dejado el Laboratorio de Inteligencia Artificial y "
+"creado una empresa exitosa. Russell era considerado una persona con "
+"aptitudes para los negocios. Demostró serlo al decir a los otros miembros "
+"del grupo: «deshagámonos de Greenblatt, olvidad sus ideas, y fundaremos "
+"otra empresa». Apuñalando por la espalda, sin duda un auténtico hombre "
+"de negocios. Decidieron crear una empresa llamada Symbolics. Obtendrían "
+"financiación externa, no tendrían escrúpulos y harían todo lo posible 
para "
+"ganar."
+
+# type: Content of: <p>
+msgid ""
+"But Greenblatt didn't give up. He and the few people loyal to him decided to "
+"start Lisp Machines Inc. anyway and go ahead with their plans. And what do "
+"you know, they succeeded! They got the first customer and were paid in "
+"advance. They built machines and sold them, and built more machines and more "
+"machines. They actually succeeded even though they didn't have the help of "
+"most of the people in the group. Symbolics also got off to a successful "
+"start, so you had two competing Lisp machine companies. When Symbolics saw "
+"that LMI was not going to fall flat on its face, they started looking for "
+"ways to destroy it."
+msgstr ""
+"Pero Greenblatt no se dio por vencido. Fundó, junto con los pocos que "
+"permanecieron leales a él, Lisp Machines Inc. y siguió adelante con sus "
+"planes. ¡Y tuvieron éxito! Consiguieron el primer cliente y éste les pagó 
"
+"por adelantado. Construyeron las máquinas y las vendieron, y construyeron "
+"más y más máquinas. Tuvieron éxito a pesar de no contar con la ayuda de 
la "
+"mayor parte de los miembros del grupo. Symbolics también empezó con buen "
+"pie, así que había dos empresas de máquinas Lisp compitiendo. Cuando "
+"Symbolics vio que LMI no se iba a caer de bruces empezó a buscar maneras de "
+"destruirla."
+
+# type: Content of: <p>
+msgid ""
+"Thus, the abandonment of our lab was followed by &ldquo;war&rdquo; in our "
+"lab.  The abandonment happened when Symbolics hired away all the hackers, "
+"except me and the few who worked at LMI part-time. Then they invoked a rule "
+"and eliminated people who worked part-time for <abbr>MIT</abbr>, so they had "
+"to leave entirely, which left only me. The AI lab was now helpless.  And "
+"<abbr>MIT</abbr> had made a very foolish arrangement with these two "
+"companies.  It was a three-way contract where both companies licensed the "
+"use of Lisp machine system sources. These companies were required to let "
+"<abbr>MIT</abbr> use their changes. But it didn't say in the contract that "
+"<abbr>MIT</abbr> was entitled to put them into the <abbr>MIT</abbr> Lisp "
+"machine systems that both companies had licensed. Nobody had envisioned that "
+"the AI lab's hacker group would be wiped out, but it was."
+msgstr ""
+"Por lo tanto, al abandono de nuestro laboratorio le siguió la «guerra»  en 
"
+"nuestro laboratorio. El abandono tuvo lugar cuando Symbolics se llevó a "
+"todos los hackers, excepto a los pocos que trabajaban a tiempo parcial en "
+"LMI "
+"y a mí mismo. Luego apelaron a una norma y eliminaron a la gente que "
+"trabajaba a tiempo parcial para el <abbr>MIT</abbr>, que tuvo que marcharse, "
+"lo cual me dejo sólo a mí. En ese momento el Laboratorio de Inteligencia "
+"Artificial "
+"estaba indefenso. Y, además, el <abbr>MIT</abbr> había llegado a un acuerdo 
"
+"muy poco sensato con esas dos empresas. Era un contrato a tres bandas por "
+"el que ambas empresas autorizaban el uso de los fuentes del sistema de la "
+"máquina Lisp. Estas empresas debían permitir al <abbr>MIT</abbr> usar "
+"sus modificaciones. Pero el contrato no decía que el <abbr>MIT</abbr> "
+"tuviera "
+"derecho a instalarlas en las máquinas Lisp para cuyo uso le habían otorgado 
"
+"licencia ambas empresas. Nadie había previsto que el grupo de hackers del "
+"Laboratorio de Inteligencia Artificial sería aniquilado, pero lo fue."
+
+# type: Content of: <p>
+msgid ""
+"So Symbolics came up with a plan <a href=\"#foot-4\">(4)</a>. They said to "
+"the lab, &ldquo;We will continue making our changes to the system available "
+"for you to use, but you can't put it into the <abbr>MIT</abbr> Lisp machine "
+"system. Instead, we'll give you access to Symbolics' Lisp machine system, "
+"and you can run it, but that's all you can do.&rdquo;"
+msgstr ""
+"A Symbolics se le ocurrió un plan <a href=\"#foot-4\">(4)</a>. Dijeron al "
+"laboratorio: «seguiremos permitiéndoles que usen nuestras modificaciones "
+"al sistema, pero no podrán instalarlas en la máquina Lisp del "
+"<abbr>MIT</abbr>. En su lugar, les daremos acceso al sistema de la máquina "
+"Lisp de Symbolics, y podrán ejecutarlo, pero eso será todo lo que podrán "
+"hacer.»."
+
+# type: Content of: <p>
+msgid ""
+"This, in effect, meant that they demanded that we had to choose a side, and "
+"use either the <abbr>MIT</abbr> version of the system or the Symbolics "
+"version.  Whichever choice we made determined which system our improvements "
+"went to. If we worked on and improved the Symbolics version, we would be "
+"supporting Symbolics alone. If we used and improved the <abbr>MIT</abbr> "
+"version of the system, we would be doing work available to both companies, "
+"but Symbolics saw that we would be supporting LMI because we would be "
+"helping them continue to exist. So we were not allowed to be neutral anymore."
+msgstr ""
+"Esto, en la práctica, significaba que nos exigían posicionarnos en un bando 
"
+"y utilizar, o bien la versión del <abbr>MIT</abbr> del sistema, o bien la "
+"versión de Symbolics. Nuestra decisión determinaría a qué sistema irían "
+"nuestras mejoras. Si mejorábamos la versión de Symbolics, estaríamos "
+"apoyando a Symbolics exclusivamente. Si utilizábamos y mejorábamos la "
+"versión del sistema del <abbr>MIT</abbr>, ambas empresas tendrían acceso a "
+"nuestro trabajo. Pero Symbolics vio que estaríamos dando apoyo a LMI porque "
+"estaríamos ayudando a que siguiera existiendo. Así, no se nos permitió "
+"seguir siendo neutrales."
+
+# type: Content of: <p>
+msgid ""
+"Up until that point, I hadn't taken the side of either company, although it "
+"made me miserable to see what had happened to our community and the "
+"software.  But now, Symbolics had forced the issue.  So, in an effort to "
+"help keep Lisp Machines Inc. going <a href=\"#foot-2\">(2)</a> &mdash; I "
+"began duplicating all of the improvements Symbolics had made to the Lisp "
+"machine system.  I wrote the equivalent improvements again myself (i.e., the "
+"code was my own)."
+msgstr ""
+"Hasta ese momento yo no había tomado partido por ninguna de las dos "
+"empresas, aunque me entristecía ver lo que le había ocurrido a nuestra "
+"comunidad y al software. Pero ahora, Symbolics había forzado la situación. "
+"Así que, en un intento por ayudar a mantener Lisp Machines Inc. a flote <a "
+"href=\"#foot-2\">(2)</a>, empecé a duplicar todas las mejoras que había "
+"hecho Symbolics al sistema de la máquina Lisp. Escribí por mí mismo las "
+"mejoras equivalentes de nuevo (es decir, el código era mío)."
+
+# type: Content of: <p>
+msgid ""
+"After a while <a href=\"#foot-3\">(3)</a>, I came to the conclusion that it "
+"would be best if I didn't even look at their code. When they made a beta "
+"announcement that gave the release notes, I would see what the features were "
+"and then implement them. By the time they had a real release, I did too."
+msgstr ""
+"Después de un tiempo <a href=\"#foot-3\">(3)</a>, llegué a la conclusión 
de "
+"que sería mejor ni siquiera mirar su código. Cuando anunciaban la 
liberación "
+"de una actualización del código, podía ver en las notas correspondientes a 
"
+"la nueva liberación cuáles eran las modificaciones introducidas e "
+"implementarlas. Cuando ellos hacían finalmente la liberación de las "
+"modificaciones, yo también liberaba las mías."
+
+# type: Content of: <p>
+msgid ""
+"In this way, for two years, I prevented them from wiping out Lisp Machines "
+"Incorporated, and the two companies went on. But, I didn't want to spend "
+"years and years punishing someone, just thwarting an evil deed. I figured "
+"they had been punished pretty thoroughly because they were stuck with "
+"competition that was not leaving or going to disappear<a href=\"#foot-6\">(6)"
+"</a>. Meanwhile, it was time to start building a new community to replace "
+"the one that their actions and others had wiped out."
+msgstr ""
+"De esta manera, durante dos años evité que acabaran con Lisp Machines "
+"Incorporated, y las dos empresas siguieron adelante. Pero no quería pasarme "
+"años y años castigando a alguien, evitando que se cometiera un acto "
+"malvado. Supuse que ya habían sido castigados bastante puesto que "
+"estaban inmersos en una competición que no tendría fin "
+"<a href=\"#foot-6\">(6)</a>. Por otro lado, había llegado el momento de "
+"formar una nueva comunidad que reemplazara a la que las acciones suyas "
+"y de otros exterminaron."
+
+# type: Content of: <p>
+msgid ""
+"The Lisp community in the 70s was not limited to the <abbr>MIT</abbr> AI "
+"Lab, and the hackers were not all at <abbr>MIT</abbr>. The war that "
+"Symbolics started was what wiped out <abbr>MIT</abbr>, but there were other "
+"events going on then. There were people giving up on cooperation and "
+"together, this wiped out the community and there wasn't much left."
+msgstr ""
+"La comunidad Lisp en los 70 no estaba limitada al Laboratorio de "
+"Inteligencia Artificial del <abbr>MIT</abbr>, y no todos los hackers "
+"estaban en el <abbr>MIT</abbr>. La guerra iniciada por Symbolics "
+"fue lo que aniquiló el <abbr>MIT</abbr>, pero había otras actividades "
+"en marcha. Había gente que abandonó la cooperación, y esto también "
+"contribuyó a extinguir la comunidad."
+
+# type: Content of: <p>
+msgid ""
+"Once I stopped punishing Symbolics, I had to figure out what to do next. I "
+"had to make a free operating system, that was clear &mdash; the only way "
+"that people could work together and share was with a free operating system."
+msgstr ""
+"Una vez que dejé de castigar a Symbolics, tuve que pensar qué hacer a "
+"continuación. Tenía que hacer un sistema operativo libre, eso estaba claro. 
"
+"La única forma de que la gente pudiera trabajar conjuntamente y "
+"compartir era con un sistema operativo libre."
+
+# type: Content of: <p>
+msgid ""
+"At first, I thought of making a Lisp-based system, but I realized that "
+"wouldn't be a good idea technically. To have something like the Lisp machine "
+"system, you needed special purpose microcode. That's what made it possible "
+"to run programs as fast as other computers would run their programs and "
+"still get the benefit of typechecking. Without that, you would be reduced to "
+"something like the Lisp compilers for other machines. The programs would be "
+"faster, but unstable. Now that's okay if you're running one program on a "
+"timesharing system &mdash; if one program crashes, that's not a disaster, "
+"that's something your program occasionally does. But that didn't make it "
+"good for writing the operating system in, so I rejected the idea of making a "
+"system like the Lisp machine."
+msgstr ""
+"Al principio pensé en hacer un sistema basado en Lisp, pero me di cuenta de "
+"que no sería una buena idea desde el punto de vista técnico. Para tener 
algo "
+"como el sistema de la máquina Lisp, necesita microcódigo de propósito "
+"específico. Eso es lo que hizo posible ejecutar programas con la misma "
+"velocidad con la que se ejecutaban programas en otros ordenadores y con el "
+"beneficio adicional de la validación de tipos. Sin eso, se habría visto "
+"limitado "
+"a algo similar a los compiladores Lisp para otras máquinas. Los programas h "
+"abrían sido más rápidos, pero inestables. Ahora bien, eso puede ser "
+"admisible "
+"si está ejecutando un programa en un sistema de tiempo compartido: que "
+"un programa falle no es un desastre, es algo que ocurre con su programa "
+"ocasionalmente. Pero no es admisible cuando lo que escribimos es el "
+"sistema operativo, así que rechacé la idea de hacer un sistema como la "
+"máquina Lisp."
+
+# type: Content of: <p>
+msgid ""
+"I decided instead to make a Unix-like operating system that would have Lisp "
+"implementations to run as user programs. The kernel wouldn't be written in "
+"Lisp, but we'd have Lisp. So the development of that operating system, the "
+"GNU operating system, is what led me to write the GNU Emacs. In doing this, "
+"I aimed to make the absolute minimal possible Lisp implementation. The size "
+"of the programs was a tremendous concern."
+msgstr ""
+"En su lugar, decidí hacer un sistema operativo tipo Unix que tuviera "
+"implementaciones Lisp, las cuales serían ejecutadas como programas de "
+"usuario. El núcleo no estaría escrito en Lisp, pero tendríamos Lisp. Así 
que "
+"el desarrollo de ese sistema operativo, el sistema operativo GNU, fue lo que "
+"me llevó a escribir Emacs de GNU. Al hacerlo, me propuse como meta hacer la "
+"implementación de Lisp mínima posible. El tamaño de los programas era algo 
a "
+"tener muy en cuenta."
+
+# type: Content of: <p>
+msgid ""
+"There were people in those days, in 1985, who had one-megabyte machines "
+"without virtual memory. They wanted to be able to use GNU Emacs. This meant "
+"I had to keep the program as small as possible."
+msgstr ""
+"Había gente en aquellos días, en 1985, que tenía máquinas con un megabyte 
de "
+"memoria y sin memoria virtual. Querían poder usar Emacs de GNU. Esto "
+"significaba que tenía que hacer que el programa fuera lo más pequeño 
posible."
+
+# type: Content of: <p>
+msgid ""
+"For instance, at the time the only looping construct was &lsquo;"
+"while&rsquo;, which was extremely simple. There was no way to break out of "
+"the &lsquo;while&rsquo; statement, you just had to do a catch and a throw, "
+"or test a variable that ran the loop. That shows how far I was pushing to "
+"keep things small. We didn't have &lsquo;caar&rsquo; and &lsquo;cadr&rsquo; "
+"and so on; &ldquo;squeeze out everything possible&rdquo; was the spirit of "
+"GNU Emacs, the spirit of Emacs Lisp, from the beginning."
+msgstr ""
+"Por ejemplo, en aquel entonces la única estructura iterativa era «while», "
+"implementada de forma extremadamente simple. No había ningún "
+"mecanismo para interrumpir la ejecución de la sentencia «while» "
+"y transferir el control a la instrucción siguiente a dicha sentencia, usted "
+"tenía que ejecutar un <tt>catch</tt> y un <tt>throw</tt>, o monitorizar una "
+"variable para salir del bucle. Esto muestra hasta dónde estaba llevando las "
+"cosas para mantener los programas pequeños. No teníamos «caar», "
+"«cadr», etc., el espíritu de Emacs de GNU, el espíritu de Emacs Lisp fue, 
"
+"desde el principio, «sácale todo el jugo posible»."
+
+# type: Content of: <p>
+msgid ""
+"Obviously, machines are bigger now, and we don't do it that way anymore. We "
+"put in &lsquo;caar&rsquo; and &lsquo;cadr&rsquo; and so on, and we might put "
+"in another looping construct one of these days. We're willing to extend it "
+"some now, but we don't want to extend it to the level of common Lisp. I "
+"implemented Common Lisp once on the Lisp machine, and I'm not all that happy "
+"with it. One thing I don't like terribly much is keyword arguments. They "
+"don't seem quite Lispy to me; I'll do it sometimes but I minimize the times "
+"when I do that."
+msgstr ""
+"Evidentemente, las máquinas actuales tienen mayor capacidad, y ya no hacemos 
"
+"las cosas así. Ahora incluimos «caar», «cadr», etc. Y podríamos añadir 
otra "
+"estructura iterativa un día de estos. Queremos ampliarlo en cierta medida, "
+"pero no hasta el punto de Common Lisp. Una vez implementé Common Lisp "
+"en una máquina Lisp, y no estoy muy satisfecho con el resultado. Algo que no 
"
+"me gusta gran cosa son los parámetros de palabra clave [keyword]. No me "
+"parecen muy de Lisp; los utilizo a veces pero intento que sea lo menos "
+"posible."
+
+# type: Content of: <p>
+msgid ""
+"That was not the end of the GNU projects involved with Lisp. Later on around "
+"1995, we were looking into starting a graphical desktop project. It was "
+"clear that for the programs on the desktop, we wanted a programming language "
+"to write a lot of it in to make it easily extensible, like the editor. The "
+"question was what it should be."
+msgstr ""
+"Ese no fue el fin de los proyectos de GNU implicados con Lisp. Más tarde, "
+"alrededor de 1995, estábamos estudiando el inicio de un proyecto de "
+"escritorio gráfico. Teníamos claro que queríamos un lenguaje de 
programación "
+"que hiciera fácilmente extensibles, como el editor, los programas accesibles 
"
+"desde el escritorio. La cuestión era cuál."
+
+# type: Content of: <p>
+msgid ""
+"At the time, <acronym title=\"Tool Command Language\">TCL</acronym> was "
+"being pushed heavily for this purpose. I had a very low opinion of "
+"<acronym>TCL</acronym>, basically because it wasn't Lisp. It looks a tiny "
+"bit like Lisp, but semantically it isn't, and it's not as clean.  Then "
+"someone showed me an ad where Sun was trying to hire somebody to work on "
+"<acronym>TCL</acronym> to make it the &ldquo;de-facto standard extension "
+"language&rdquo; of the world. And I thought, &ldquo;We've got to stop that "
+"from happening.&rdquo; So we started to make Scheme the standard "
+"extensibility language for GNU. Not Common Lisp, because it was too large. "
+"The idea was that we would have a Scheme interpreter designed to be linked "
+"into applications in the same way <acronym>TCL</acronym> was linked into "
+"applications. We would then recommend that as the preferred extensibility "
+"package for all GNU programs."
+msgstr ""
+"En aquel momento, <acronym title=\"Tool Command Language\" "
+"lang=\"en\">TCL</acronym> estaba recibiendo un fuerte impulso como "
+"lenguaje a utilizar para este propósito. Yo tenía una opinión muy negativa 
"
+"de <acronym>TCL</acronym>, básicamente porque no era Lisp. Tiene un "
+"ligerísimo parecido con Lisp, pero no semánticamente, y no es tan limpio. "
+"Después, me mostraron un anuncio en el que Sun ofrecía un puesto de trabajo 
"
+"para trabajar con <acronym>TCL</acronym> y hacer de él el «lenguaje de "
+"extensión estándar, de facto» en el mundo. Y pensé: «Tenemos que "
+"evitar que eso llegue a ocurrir.». Así que empezamos a hacer de Scheme "
+"el lenguaje para extensiones estándar para GNU. No Common Lisp, porque era "
+"demasiado voluminoso. La idea era tener un intérprete Scheme diseñado para "
+"ser enlazado en las aplicaciones de la misma manera que se enlazaba "
+"<acronym>TCL</acronym>. Entonces lo recomendaríamos como el paquete "
+"para extensiones prefererido para todos los programas GNU."
+
+# type: Content of: <p>
+msgid ""
+"There's an interesting benefit you can get from using such a powerful "
+"language as a version of Lisp as your primary extensibility language.  You "
+"can implement other languages by translating them into your primary "
+"language. If your primary language is <acronym>TCL</acronym>, you can't very "
+"easily implement Lisp by translating it into <acronym>TCL</acronym>. But if "
+"your primary language is Lisp, it's not that hard to implement other things "
+"by translating them. Our idea was that if each extensible application "
+"supported Scheme, you could write an implementation of <acronym>TCL</"
+"acronym> or Python or Perl in Scheme that translates that program into "
+"Scheme. Then you could load that into any application and customize it in "
+"your favorite language and it would work with other customizations as well."
+msgstr ""
+"Usted puede obtener un beneficio interesante del uso de un lenguaje tan "
+"potente como un dialecto de Lisp como su lenguaje primario de extensión: "
+"puede implementar otros lenguajes traduciéndolos a su lenguaje primario. Si "
+"su lenguaje primario es <acronym>TCL</acronym>, usted no podrá implementar "
+"Lisp fácilmente mediante su traducción a <acronym>TCL</acronym>. Pero si su 
"
+"lenguaje primario es Lisp, no es tan difícil implementar otros lenguajes "
+"traduciéndolos. Nuestra idea era que si cada aplicación extensible admitía 
"
+"Scheme, usted podría escribir una implementación de <acronym>TCL</acronym> 
o "
+"Python o Perl en Scheme que tradujera los programas en esos lenguajes a "
+"Scheme. Entonces, usted podría cargar su traductor en cualquier aplicación 
y "
+"extender dicha aplicación usando su lenguaje favorito."
+
+# type: Content of: <p>
+msgid ""
+"As long as the extensibility languages are weak, the users have to use only "
+"the language you provided them. Which means that people who love any given "
+"language have to compete for the choice of the developers of applications "
+"&mdash; saying &ldquo;Please, application developer, put my language into "
+"your application, not his language.&rdquo; Then the users get no choices at "
+"all &mdash; whichever application they're using comes with one language and "
+"they're stuck with [that language]. But when you have a powerful language "
+"that can implement others by translating into it, then you give the user a "
+"choice of language and we don't have to have a language war anymore. That's "
+"what we're hoping &lsquo;Guile&rsquo;, our scheme interpreter, will do. We "
+"had a person working last summer finishing up a translator from Python to "
+"Scheme. I don't know if it's entirely finished yet, but for anyone "
+"interested in this project, please get in touch. So that's the plan we have "
+"for the future."
+msgstr ""
+"Mientras los lenguajes de extensión sean débiles, los usuarios sólo pueden 
"
+"usar los lenguajes proporcionados por el programador. Lo que significa que "
+"a quien le guste utilizar un lenguaje de programación determinado tiene "
+"que competir por la elección de los diseñadores de aplicaciones diciendo "
+"«por favor, programador, ponga mi lenguaje en su aplicación, no el lenguaje 
"
+"de aquél.». Después los usuarios no tienen ninguna opción, la aplicación 
"
+"viene con un lenguaje y tienen que quedarse con él. Pero cuando dispone "
+"de un lenguaje potente que puede implementar otros mediante la traducción, "
+"da al usuario la posibilidad de elegir el lenguaje y ya no hay necesidad de "
+"una "
+"guerra de lenguajes. Esto es lo que esperamos que haga «Guile», nuestro "
+"intérprete Scheme. El verano pasado tuvimos a una persona trabajando en la "
+"finalización de un traductor de Python a Scheme. No sé si ya está "
+"completamente terminado, pero cualquiera que esté interesado en este "
+"proyecto, por favor póngase en contacto. Este es nuestro plan para el 
futuro."
+
+# type: Content of: <p>
+msgid ""
+"I haven't been speaking about free software, but let me briefly tell you a "
+"little bit about what that means. Free software does not refer to price; it "
+"doesn't mean that you get it for free. (You may have paid for a copy, or "
+"gotten a copy gratis.) It means that you have freedom as a user. The crucial "
+"thing is that you are free to run the program, free to study what it does, "
+"free to change it to suit your needs, free to redistribute the copies of "
+"others and free to publish improved, extended versions. This is what free "
+"software means. If you are using a non-free program, you have lost crucial "
+"freedom, so don't ever do that."
+msgstr ""
+"Esta charla no es sobre software libre, pero déjenme comentarles brevemente "
+"lo que significa. Software libre no se refiere al precio<sup><a href="
+"\"#TransNote1\" id=\"iniTransNote1\">1</a></sup>, no significa que usted lo "
+"obtiene gratis (puede haber pagado por una copia, o haberla obtenido gratis."
+"). "
+"Lo que significa es que usted tiene libertad como usuario. Lo fundamental es "
+"que "
+"es libre de ejecutar el programa, libre de estudiar qué hace, libre de "
+"modificarlo "
+"para adaptarlo a sus necesidades, libre de redistribuir las copias de otros "
+"y libre "
+"de publicar versiones mejoradas, ampliadas. Esto es lo que significa "
+"software "
+"libre. Si utiliza un programa que no sea libre, pierde una libertad crucial, "
+"así "
+"que no lo haga nunca."
+
+# type: Content of: <p>
+msgid ""
+"The purpose of the GNU project is to make it easier for people to reject "
+"freedom-trampling, user-dominating, non-free software by providing free "
+"software to replace it. For those who don't have the moral courage to reject "
+"the non-free software, when that means some practical inconvenience, what we "
+"try to do is give a free alternative so that you can move to freedom with "
+"less of a mess and less of a sacrifice in practical terms. The less "
+"sacrifice the better. We want to make it easier for you to live in freedom, "
+"to cooperate."
+msgstr ""
+"El propósito del proyecto GNU es hacer más fácil para la gente rechazar el 
"
+"software que no sea libre, pisotea libertades y domina usuarios, "
+"proporcionándole software libre para sustituirlo. Para aquellos que no "
+"tienen "
+"el valor moral de rechazar el software que no es libre cuando hacerlo "
+"representa un inconveniente práctico, lo que intentamos hacer es ofrecer "
+"una alternativa libre de forma que puedan mudarse a la libertad de forma "
+"más ordenada y con menos sacrificios en términos prácticos. Cuanto menor "
+"el sacrificio, mejor. Queremos hacer más fácil vivir en libertad, cooperar."
+
+# type: Content of: <p>
+msgid ""
+"This is a matter of the freedom to cooperate. We're used to thinking of "
+"freedom and cooperation with society as if they are opposites. But here "
+"they're on the same side. With free software you are free to cooperate with "
+"other people as well as free to help yourself. With non-free software, "
+"somebody is dominating you and keeping people divided. You're not allowed to "
+"share with them, you're not free to cooperate or help society, anymore than "
+"you're free to help yourself.  Divided and helpless is the state of users "
+"using non-free software."
+msgstr ""
+"Es una cuestión de libertad para cooperar. Solemos pensar en la libertad y "
+"en la cooperación con la sociedad como si fueran opuestos. Pero aquí están 
"
+"del mismo lado. Con software libre es libre de cooperar con otros así como "
+"libre de ayudarse a usted mismo. Con software que no es libre, alguien le "
+"está "
+"dominando y está manteniendo dividida a la gente. No se le permite compartir 
"
+"con el resto, no es libre de cooperar ni de ayudar a la sociedad, como "
+"tampoco "
+"es libre de ayudarse a usted mismo. Divididos y desamparados es como se "
+"encuentran los usuarios de software que no es libre."
+
+# type: Content of: <p>
+msgid ""
+"We've produced a tremendous range of free software. We've done what people "
+"said we could never do; we have two operating systems of free software. We "
+"have many applications and we obviously have a lot farther to go. So we need "
+"your help. I would like to ask you to volunteer for the GNU project; help us "
+"develop free software for more jobs. Take a look at <a href=\"/help/"
+"\">http://www.gnu.org/help</a> to find suggestions for how to help. If you "
+"want to order things, there's a link to that from the home page. If you want "
+"to read about philosophical issues, look in /philosophy. If you're looking "
+"for free software to use, look in /directory, which lists about 1900 "
+"packages now (which is a fraction of all the free software out there). "
+"Please write more and contribute to us. My book of essays, &ldquo;Free "
+"Software and Free Society&rdquo;, is on sale and can be purchased at <a href="
+"\"http://www.gnu.org/\";>www.gnu.org</a>. Happy hacking!"
+msgstr ""
+"Hemos producido una enorme variedad de software libre. Hemos hecho lo que la "
+"gente decía que nunca lograríamos hacer; tenemos dos sistemas operativos de 
"
+"software libre. Tenemos muchas aplicaciones y, obviamente, todavía tenemos "
+"mucho camino por recorrer. Así que necesitamos su ayuda. Me gustaría "
+"pedirles "
+"que colaboraran como voluntarios para el proyecto GNU; ayúdennos a "
+"desarrollar software libre para más tareas. Echen un vistazo a <a href=\"/"
+"help/help.es.html\">http://www.gnu.org/help/help.es.html</a> para encontrar "
+"sugerencias sobre cómo ayudar. Si quieren hacer algún pedido, hay un enlace 
"
+"disponible en la página principal. Si quieren leer sobre cuestiones "
+"filosóficas, miren en /philosophy. Si están buscando el software libre "
+"disponible, miren en /directory, donde se listan alrededor de 1900 paquetes "
+"en la actualidad (lo cual es una fracción de todo el software libre "
+"disponible ahí fuera). Por favor, escriban más software y contribuyan. Mi "
+"libro de ensayos, «<span style=\"font-style:italic,\">Free Software and Free 
"
+"Society</span>» se encuentra a la venta y puede adquirirse en <a "
+"href=\"http://www.gnu.org\";>www.gnu.org</a><sup><a "
+"href=\"#TransNote2\" id=\"iniTransNote2\">2</a></sup>. ¡Feliz hacking!."
+
+# type: Content of: <div>
+#. TRANSLATORS: Use space (SPC) as msgstr if you don't have notes.
+msgid "*GNUN-SLOT: TRANSLATOR'S NOTES*"
+msgstr ""
+"<b>Notas del traductor</b>:\n"
+"<ol>\n"
+"<li id=\"TransNote1\">Software Libre es la traducción de <span "
+"style=\"font-style:italic;\">Free Software</span>. Aquí se hace "
+"referencia al doble significado del término inglés <span "
+"style=\"font-style:italic;\">Free</span>, que puede significar "
+"tanto «libre» como «gratis». <a href=\"#IniTransNote1\" "
+">Regresar al texto</a>.</li>\n"
+"<li id=\"TransNote2\">Existe una traducción del libro publicada en "
+"España por el editorial Traficantes de Sueños. <a "
+"href=\"#IniTransNote2\">Regresar al texto</a>.</li>."
+"</ol>"
+
+# type: Content of: <p>
+msgid ""
+"<a name=\"foot-1\">(1)</a> Greenblatt's plan, as I understood it, was to "
+"hire lab people part time, so that they could continue working at the AI "
+"Lab.  Symbolics hired them full time instead, so they stopped working at MIT."
+msgstr ""
+"<a name=\"foot-1\">(1)</a> El plan de Greenblatt, según lo entendía yo, era 
"
+"contratar a la gente del laboratorio a tiempo parcial, de forma que pudieran "
+"seguir trabajando en el Laboratorio de Inteligencia Artificial. En cambio, "
+"Symbolics les contrató a jornada completa, así que dejaron de trabajar en "
+"el MIT."
+
+# type: Content of: <p>
+msgid ""
+"<a name=\"foot-2\">(2)</a> It was not that I cared particularly about the "
+"fate of LMI, but rather I did not want to let Symbolics gain through its "
+"aggression against the AI Lab."
+msgstr ""
+"<a name=\"foot-2\">(2)</a> No era que me preocupara especialmente el destino "
+"de LMI, sino más bien que no quería que Symbolics saliera vencedora gracias 
"
+"a haber agredido como lo hizo al Laboratorio de Inteligencia Artificial."
+
+# type: Content of: <p>
+msgid ""
+"<a name=\"foot-3\">(3)</a> This statement has been misconstrued as saying "
+"that I never, ever looked at Symbolics' code.  Actually it says I did."
+msgstr ""
+"<a name=\"foot-3\">(3)</a> Esta afirmación ha sido malinterpretada "
+"atribuyéndole el significado de que nunca miré el código de Symbolics. En "
+"realidad dice que sí lo hice."
+
+# type: Content of: <p>
+msgid ""
+"The Symbolics source code was available at MIT, where I was entitled to read "
+"it, and at first that's how I found out about their changes.  But that meant "
+"I had to make extra effort to solve each problem differently, in order to "
+"avoid copying Symbolics code.  After a while, I concluded it was better not "
+"to even look.  That way I could write code in whatever way was best, without "
+"concern for what was in Symbolics' code."
+msgstr ""
+"El código fuente de Symbolics estaba disponible en el MIT, donde yo estaba "
+"autorizado a leerlo, y al principio era así como me enteraba de sus "
+"modificaciones. Pero eso significaba que tenía que hacer un esfuerzo extra "
+"para resolver cada problema de forma diferente, y así evitar que mi código "
+"fuera una copia del código de Symbolics. Pasado un tiempo, llegué a la "
+"conclusión de que era mejor no mirarlo. De esa forma podía escribir el "
+"código de la forma que considerara mejor sin preocuparme de lo que contenía 
"
+"el código de Symbolics."
+
+# type: Content of: <p>
+msgid ""
+"<a name=\"foot-4\">(4)</a> The background of this plan, which I did not "
+"state explicitly in the talk, is that during an initial period the ex-AI-Lab "
+"hackers, whether at Symbolics or LMI, continued contributing their changes "
+"to the MIT Lisp Machine system &mdash; even though the contract did not "
+"require this.  Symbolics' plan was to rupture this cooperation unilaterally."
+msgstr ""
+"<a name=\"foot-4\">(4)</a> Las circunstancias de este plan, que no expuse "
+"explícitamente en la charla, fueron las siguientes: durante un periodo "
+"inicial los hackers que habían dejado el Laboratorio de Inteligencia "
+"Artificial, "
+"tanto los que trabajaban para Symbolics como los que lo hacían para LMI, "
+"continuaron aportando al sistema de la máquina Lisp del MIT sus "
+"modificaciones, a pesar de que el contrato no lo exigía. El plan de "
+"Symbolics era provocar unilateralmente la ruptura de esta cooperación."
+
+# type: Content of: <p>
+msgid ""
+"<a name=\"foot-5\">(5)</a> Bernie Greenberg says that Dan Weinreb's "
+"implementation of Emacs for the Lisp Machine came before Greenberg's "
+"implementation for Multics.  I apologize for the mistake."
+msgstr ""
+"<a name=\"foot-5\">(5)</a> Bernie Greenberg dice que Dan Weinreb "
+"implementó Emacs para la Máquina Lisp antes de que Greenberg lo "
+"implementara para Multics. Pido disculpas por el error. "
+
+# type: Content of: <p>
+msgid ""
+"<a name=\"foot-6\">(6)</a> Symbolics at one point protested to MIT that my "
+"work, by thwarting their plan, had cost Symbolics a million dollars."
+msgstr ""
+"<a name=\"foot-6\">(6)</a> En una ocasión Symbolics se quejó al MIT de que "
+"mi trabajo, al frustrar sus planes, le había costado un millón de dólares."
+
+# type: Content of: <p>
+msgid ""
+"<a name=\"foot-7\">(7)</a> Guy Steele designed the original symmetrical "
+"Emacs command set; then he and I began implementing Emacs (on top of TECO), "
+"but after one long joint development session, Steele began drifting away, so "
+"I finished Emacs.  Others particularly including Eugene C. Cicciarelli and "
+"Mike McMahon contributed substantially later on."
+msgstr ""
+"<a name=\"foot-7\">(7)</a> Guy Steele diseñó el conjunto de órdenes "
+"simétrico original de Emacs; luego, él y yo empezamos a implementar Emacs "
+"(sobre TECO), pero, tras una larga sesión conjunta de desarrollo, Steele "
+"empezó a distanciarse, así que yo finalicé Emacs. Otros, entre los que "
+"destacan Eugene C. Cicciarelli y Mike McMahon, contribuyeron más tarde de "
+"forma sustancial."
+
+# type: Content of: <div><p>
+msgid ""
+"Please send FSF &amp; GNU inquiries to <a href=\"mailto:address@hidden";
+"\"><em>address@hidden</em></a>.  There are also <a href=\"/contact/\">other "
+"ways to contact</a> the FSF.  <br /> Please send broken links and other "
+"corrections (or suggestions) to <a href=\"mailto:address@hidden";
+"\"><em>address@hidden</em></a>."
+msgstr ""
+"Por favor, envíe sus comentarios y preguntas sobre la FSF y el proyecto GNU "
+"a <a href=\"mailto:address@hidden";>&lt;address@hidden&gt;</a>. También puede 
<a "
+"href=\"/contact/\">contactar con la FSF por otros medios</a>.<br /> Por "
+"favor, "
+"envíe enlaces rotos y otras correcciones (o sugerencias) a <a "
+"href=\"mailto:address@hidden";>&lt;address@hidden&gt;</a>."
+
+# type: Content of: <div><p>
+msgid ""
+"Please see the <a href=\"/server/standards/README.translations.html"
+"\">Translations README</a> for information on coordinating and submitting "
+"translations of this article."
+msgstr ""
+"Por favor, lea el <a href=\"/server/standards/README.translations.es.html"
+"\">LÉAME de traducciones</a> para obtener información acerca cómo 
coordinar "
+"y enviar mejoras de esta traducción."
+
+# type: Content of: <div><p>
+msgid "Copyright &copy; 2003, 2007 Free Software Foundation, Inc.,"
+msgstr "Copyright &copy; 2009, 2010 Free Software Foundation, Inc."
+
+# type: Content of: <div><address>
+msgid "51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA"
+msgstr "51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA"
+
+# type: Content of: <div><p>
+msgid ""
+"Verbatim copying and distribution of this entire article is permitted in any "
+"medium, provided this notice is preserved."
+msgstr ""
+"Verbatim copying and distribution of this entire article is permitted in any "
+"medium, provided this notice is preserved."
+
+# type: Content of: <div><div>
+#. TRANSLATORS: Use space (SPC) as msgstr if you don't want credits.
+msgid "*GNUN-SLOT: TRANSLATOR'S CREDITS*"
+msgstr ""
+"<span style=\"text-weight:bold;\">Traducción</span>: Rafa Pereira, "
+"julio 2009."
+
+# type: Content of: <div><p>
+#.  timestamp start
+msgid "Updated:"
+msgstr "Última actualización:"
+
+# type: Content of: <div><h4>
+msgid "Translations of this page"
+msgstr "Traducciones de esta página"
+
+



reply via email to

[Prev in Thread] Current Thread [Next in Thread]