66# Check https://github.com/python/python-docs-es/blob/3.8/TRANSLATORS to
77# get the list of volunteers
88#
9- #, fuzzy
109msgid ""
1110msgstr ""
1211"Project-Id-Version : Python 3.8\n "
1312"Report-Msgid-Bugs-To : \n "
1413"POT-Creation-Date : 2020-05-05 12:54+0200\n "
15- "PO-Revision-Date : YEAR-MO-DA HO:MI+ZONE\n "
16- "Last-Translator : FULL NAME <EMAIL@ADDRESS>\n "
14+ "PO-Revision-Date : 2021-02-01 19:27-0300\n "
1715"Language-Team : python-doc-es\n "
1816"MIME-Version : 1.0\n "
19- "Content-Type : text/plain; charset=utf -8\n "
17+ "Content-Type : text/plain; charset=UTF -8\n "
2018"Content-Transfer-Encoding : 8bit\n "
2119"Generated-By : Babel 2.8.0\n "
20+ "Plural-Forms : nplurals=2; plural=(n != 1);\n "
21+ "Last-Translator : Kevin Cajachuán <kevincajachuan@hotmail.com>\n "
22+ "Language : es\n "
23+ "X-Generator : Poedit 2.4.2\n "
2224
2325#: ../Doc/howto/functional.rst:3
2426msgid "Functional Programming HOWTO"
25- msgstr ""
27+ msgstr "Cómo hacer programación funcional "
2628
2729#: ../Doc/howto/functional.rst
2830msgid "Author"
29- msgstr ""
31+ msgstr "Autor "
3032
3133#: ../Doc/howto/functional.rst:5
3234msgid "A. M. Kuchling"
33- msgstr ""
35+ msgstr "A. M. Kuchling "
3436
3537#: ../Doc/howto/functional.rst
3638msgid "Release"
37- msgstr ""
39+ msgstr "Publicación "
3840
3941#: ../Doc/howto/functional.rst:6
4042msgid "0.32"
41- msgstr ""
43+ msgstr "0.32 "
4244
4345#: ../Doc/howto/functional.rst:8
4446msgid ""
@@ -48,29 +50,45 @@ msgid ""
4850"term:`iterator`\\ s and :term:`generator`\\ s and relevant library modules "
4951"such as :mod:`itertools` and :mod:`functools`."
5052msgstr ""
53+ "En este documento, haremos un recorrido de las características de Python "
54+ "adecuadas para implementar programas en un estilo funcional. Después de una "
55+ "introducción de los conceptos de programación funcional, veremos las "
56+ "características del lenguaje como :term:`iterador <iterator>`\\ es y :term:"
57+ "`generador <generator>`\\ es y módulos de librería relevantes como :mod:"
58+ "`itertools` and :mod:`functools`."
5159
5260#: ../Doc/howto/functional.rst:16
5361msgid "Introduction"
54- msgstr ""
62+ msgstr "Introducción "
5563
5664#: ../Doc/howto/functional.rst:18
5765msgid ""
5866"This section explains the basic concept of functional programming; if you're "
5967"just interested in learning about Python language features, skip to the next "
6068"section on :ref:`functional-howto-iterators`."
6169msgstr ""
70+ "Esta sección explica el concepto básico de programación funcional; si solo "
71+ "está interesado en aprender acerca de las características del lenguaje "
72+ "Python, pase a la siguiente sección en :ref:`iteradores <functional-howto-"
73+ "iterators>`."
6274
6375#: ../Doc/howto/functional.rst:22
6476msgid ""
6577"Programming languages support decomposing problems in several different ways:"
6678msgstr ""
79+ "Los lenguajes de programación soportan la descomposición de problemas en "
80+ "muchas formas diferentes:"
6781
6882#: ../Doc/howto/functional.rst:24
6983msgid ""
7084"Most programming languages are **procedural**: programs are lists of "
7185"instructions that tell the computer what to do with the program's input. C, "
7286"Pascal, and even Unix shells are procedural languages."
7387msgstr ""
88+ "La mayoría de los lenguajes de programación son **procedimentales**: los "
89+ "programas son listas de instrucciones que le dicen a la computadora qué "
90+ "hacer con la entrada del programa. C, Pascal e incluso las terminales Unix "
91+ "son lenguajes procedimentales."
7492
7593#: ../Doc/howto/functional.rst:28
7694msgid ""
@@ -81,6 +99,13 @@ msgid ""
8199"to retrieve, and the SQL engine decides whether to scan tables or use "
82100"indexes, which subclauses should be performed first, etc."
83101msgstr ""
102+ "En los lenguajes **declarativos**, se escribe una especificación que "
103+ "describe el problema que se resolverá, y la implementación del lenguaje "
104+ "averigua como realizar el cálculo de forma eficiente. SQL es el lenguaje "
105+ "declarativo con el que probablemente esté más familiarizado; una consulta "
106+ "SQL describe el conjunto de datos que quiere recuperar, y el motor SQL "
107+ "decide si escanear tablas o usar índices, qué subcláusulas deben ejecutarse "
108+ "primero, etc."
84109
85110#: ../Doc/howto/functional.rst:35
86111msgid ""
@@ -90,6 +115,12 @@ msgid ""
90115"and Python are languages that support object-oriented programming, but don't "
91116"force the use of object-oriented features."
92117msgstr ""
118+ "Los programas **orientados a objetos** manipulan colecciones de objetos. Los "
119+ "objetos tienen estado interno y soportan métodos que consultan o modifican "
120+ "su estado interno de alguna manera. Smalltalk y Java son lenguajes "
121+ "orientados a objetos. C++ y Python son lenguajes que soportan la "
122+ "programación orientada a objetos, pero no fuerzan el uso de las "
123+ "características orientadas a objetos."
93124
94125#: ../Doc/howto/functional.rst:41
95126msgid ""
@@ -99,6 +130,11 @@ msgid ""
99130"known functional languages include the ML family (Standard ML, OCaml, and "
100131"other variants) and Haskell."
101132msgstr ""
133+ "La programación **funcional** descompone un problema en un conjunto de "
134+ "funciones. Idealmente, las funciones solo reciben entradas y producen "
135+ "salidas, y no tienen ningún estado interno que afecte la salida producida "
136+ "para una entrada dada. Los lenguajes funcionales bien conocidos incluyen la "
137+ "familia ML (Standard ML, OCaml, y otras variantes) y Haskell."
102138
103139#: ../Doc/howto/functional.rst:47
104140msgid ""
@@ -112,6 +148,16 @@ msgid ""
112148"GUI might be object-oriented while the processing logic is procedural or "
113149"functional, for example."
114150msgstr ""
151+ "Los diseñadores de algunos lenguajes de computadora eligen enfatizar en un "
152+ "enfoque particular para programar. Esto a menudo hace difícil escribir "
153+ "programas que usen un enfoque diferente. Otros lenguajes son lenguajes "
154+ "multiparadigma que soportan varios enfoques diferentes. Lisp, C++ y Python "
155+ "son multiparadigma; puede escribir programas o librerías que son en gran "
156+ "parte procedimentales, orientados a objetos o funcionales en todos estos "
157+ "lenguajes. En un programa grande, las diferentes secciones podrían "
158+ "escribirse usando diferentes enfoques; la GUI podría ser orientada a objetos "
159+ "mientras la lógica de procesamiento es procedimental o funcional, por "
160+ "ejemplo."
115161
116162#: ../Doc/howto/functional.rst:58
117163msgid ""
@@ -123,6 +169,15 @@ msgid ""
123169"side effects means not using data structures that get updated as a program "
124170"runs; every function's output must only depend on its input."
125171msgstr ""
172+ "En un programa funcional, la entrada fluye a través de un conjunto de "
173+ "funciones. Cada función opera sobre su entrada y produce alguna salida. El "
174+ "estilo funcional desalienta las funciones con efectos secundarios que "
175+ "modifican el estado interno o hacen otros cambios que no son visibles en el "
176+ "valor de retorno de la función. Las funciones que no tienen efectos "
177+ "secundarios en absoluto se llaman **puramente funcionales**. Evitar los "
178+ "efectos secundarios significa no usar estructuras de datos que se actualicen "
179+ "mientras se ejecuta un programa; cada salida de la función debe depender "
180+ "solo de su entrada."
126181
127182#: ../Doc/howto/functional.rst:66
128183msgid ""
@@ -134,6 +189,13 @@ msgid ""
134189"called for their side effects of sending some text to the screen or pausing "
135190"execution for a second."
136191msgstr ""
192+ "Algunos lenguajes son muy estrictos sobre la pureza y ni siquiera tienen "
193+ "declaraciones de asignación como ``a=3`` o ``c = a + b``, pero es difícil "
194+ "evitar todos los efectos secundarios. Imprimir en la pantalla o escribir en "
195+ "un archivo en disco son efectos secundarios, por ejemplo. Por ejemplo, en "
196+ "Python una llamada a la función :func:`print` o :func:`time.sleep` retorna "
197+ "un valor inútil; solo se llaman por sus efectos secundarios de enviar algún "
198+ "texto a la pantalla o pausar la ejecución por un segundo."
137199
138200#: ../Doc/howto/functional.rst:74
139201msgid ""
@@ -144,6 +206,12 @@ msgid ""
144206"assignments to local variables, but won't modify global variables or have "
145207"other side effects."
146208msgstr ""
209+ "Los programas de Python escritos en estilo funcional usualmente no irán al "
210+ "extremo de evitar todas las E/S o todas las asignaciones; en cambio, "
211+ "proveerán una interfaz aparentemente funcional pero internamente usará "
212+ "características no funcionales. Por ejemplo, la implementación de una "
213+ "función todavía usará asignaciones a variables locales, pero no modificará "
214+ "variables globales ni tendrá otros efectos secundarios."
147215
148216#: ../Doc/howto/functional.rst:80
149217msgid ""
@@ -156,39 +224,53 @@ msgid ""
156224"approaches by writing functions that take and return instances representing "
157225"objects in your application (e-mail messages, transactions, etc.)."
158226msgstr ""
227+ "La programación funcional se puede considerar lo opuesto a la programación "
228+ "orientada a objetos. Los objetos son pequeñas capsulas que contienen algún "
229+ "estado interno junto con una colección de llamadas a métodos que le permiten "
230+ "modificar este estado, y los programas consisten en realizar el conjunto "
231+ "correcto de cambios de estado. La programación funcional quiere evitar "
232+ "cambios de estado tanto como sea posible y trabaja con flujos de datos entre "
233+ "funciones. En Python podría combinar los dos enfoques para escribir "
234+ "funciones que reciban y retornen instancias que representen objetos en su "
235+ "aplicación (mensajes de e-mail, transacciones, etc.)."
159236
160237#: ../Doc/howto/functional.rst:89
161238msgid ""
162239"Functional design may seem like an odd constraint to work under. Why should "
163240"you avoid objects and side effects? There are theoretical and practical "
164241"advantages to the functional style:"
165242msgstr ""
243+ "El diseño funcional puede parecer una restricción extraña bajo la cuál "
244+ "trabajar. Por qué evitaría objetos y efectos secundarios? Hay ventajas "
245+ "teóricas y prácticas para el estilo funcional:"
166246
167247#: ../Doc/howto/functional.rst:93
168248msgid "Formal provability."
169- msgstr ""
249+ msgstr "Demostrabilidad formal. "
170250
171251#: ../Doc/howto/functional.rst:94
172252msgid "Modularity."
173- msgstr ""
253+ msgstr "Modularidad. "
174254
175255#: ../Doc/howto/functional.rst:95
176256msgid "Composability."
177- msgstr ""
257+ msgstr "Componibilidad. "
178258
179259#: ../Doc/howto/functional.rst:96
180260msgid "Ease of debugging and testing."
181- msgstr ""
261+ msgstr "Fácil de depurar y probar. "
182262
183263#: ../Doc/howto/functional.rst:100
184264msgid "Formal provability"
185- msgstr ""
265+ msgstr "Demostrabilidad formal "
186266
187267#: ../Doc/howto/functional.rst:102
188268msgid ""
189269"A theoretical benefit is that it's easier to construct a mathematical proof "
190270"that a functional program is correct."
191271msgstr ""
272+ "Un beneficio teórico es que es más fácil construir una demostración "
273+ "matemática de que un programa funcional es correcto."
192274
193275#: ../Doc/howto/functional.rst:105
194276msgid ""
@@ -199,6 +281,13 @@ msgid ""
199281"looks right; the goal is instead a rigorous proof that a program produces "
200282"the right result for all possible inputs."
201283msgstr ""
284+ "Por un largo tiempo los investigadores se han interesado en buscar formas de "
285+ "demostrar matemáticamente que los programas son correctos. Esto es diferente "
286+ "de probar un programa sobre numerosas entradas y concluir que su salida es "
287+ "usualmente correcta, o leer el código fuente de un programa y concluir que "
288+ "el código se ve bien; en lugar de eso el objetivo es una demostración "
289+ "rigurosa de que un programa produce el resultado correcto para todas las "
290+ "entradas posibles."
202291
203292#: ../Doc/howto/functional.rst:112
204293msgid ""
@@ -210,6 +299,14 @@ msgid ""
210299"This continues until you reach the end of the program, at which point the "
211300"invariants should match the desired conditions on the program's output."
212301msgstr ""
302+ "La técnica utilizada para demostrar que los programas son correctos es "
303+ "anotar **invariantes**, propiedades de los datos de entrada y de las "
304+ "variables del programa que siempre son verdaderas. Por cada línea de código, "
305+ "debe mostrar que si las invariantes X e Y son verdaderas **antes** que la "
306+ "línea sea ejecutada, las invariantes ligeramente diferentes X' e Y' son "
307+ "verdaderas **después** que la línea se ejecutó. Esto continúa hasta que "
308+ "alcance el fin del programa, punto en el cuál las invariantes deben "
309+ "coincidir con las condiciones deseadas en la salida del programa."
213310
214311#: ../Doc/howto/functional.rst:120
215312msgid ""
@@ -218,6 +315,10 @@ msgid ""
218315"invariants that were true before the assignment without producing any new "
219316"invariants that can be propagated onward."
220317msgstr ""
318+ "La evitación de las asignaciones de la programación funcional surge porque "
319+ "las asignaciones son difíciles de manejar con esta técnica; las asignaciones "
320+ "pueden romper invariantes que eran verdaderas antes de la asignación sin "
321+ "producir nuevas invariantes que se puedan propagar hacia adelante."
221322
222323#: ../Doc/howto/functional.rst:125
223324msgid ""
@@ -230,6 +331,16 @@ msgid ""
230331"the question of verifying the proof; maybe there's an error in it, and you "
231332"wrongly believe you've proved the program correct."
232333msgstr ""
334+ "Desafortunadamente, demostrar que los programas son correctos es en gran "
335+ "parte impráctico y no relevante al software de Python. Aún los programas "
336+ "triviales requieren demostraciones que tienen varias páginas; la "
337+ "demostración de correctitud para un programa moderadamente complicado sería "
338+ "enorme, y pocos o ninguno de los programas que usa diariamente (el "
339+ "interprete de Python, su analizador XML, su navegador web) se podrían "
340+ "demostrar que son correctos. Aún si anotó o generó una demostración, "
341+ "entonces estaría la cuestión de verificar la demostración; quizás hay un "
342+ "error en ella, y equivocadamente cree que demostró que el programa es "
343+ "correcto."
233344
234345#: ../Doc/howto/functional.rst:136
235346msgid "Modularity"
0 commit comments