Skip to content

Commit ada281c

Browse files
committed
Traducido howto/functional (29 de 206 - 14%)
1 parent 67f004e commit ada281c

File tree

1 file changed

+126
-15
lines changed

1 file changed

+126
-15
lines changed

howto/functional.po

+126-15
Original file line numberDiff line numberDiff line change
@@ -6,39 +6,41 @@
66
# Check https://github.com/python/python-docs-es/blob/3.8/TRANSLATORS to
77
# get the list of volunteers
88
#
9-
#, fuzzy
109
msgid ""
1110
msgstr ""
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
2426
msgid "Functional Programming HOWTO"
25-
msgstr ""
27+
msgstr "Cómo hacer programación funcional"
2628

2729
#: ../Doc/howto/functional.rst
2830
msgid "Author"
29-
msgstr ""
31+
msgstr "Autor"
3032

3133
#: ../Doc/howto/functional.rst:5
3234
msgid "A. M. Kuchling"
33-
msgstr ""
35+
msgstr "A. M. Kuchling"
3436

3537
#: ../Doc/howto/functional.rst
3638
msgid "Release"
37-
msgstr ""
39+
msgstr "Publicación"
3840

3941
#: ../Doc/howto/functional.rst:6
4042
msgid "0.32"
41-
msgstr ""
43+
msgstr "0.32"
4244

4345
#: ../Doc/howto/functional.rst:8
4446
msgid ""
@@ -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`."
5052
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`."
5159

5260
#: ../Doc/howto/functional.rst:16
5361
msgid "Introduction"
54-
msgstr ""
62+
msgstr "Introducción"
5563

5664
#: ../Doc/howto/functional.rst:18
5765
msgid ""
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`."
6169
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>`."
6274

6375
#: ../Doc/howto/functional.rst:22
6476
msgid ""
6577
"Programming languages support decomposing problems in several different ways:"
6678
msgstr ""
79+
"Los lenguajes de programación soportan la descomposición de problemas en "
80+
"muchas formas diferentes:"
6781

6882
#: ../Doc/howto/functional.rst:24
6983
msgid ""
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."
7387
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."
7492

7593
#: ../Doc/howto/functional.rst:28
7694
msgid ""
@@ -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."
83101
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."
84109

85110
#: ../Doc/howto/functional.rst:35
86111
msgid ""
@@ -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."
92117
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."
93124

94125
#: ../Doc/howto/functional.rst:41
95126
msgid ""
@@ -99,6 +130,11 @@ msgid ""
99130
"known functional languages include the ML family (Standard ML, OCaml, and "
100131
"other variants) and Haskell."
101132
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."
102138

103139
#: ../Doc/howto/functional.rst:47
104140
msgid ""
@@ -112,6 +148,16 @@ msgid ""
112148
"GUI might be object-oriented while the processing logic is procedural or "
113149
"functional, for example."
114150
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."
115161

116162
#: ../Doc/howto/functional.rst:58
117163
msgid ""
@@ -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."
125171
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."
126181

127182
#: ../Doc/howto/functional.rst:66
128183
msgid ""
@@ -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."
136191
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."
137199

138200
#: ../Doc/howto/functional.rst:74
139201
msgid ""
@@ -144,6 +206,12 @@ msgid ""
144206
"assignments to local variables, but won't modify global variables or have "
145207
"other side effects."
146208
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."
147215

148216
#: ../Doc/howto/functional.rst:80
149217
msgid ""
@@ -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.)."
158226
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.)."
159236

160237
#: ../Doc/howto/functional.rst:89
161238
msgid ""
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:"
165242
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:"
166246

167247
#: ../Doc/howto/functional.rst:93
168248
msgid "Formal provability."
169-
msgstr ""
249+
msgstr "Demostrabilidad formal."
170250

171251
#: ../Doc/howto/functional.rst:94
172252
msgid "Modularity."
173-
msgstr ""
253+
msgstr "Modularidad."
174254

175255
#: ../Doc/howto/functional.rst:95
176256
msgid "Composability."
177-
msgstr ""
257+
msgstr "Componibilidad."
178258

179259
#: ../Doc/howto/functional.rst:96
180260
msgid "Ease of debugging and testing."
181-
msgstr ""
261+
msgstr "Fácil de depurar y probar."
182262

183263
#: ../Doc/howto/functional.rst:100
184264
msgid "Formal provability"
185-
msgstr ""
265+
msgstr "Demostrabilidad formal"
186266

187267
#: ../Doc/howto/functional.rst:102
188268
msgid ""
189269
"A theoretical benefit is that it's easier to construct a mathematical proof "
190270
"that a functional program is correct."
191271
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."
192274

193275
#: ../Doc/howto/functional.rst:105
194276
msgid ""
@@ -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."
201283
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."
202291

203292
#: ../Doc/howto/functional.rst:112
204293
msgid ""
@@ -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."
212301
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."
213310

214311
#: ../Doc/howto/functional.rst:120
215312
msgid ""
@@ -218,6 +315,10 @@ msgid ""
218315
"invariants that were true before the assignment without producing any new "
219316
"invariants that can be propagated onward."
220317
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."
221322

222323
#: ../Doc/howto/functional.rst:125
223324
msgid ""
@@ -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."
232333
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."
233344

234345
#: ../Doc/howto/functional.rst:136
235346
msgid "Modularity"

0 commit comments

Comments
 (0)