- Apr 2024
-
chiselapp.com chiselapp.com
-
[:session | doc := HedgeDoc new url: commonAddress, session asString; retrieveContents. ]
Bloque
nos indica que se ejecutara para cada elemento de (sessiones)
Sessions: es un elemnto que esta dento de (Session).
en este mismo bloque se crea un (HedgeDoc) nuevo,lo cual establece las url
-
-
chiselapp.com chiselapp.com
-
[:each | each abs]
El bloque proporcionado es [:each | each abs], que toma cada elemento (each)
-
Bloques
-
Métodos anónimos: Los bloques no tienen nombres asociados y pueden ser creados y utilizados sobre la marcha sin necesidad de definir un nombre específico para ellos.
-
Almacenamiento en variables: Los bloques pueden ser asignados a variables y pasados como argumentos a otros métodos o bloques.
-
Delimitados por paréntesis cuadrados: Los bloques en Pharo están delimitados por paréntesis cuadrados [ ].
-
Captura de contexto: Los bloques pueden capturar variables definidas en el contexto en el que se crean, lo que les permite acceder y manipular esos valores
-
-
- Mar 2024
-
chiselapp.com chiselapp.com
-
b := [:x | x + 2]. b value: 20
La caja
b
está guardando no un valor, sino un procedimiento o cálculo futuro, cuyo resultado conocemos cuando asignamos los valores a los argumentos de los cuales dicho cálculo requiere. -
[:x :y | x - y] value:3 value:5
En los bloques, el orden de los argumentos importa:
-
-
chiselapp.com chiselapp.com
-
[:x :y | x - y] value:3 value:5.
En los bloques, el orden de los elementos importa:
-
-
mutabit.com mutabit.com
-
[:x | x+2]
-
Bloques For this part a Basic understanding of Basic Types is recommended. If you have not done that part yet, please go to that subtree and run the code there Ahora hablemos de los bloques. Piensa en los bloques como una manera de 'congelar' código que luego podremos ejecutar por demanda, cuando queramos y/o las condiciones para su ejecución se cumplan. Los bloques son métodos anónimos, lo cual quiere decir que no es necesario ponerles nombres para invocarlos (como ocurre con las operaciones sobre objetos que hemos visto hasta el momento) y pueden pueden ser almacenados en variables. Los bloques están delimitados por paréntesis cuadrados: []
-
Métodos anónimos: Los bloques no tienen nombres asociados y pueden ser creados y utilizados sobre la marcha sin necesidad de definir un nombre específico para ellos.
-
Almacenamiento en variables: Los bloques pueden ser asignados a variables y pasados como argumentos a otros métodos o bloques.
-
Delimitados por paréntesis cuadrados: Los bloques en Pharo están delimitados por paréntesis cuadrados [ ].
-
Captura de contexto: Los bloques pueden capturar variables definidas en el contexto en el que se crean, lo que les permite acceder y manipular esos valores
-
-
- Mar 2023
-
chiselapp.com chiselapp.com
-
Blocks are Smalltalks anonymous functions, or lambdas. They are expressed as a sequence of statements enclosed in square brackets.
Son maneras de dejar operaciones pendientes.
-