6
6
# Check https://github.com/python/python-docs-es/blob/3.8/TRANSLATORS to
7
7
# get the list of volunteers
8
8
#
9
- #, fuzzy
10
9
msgid ""
11
10
msgstr ""
12
11
"Project-Id-Version : Python 3.8\n "
13
12
"Report-Msgid-Bugs-To : \n "
14
13
"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 "
17
15
"Language-Team : python-doc-es\n "
18
16
"MIME-Version : 1.0\n "
19
- "Content-Type : text/plain; charset=utf -8\n "
17
+ "Content-Type : text/plain; charset=UTF -8\n "
20
18
"Content-Transfer-Encoding : 8bit\n "
21
19
"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 "
22
24
23
25
#: ../Doc/howto/functional.rst:3
24
26
msgid "Functional Programming HOWTO"
25
- msgstr ""
27
+ msgstr "Cómo hacer programación funcional "
26
28
27
29
#: ../Doc/howto/functional.rst
28
30
msgid "Author"
29
- msgstr ""
31
+ msgstr "Autor "
30
32
31
33
#: ../Doc/howto/functional.rst:5
32
34
msgid "A. M. Kuchling"
33
- msgstr ""
35
+ msgstr "A. M. Kuchling "
34
36
35
37
#: ../Doc/howto/functional.rst
36
38
msgid "Release"
37
- msgstr ""
39
+ msgstr "Publicación "
38
40
39
41
#: ../Doc/howto/functional.rst:6
40
42
msgid "0.32"
41
- msgstr ""
43
+ msgstr "0.32 "
42
44
43
45
#: ../Doc/howto/functional.rst:8
44
46
msgid ""
@@ -48,29 +50,45 @@ msgid ""
48
50
"term:`iterator`\\ s and :term:`generator`\\ s and relevant library modules "
49
51
"such as :mod:`itertools` and :mod:`functools`."
50
52
msgstr ""
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`."
51
59
52
60
#: ../Doc/howto/functional.rst:16
53
61
msgid "Introduction"
54
- msgstr ""
62
+ msgstr "Introducción "
55
63
56
64
#: ../Doc/howto/functional.rst:18
57
65
msgid ""
58
66
"This section explains the basic concept of functional programming; if you're "
59
67
"just interested in learning about Python language features, skip to the next "
60
68
"section on :ref:`functional-howto-iterators`."
61
69
msgstr ""
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>`."
62
74
63
75
#: ../Doc/howto/functional.rst:22
64
76
msgid ""
65
77
"Programming languages support decomposing problems in several different ways:"
66
78
msgstr ""
79
+ "Los lenguajes de programación soportan la descomposición de problemas en "
80
+ "muchas formas diferentes:"
67
81
68
82
#: ../Doc/howto/functional.rst:24
69
83
msgid ""
70
84
"Most programming languages are **procedural**: programs are lists of "
71
85
"instructions that tell the computer what to do with the program's input. C, "
72
86
"Pascal, and even Unix shells are procedural languages."
73
87
msgstr ""
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."
74
92
75
93
#: ../Doc/howto/functional.rst:28
76
94
msgid ""
@@ -81,6 +99,13 @@ msgid ""
81
99
"to retrieve, and the SQL engine decides whether to scan tables or use "
82
100
"indexes, which subclauses should be performed first, etc."
83
101
msgstr ""
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."
84
109
85
110
#: ../Doc/howto/functional.rst:35
86
111
msgid ""
@@ -90,6 +115,12 @@ msgid ""
90
115
"and Python are languages that support object-oriented programming, but don't "
91
116
"force the use of object-oriented features."
92
117
msgstr ""
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."
93
124
94
125
#: ../Doc/howto/functional.rst:41
95
126
msgid ""
@@ -99,6 +130,11 @@ msgid ""
99
130
"known functional languages include the ML family (Standard ML, OCaml, and "
100
131
"other variants) and Haskell."
101
132
msgstr ""
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."
102
138
103
139
#: ../Doc/howto/functional.rst:47
104
140
msgid ""
@@ -112,6 +148,16 @@ msgid ""
112
148
"GUI might be object-oriented while the processing logic is procedural or "
113
149
"functional, for example."
114
150
msgstr ""
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."
115
161
116
162
#: ../Doc/howto/functional.rst:58
117
163
msgid ""
@@ -123,6 +169,15 @@ msgid ""
123
169
"side effects means not using data structures that get updated as a program "
124
170
"runs; every function's output must only depend on its input."
125
171
msgstr ""
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."
126
181
127
182
#: ../Doc/howto/functional.rst:66
128
183
msgid ""
@@ -134,6 +189,13 @@ msgid ""
134
189
"called for their side effects of sending some text to the screen or pausing "
135
190
"execution for a second."
136
191
msgstr ""
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."
137
199
138
200
#: ../Doc/howto/functional.rst:74
139
201
msgid ""
@@ -144,6 +206,12 @@ msgid ""
144
206
"assignments to local variables, but won't modify global variables or have "
145
207
"other side effects."
146
208
msgstr ""
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."
147
215
148
216
#: ../Doc/howto/functional.rst:80
149
217
msgid ""
@@ -156,39 +224,53 @@ msgid ""
156
224
"approaches by writing functions that take and return instances representing "
157
225
"objects in your application (e-mail messages, transactions, etc.)."
158
226
msgstr ""
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.)."
159
236
160
237
#: ../Doc/howto/functional.rst:89
161
238
msgid ""
162
239
"Functional design may seem like an odd constraint to work under. Why should "
163
240
"you avoid objects and side effects? There are theoretical and practical "
164
241
"advantages to the functional style:"
165
242
msgstr ""
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:"
166
246
167
247
#: ../Doc/howto/functional.rst:93
168
248
msgid "Formal provability."
169
- msgstr ""
249
+ msgstr "Demostrabilidad formal. "
170
250
171
251
#: ../Doc/howto/functional.rst:94
172
252
msgid "Modularity."
173
- msgstr ""
253
+ msgstr "Modularidad. "
174
254
175
255
#: ../Doc/howto/functional.rst:95
176
256
msgid "Composability."
177
- msgstr ""
257
+ msgstr "Componibilidad. "
178
258
179
259
#: ../Doc/howto/functional.rst:96
180
260
msgid "Ease of debugging and testing."
181
- msgstr ""
261
+ msgstr "Fácil de depurar y probar. "
182
262
183
263
#: ../Doc/howto/functional.rst:100
184
264
msgid "Formal provability"
185
- msgstr ""
265
+ msgstr "Demostrabilidad formal "
186
266
187
267
#: ../Doc/howto/functional.rst:102
188
268
msgid ""
189
269
"A theoretical benefit is that it's easier to construct a mathematical proof "
190
270
"that a functional program is correct."
191
271
msgstr ""
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."
192
274
193
275
#: ../Doc/howto/functional.rst:105
194
276
msgid ""
@@ -199,6 +281,13 @@ msgid ""
199
281
"looks right; the goal is instead a rigorous proof that a program produces "
200
282
"the right result for all possible inputs."
201
283
msgstr ""
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."
202
291
203
292
#: ../Doc/howto/functional.rst:112
204
293
msgid ""
@@ -210,6 +299,14 @@ msgid ""
210
299
"This continues until you reach the end of the program, at which point the "
211
300
"invariants should match the desired conditions on the program's output."
212
301
msgstr ""
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."
213
310
214
311
#: ../Doc/howto/functional.rst:120
215
312
msgid ""
@@ -218,6 +315,10 @@ msgid ""
218
315
"invariants that were true before the assignment without producing any new "
219
316
"invariants that can be propagated onward."
220
317
msgstr ""
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."
221
322
222
323
#: ../Doc/howto/functional.rst:125
223
324
msgid ""
@@ -230,6 +331,16 @@ msgid ""
230
331
"the question of verifying the proof; maybe there's an error in it, and you "
231
332
"wrongly believe you've proved the program correct."
232
333
msgstr ""
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."
233
344
234
345
#: ../Doc/howto/functional.rst:136
235
346
msgid "Modularity"
0 commit comments