23 Matching Annotations
  1. May 2024
    1. sessions := 1 to: 11

      El tipo de mensaje es keyword porque son aquellos mensajes que consisten en uno o más nombres de argumentos precedidos por dos puntos (:). Su composición parte de:

      Un receptor (objeto), el mensaje (método a utilizar) y el argumento que son los valores que se pasan al método para que pueda realizar la tarea. En los mensajes keyword, los argumentos están precedidos por dos puntos (:) y separados por comas (,).

      Para este caso: * El objeto es: sessions. * El mensaje es: to * y el argumento pasado por el método to es el 11, Esto indica que la secuencia de números enteros debe ir desde 1 hasta 11 inclusive.

    1. memories do: [:doc | | fileName | fileName := (doc url asString splitOn: $:) last , '.md'. doc file: folder / fileName. doc exportAsFile. ]

      Es un mensaje tipo keyword

      • El objeto es: memories
      • El mensaje es: do
      • El argumento del mensaje do es el bloque proporcionado entre corchetes [:doc | .... ] aquí el iterador es el do, el cual se utiliza para recorrer cada elemento de la colección o objeto memories y ejecutar el bloque proporcionado para cada uno de ellos.

      Resultado devuelto al ejecutar todo el bloque:

    2. memories doWithIndex: [:item :index | item metadata at: 'title' put: 'Unidades semanticas, sesión ', index asString ].

      Este mensaje es tipo Keyword y dentro de este el

      • Objeto (receptor): es memories el cual invoca el método.
      • Mensaje (selector) es doWithIndex: Este es un mensaje de Pharo que se utiliza para iterar sobre una colección y proporciona tanto el elemento actual como su índice en cada iteración.
      • Argumento: Es el mensaje doWithIndex el cual es un bloque de código que define la acción que se realizará en cada elemento de la colección. En este caso, el bloque es [:item :index | ........ ], es decir, todo lo que encierran los corchetes y recibe dos parámetros: item, que representa cada elemento de la colección, y index, que representa el índice del elemento en la colección.

      Dentro del bloque: * El objeto item es el elemento actual de la colección memories. * El mensaje enviado es metadata, que es un mensaje enviado al objeto item. Este mensaje obtiene los metadatos asociados con el elemento actual. * El argumento del mensaje at:put: es una clave, en este caso 'title', y el nuevo valor 'Unidades semanticas, sesión ', que se asigna a la clave 'title' en los metadatos del elemento actual.

      Al ejecutar todo el código se devuelve el siguiente resultado:

    3. memories := sessions collect: [:session | doc := HedgeDoc new url: commonAddress, session asString; retrieveContents. ]

      Este ejemplo en Pharo se refiere a la manipulación de colecciones y al uso de bloques en combinación con mensajes Keyword.

      Ahora bien, a continuación se explica las dos partes del ejercicio: En mensaje en keyword es: 1. Objeto es: sessions 2. Mensaje es: collect<br /> 3. Argumento: [:session |

      Dentro del bloque el código funciona así: 1. Objeto: para este se crea un nuevo objeto de tipo HedgeDoc utilizando el mensaje new. Este objeto se asigna a la variable doc. 2. Ahora el mensajes new envían varios mensajes al objeto doc: tales como: * url: Configura la URL del objeto doc. Toma como argumento la concatenación de commonAddress (una dirección común) y la representación de cadena de session. * Ahora utiliza retrieveContents: el cual es un mensaje que permite recuperar el contenido de la URL configurada en el objeto doc.

      En general, el código utiliza el iterador collect: el cual controla la iteración sobre la colección sessions y aplica el bloque definido [:session | a cada elemento de la colección.

      Al ejecutar todo este código se obtiene el siguiente resultado:

    4. sessions := 1 to: 11

      El tipo de mensaje es keyword porque son aquellos mensajes que consisten en uno o más nombres de argumentos precedidos por dos puntos (:). Su composición parte de:

      Un receptor (objeto), el mensaje (método a utilizar) y el argumento que son los valores que se pasan al método para que pueda realizar la tarea. En los mensajes keyword, los argumentos están precedidos por dos puntos (:) y separados por comas (,).

      Para este caso: * El objeto es sessions. * El mensaje es to * y el argumento pasado por el método to es el 11, Esto indica que la secuencia de números enteros debe ir desde 1 hasta 11 inclusive.

  2. Apr 2024
    1. sessions := 1 to: 11

      El tipo de mensaje es keyword porque son aquellos mensajes que consisten en uno o más nombres de argumentos precedidos por dos puntos (:). Su composición parte de:

      Un receptor (objeto), el mensaje (método a utilizar) y el argumento que son los valores que se pasan al método para que pueda realizar la tarea. En los mensajes keyword, los argumentos están precedidos por dos puntos (:) y separados por comas (,).

      Para este caso: * El objeto es sessions. * El mensaje es to * y el argumento pasado por el método to es el 11, Esto indica que la secuencia de números enteros debe ir desde 1 hasta 11 inclusive.

  3. May 2023
    1. (daysIndexes collect: [:letter | (Shortener enlarge: commonAddress, letter asString) ])

      Mensaje keyword * receptor: daysIndexes * mensaje: collect: * argumento: [:letter | (Shortener enlarge: commonAddress, letter asString)]

    2. HedgeDoc new url: address;

      Mensaje keyword * receptor: hedgeDoc * mensaje: url: * argumento: address;

    3. dataWeekDailyNoteAddresses collectWithIndex: [:address :i | | hedgeDoc | hedgeDoc := HedgeDoc new url: address; retrieveContents. hedgeDoc metadata at: 'title' put: ('acceso23 : sesión ', i asString). hedgeDoc ]

      Mensaje keyword * receptor: dataWeekDailyNoteAddresses * mensaje: CollectWithIndex: * argumento: [:address :i | | hedgeDoc | hedgeDoc := HedgeDoc new url: address; retrieveContents. hedgeDoc metadata at: 'title' put: ('acceso23 : sesión ', i asString). hedgeDoc]

    1. hedgeDoc metadata at: 'title' put: ('Sesión del 17 de marzo').

      Mensaje unario:

      • receptor: hedgeDoc
      • mensaje: metadada

      Mensaje Keword:

      • receptor: hedgeDoc metadata
      • mensaje: at: put:
      • argumentos: 'title' 'Sesión del 17 de marzo'
    2. hedgeDoc := HedgeDoc new url: 'https://docutopia.sustrato.red/accesibilidad:23K?both# '; retrieveContents.

      Mensaje unario:

      • receptor: hegeDoc
      • mensaje: retrieveContents

      Mensaje Keyword:

      • receptor: hegeDoc
      • mensaje: url:
      • argumento: https://docutopia.sustrato.red/accesibilidad:23K?both#
    3. repositoryFolder := FileLocator documents / 'Acceso\kathy29-wikilexias\'. wikiFolder := repositoryFolder / 'wiki'. wikiSubfolder := wikiFolder / 'es' / 'RecuperacionClasesAccesibilidad'. wikiSubfolder ensureCreateDirectory

      Mensajes keyword:

      • receptor repositoryFolder :=
      • mensaje: FileLocator documents
      • argumento: 'Acceso\kathy29-wikilexias\'.

      Mensajes Binarios:

      wikiFolder := repositoryFolder / 'wiki',

      • receptor: repositoryFolder
      • argumento: 'wiki'.

      Mensajes keyword:

      wikiSubfolder := wikiFolder / 'es' / 'RecuperacionClasesAccesibilidad',

      • receptor: wikiFolder
      • argumentos: 'es' y 'RecuperacionClasesAccesibilidad'
    4. hedgeDoc file: wikiSubfolder / ('Accesibilidad-K','.md'). hedgeDoc exportAsFile. hedgeDoc asMarkdeep exportAsFile. wikiSubfolder

      Mensajes Binarios:

      • receptor: wikiSubfolder
      • argumentos: ('Accesibilidad-K', '.md').

      Mensaje Keyword:

      • receptor: hedgeDoc
      • mensaje: asMarkdeep
      • argumento adicional: exportAsFile.
    1. hedgeDocs doWithIndex: [:hedgeDoc :i | hedgeDoc file: wikiSubfolder / ('semanti', i asString, '.md').
      • receptor: hedgeDocs
      • mensaje: doWithIndex:
      • argumento:[:hedgeDoc :i |
      • hedgeDoc file: wikiSubfolder / ('semanti', i asString, '.md').
    2. Character alphabet copyFrom: 1 to: 23
      • receptor: Character alphabet
      • mensaje: copyFrom:to:
      • argumento: 1, 23
    3. Shortener enlarge: commonAddress, letter asString
      • receptor: Shorterner
      • mensaje: enlarge:
      • argumento: commonAddress, letter asString
    1. hedgeDocs doWithIndex: [:hedgeDoc :i | hedgeDoc file: wikiSubfolder / ('acceso23-', i asString, '.md'). hedgeDoc exportAsFile. hedgeDoc asMarkdeep exportAsFile. ].

      Mensaje en cascada

      Receptor: hedgeDocs doWithIndex:

      Argumento: [:hedgeDoc :i | hedgeDoc file: wikiSubfolder / ('acceso23-', i asString, '.md'). hedgeDoc exportAsFile. hedgeDoc asMarkdeep exportAsFile. ].

      Mensaje: exportAsFile.

    2. wikiSubfolder := wikiFolder / 'es' / 'Acceso2023'.

      Mensaje keyword

      Receptor: wikiSubfolder :=

      Mensaje: wikiFolder

      Argumento: 'es' / 'Acceso2023'.

    3. wikiFolder := repositoryFolder / 'wiki'.

      Mensaje keyword

      Receptor: wikiFolder :=

      Mensaje: repositoryFolder

      Argumento: 'wiki'.

    4. repositoryFolder := FileLocator documents / 'RepositorioKath/home/'.

      Mensaje keyword

      Receptor: repositoryFolder :=

      Mensaje: FileLocator documents

      Argumento: 'RepositorioKath/home/'.

    5. dataWeekDailyNoteAddresses := (daysIndexes collect: [:letter | (Shortener enlarge: commonAddress, letter asString) ]) select: [:each | each beginsWith: 'https' ]

      Mensaje en cascada y keyword.

      Receptor: dataWeekDailyNoteAddresses :=

      Mensaje: (daysIndexes collect: y (Shortener enlarge: commonAddress, letter asString)

      Argumento: [:each | each beginsWith: 'https' ]

    6. hedgeDocs := dataWeekDailyNoteAddresses collectWithIndex: [:address :i | | hedgeDoc | hedgeDoc := HedgeDoc new url: address; retrieveContents. hedgeDoc metadata at: 'title' put: ('Acceso 23: día ', i asString). hedgeDoc ]

      Mensaje en cascada y keyword.

      Receptor: hedgeDocs :=

      Argumento: at: 'title' put: ('Acceso 23: día ', i asString).

      Mensaje: collectWithIndex: y retrieveContents.

    7. daysIndexes := (Character alphabet copyFrom: 1 to: 12) asUppercase asOrderedCollection. commonAddress := 'https://is.gd/acceso23'.

      Mensaje keyword

      Receptor: daysIndexes :=

      Argumento: (Character alphabet copyFrom: 1 to: 12)y commonAddress := 'https://is.gd/acceso23'.

      Mensaje: asUppercase asOrderedCollection.

      Mensaje binario

      Receptor: commonAddress :=

      Argumento: 'https://is.gd/acceso23'.