Summary

Revisando la participación continua

https://mutabit.com/repos.fossil/labci/doc/tip/wiki/revisando-la-participacion-continua--2w3jt.md.html

Group: Public
Total users: 9
Users: Thoms19.99, JPAR, Valentina_Penagos_Ariza, DAZAYO, MaxiL, dariomontenegro, lgruben2002, offray, ValeVanegas_
Total annotations: 68
Total replies: 18

Annotations

Annotation 1:

Created at:
Author: Thoms19.99
Type: Annotation
Quote:
round := { fighter1 name. fighter2 name. (randomMove value: fighter1). (randomMove value: fighter2). { fighter1 . fighter2 } atRandom name }
Comment:

Sobre los códigos de las rondas tengo un problema. Precisamente cuando ejecuto el código tal cual como lo vimos en clase me aparece "value was sent to nil" Estuve revisando las grabaciones de las clases pero no encuentro ningún error anterior, de hecho, me había funcionado hasta la parte donde debemos utilizar los dataframes. Pero a partir de ahí cuando quiero poner una ronda no me lo permite. Este es el código que he estado utilizando. round1 := { fighter1 name. fighter2 name. (randomMove value: fighter1) at: 'move' at: 'name'. (randomMove value: fighter2) at: 'move' at: 'name'. { fighter1 . fighter2 } atRandom } Y esto es lo que aparece cuando lo ejecuto. De saber alguna solución posible lo agradecería

Annotation 2:

Created at:
Author: JPAR
Type: Annotation
Quote:
fighter1 := Pokemon new name: 'pikachu'. fighter2 := Pokemon new name: 'ditto'.
Comment:

Cuando estoy realizando el mismo ejemplo no lo ejecuta porque hay un error esobre que declarada la varaiable.

Tags: Variables, Error, Batalla Pokemon

Annotation 3:

Created at:
Author: JPAR
Type: Annotation
Quote:
fighter1 data
Comment:

Aquí en esta orden al ejecutarla en Glamorous también se produce un error de respuesta nula

Tags: Respuesta nula, Data, Caracteristicas Pokemon

Annotation 4:

Created at:
Author: JPAR
Type: Annotation
Quote:
finalRound := { randomMove value: fighter1 . randomMove value: fighter2 }
Comment:

Al ejecutarla para seguir el ejercicio se produjo error de respuesta nula como en la anterior

Tags: Respuesta nula

Annotation 5:

Created at:
Author: JPAR
Type: Annotation
Quote:
winner := { fighter1 . fighter2 } atRandom
Comment:

No declara ganador ya que no esta definida la variable

Annotation 6:

Created at:
Author: Valentina_Penagos_Ariza
Type: Annotation
Quote:
STONJSON fromString: ('https://pokeapi.co/api/v2/pokemon?limit=-1' asUrl retrieveContents
Comment:

Extrañamente el código se me ejecuta correctamente, pues me da la misma respuesta, pero no entiendo cómo podemos extraer los nombres, pues al no poder acceder a este Pokemon atRandom no me permite elegir en aleatorio entre todos los nombres de todos los Pokemones.

Tags: Interacción computacional, Conocimientos sobre la coputación, Errores en programación

Annotation 7:

Created at:
Author: Valentina_Penagos_Ariza
Type: Annotation
Quote:
quien haya gando dos de los tres combates
Comment: Si bien podemos hacer esto si se hacen las tres rondas con los mismos dos luchadores, o al menos con solo uno de ellos; sería muy complicado conseguir un pokemon ganador dos veces si elegimos aleatoriamente entre 1302 pokemones.
Tags: Interpretación en línea, Comparación de información

Annotation 8:

Created at:
Author: DAZAYO
Type: Annotation
Quote:
fighter1 := Pokemon new name: 'pikachu'. fighter2 := Pokemon new name: 'ditto'.
Comment:

Para el proyecto final he creado la CLASE: pokemon con sus objetos " fighter" y a la vez cada uno de estos con sus atributos para mi proyecto he creado 6 luchadores:

1

2

3

Annotation 9:

Created at:
Author: DAZAYO
Type: Annotation
Quote:
fighter1 data
Comment:

Con este comando podemos traer de la API todos los atributos del objeto

4

Annotation 10:

Created at:
Author: DAZAYO
Type: Annotation
Quote:
randomMove := [ :fighter | (fighter data at: 'moves') atRandom at: 'move' at: 'name' ]
Comment: Lo que decimos aquí es: es tráigame aleatoriamente de los datos de cualquier luchador de la lineal movimientos un movimiento al azar.

Annotation 11:

Created at:
Author: DAZAYO
Type: Annotation
Quote:
finalRound := { randomMove value: fighter1 . randomMove value: fighter2 }
Comment:

Bien hasta aqui:

5

Annotation 12:

Created at:
Author: DAZAYO
Type: Annotation
Quote:
pokemonTournament := DataFrame withColumnNames: #(figther1 fighter2 moveFigther1 moveFigther2 winner)
Comment: Aqui solo le estamos diciendo que le ponga columnas a la tabla pero no las filas ¿ hay que ponerlas?

Annotation 13:

Created at:
Author: DAZAYO
Type: Annotation
Quote:
pokemonTournament addRow: (roundBetweenFighters value: fighter1 value: fighter2) named: 'round 1'
Comment:

No me deja realizar la acción me sale este error

6

Annotation 14:

Created at:
Author: DAZAYO
Type: Reply
Comment: Quede loco. Yo cree 6 luchadores y a cada fighter 1 ,2,3 etc lo nombre, entonces entiendo que aqui con la variable fighter 1 simplemente se le esta diciemdo traigame al luchador 1 que lo nombre pikachu y traigame un movimiento aleatoreo y que luchen,,,, pero no poniendo el nombre ????

Annotation 15:

Created at:
Author: DAZAYO
Type: Annotation
Quote:
roundBetweenFighters value: fighter1 value: fighter2
Comment:

Aqui no se coloca el nombre, pero se entiende que el fighter1 es pikachu y el me va a traer los datos de él lo mismo si le digo fighter 2 el entiende que es Ditto…

Annotation 16:

Created at:
Author: MaxiL
Type: Annotation
Quote:
Si se alcanza, intentar traducir esas frases anteriores en español a su equivalente en código.
Comment:

En este apartado, realice el ejercicio con las partes de código del torneo Pokémon, pero no pude organizar los datos en la tabla, porque se me genera solo con los daos vacíos. Entonces seguí los ejemplos del libro de los DataFrame, pero me sigue generando el mismo error, se crea la tabla, pero no se puede organizar dentro de la estructura y en algunos lados genera errores que desconozco si son de la ejecución del código, o es que falta adicionar algo al Software Grafoscopioerror de código PDF

Tags: DataFrame, organización de datos en tablas, ejecución de código

Annotation 17:

Created at:
Author: dariomontenegro
Type: Reply
Comment:

Asi, es. Las filas se llenan a medida que se van creando las rondas. Sin embargo, deberias tener presente, este texto de acuerdo al libro de "DATAFRAME, pagina 22:

"Although it is possible to create a data frame with no rows using DataFrame class >> neworDataFrame >> withColumnNames: andaddrowslater by pushing them one by one, this is not recommended. DataFrame is not optimized for the insertion of new elements. It may be more efficient to first add rows into an OrderedCollection and then initialize a data frame with it."

Annotation 18:

Created at:
Author: dariomontenegro
Type: Reply
Comment:

No me genera error, mi sugerencia es escribirlo nuevamente, sin copiar y revisar detenidamente el código.

Annotation 19:

Created at:
Author: MaxiL
Type: Annotation
Quote:
roundBetweenFighters := [ :fighter1 :fighter2 | { fighter1 name . fighter2 name. (randomMove value: fighter1). (randomMove value: fighter2). { fighter1 . fighter2 } atRandom name } ]
Comment: En este caso, para la selección de otros peleadores, por ejemplo, no me queda claro, si debo, en este código cambiar el fighter1 y 2 por 3 y 4.

Annotation 20:

Created at:
Author: dariomontenegro
Type: Reply
Comment:

No, según entiendo, debes cambiar los nombres siguiendo el siguiente código:

fighter1 := Pokemon new name: 'pikachu'. fighter2 := Pokemon new name: 'ditto'.

En mi caso, utilice los pokemon de agus vs fuego: fighter1 := Pokemon new name: 'squirtle'. fighter2 := Pokemon new name: 'charmander'.

Annotation 21:

Created at:
Author: lgruben2002
Type: Annotation
Quote:
pokemonDataDictionary := STONJSON fromString: pokemonRawData
Comment:

A través de este código (STONJSON) podremos sustraer los datos de manera ligera a fin de contar con el diccionario de los datos., por otro lado, para tener una estructura de los datos se recomienda el navegador Mozilla Firefox, toda vez que tiene una interfaz nativa para ver los datos con más facilidad.

A continuación se ilustra un ejemplo de la visualización de JSON:

Tags: JSON, Mozilla, Diccionario de datos

Annotation 22:

Created at:
Author: lgruben2002
Type: Annotation
Quote:
#('Eduar Daza' 'Nestor Cristancho' 'Maxi López-Gómez' 'Valentina Vanegas' 'Rubén Torres' 'Thomas Martínez' 'Lizeth Colorado' 'Dario Montenegro' 'Juan Pablo Arias Romero' 'Valentina Penagos Ariza')
Comment:

En el presente caso podemos ver un ARREGLO, el cual está representado por #( ) y que son maneras de guardar colecciones de información diversa como en este caso se agrupan los repositorios de la clase Unisemánticas. Para mayor información ver el apartado 4.1. del documento Representando y procesando datos en Pharo

Tags: Pharo, Arreglos, Representando datos

Annotation 23:

Created at:
Author: lgruben2002
Type: Annotation
Quote:
atRandom
Comment:

En Pharo, atRandom es un método común que significa "elige un elemento aleatorio" que en este caso se utiliza para la selección aleatoria de los repositorios de los estudiantes, sin embargo, será utilizada para seleccionar aleatoriamente los datos de los Pokemon albergados en Pokeapi.

Tags: atRandom, Selección aleatoria, Pharo

Annotation 24:

Created at:
Author: lgruben2002
Type: Annotation
Quote:
ormato ampliamente utilizado en el intercambio de datos en la web
Comment:

Dicho formato (JSON) también es comúnmente utilizado para el desarrollo de interfaces de programación de aplicaciones (API REST), por ejemplo, en las Bibliotecas universitarias se utiliza usualmente para el vaciado de datos entre los sistemas de información académicos con los ILS para descargar/actualizar los datos de los estudiantes matriculados en una Universidad sin necesidad de hacer cargas por archivo txt, xls, etc.

Tags: Integrated Library Systems, API REST, JSON

Annotation 25:

Created at:
Author: lgruben2002
Type: Annotation
Quote:
Pokemon
Comment:

Pokémon es una de las franquicias más populares del mundo del entretenimiento, originada en Japón. El nombre viene de la contracción de "Pocket Monsters" (Monstruos de Bolsillo) y fueron creados en 1996.

Tags: Pokemon, Pokéapi

Annotation 26:

Created at:
Author: Thoms19.99
Type: Annotation
Quote:
STONJSON fromString: pokemonRawData
Comment: En esta parte cuando estuve ejecutando el comando STONJSON fromString: pokemonexamplelink al principio no me permitía ejecutar. Luego probé completando el comando utilizando los paréntesis (pokemonexamplelink asUrl retrieveContents) se logró ejecutar el comando.

Annotation 27:

Created at:
Author: lgruben2002
Type: Annotation
Quote:
pokemonExampleLink asUrl retrieveContents
Comment:

La siguiente operación implica un Receptor(pokemonExampleLink), un Selector (asUrl) y un Argumento (retrieveContents) donde básicamente se interpreta que la operación pokemonRawData indique que la cadena pokemonExampleLink como URL permita la sustracción de los contenidos de https://pokeapi.co/api/v2/pokemon/pikachu

Tags: POO, STONJSON, Cadena de código

Annotation 28:

Created at:
Author: lgruben2002
Type: Annotation
Quote:
pokemonDataDictionary := [ :name | | dataLink pokemonRawData | dataLink := 'https://pokeapi.co/api/v2/pokemon/', name. pokemonRawData := dataLink asUrl retrieveContents. STONJSON fromString: pokemonRawData ]
Comment:

Docente @Offray, sobre el siguiente bloque tengo las siguientes inquietudes:

  1. técnicamente que significa := ? ya que esta siempre antecede un bloque.
  2. con base en el documento Representando y procesando datos en Pharo no veo ejemplos como :name donde los dos puntos anteceden el valor, técnicamente que significa dicho mensaje dentro del boque, es lo referente al elemento que presentará los cambios dentro de un mensaje?
Tags: Bloque, POO

Annotation 29:

Created at:
Author: lgruben2002
Type: Annotation
Quote:
okemonDataDictionary value: 'pikachu'
Comment: Durante el ejercicio en Pharo con el documento importado en Glamorus, genera algunos errores al momento de aplicarlo (inspect), sin embargo, se ha corregido moviendo algunos espacios para la correcta ejecución, lo cual se debe validar como resultado de la importación del documento.
Tags: POO, Glamorous, Importación

Annotation 30:

Created at:
Author: lgruben2002
Type: Annotation
Quote:
:item
Comment:

Doncente @offray, que la palabra ítem se encuentre antecedida por los dos puntos indica que es como el elemento que vamos a manipular a través del mensaje?

Tags: Pregunta POO

Annotation 31:

Created at:
Author: lgruben2002
Type: Annotation
Quote:
finalRound := { randomMove value: fighter1 . randomMove value: fighter2
Comment: Este comendo me genera un error en Grafoscopio para poder seleccionar el movimiento de los pokemones al azar
Tags: RandomMove, POO

Annotation 32:

Created at:
Author: MaxiL
Type: Reply
Comment: Listo, muchas gracias por la acotación.

Annotation 33:

Created at:
Author: MaxiL
Type: Reply
Comment: Por mi parte desconozco todo acerca del mundo de los pokemon. No me gusta el comic y por ende nunca ví ni la serie ni da relacionado, es un mundo totalmente nuevo cuando en la clase hablaban de peleas y poderes y demás. Solo ahorita con este asunto, he indagado sobre el tema
Tags: Pokemon

Annotation 34:

Created at:
Author: MaxiL
Type: Annotation
Quote:
pokemonDataDictionary value: 'ditto'
Comment:

Entiendo que los diccionarios traen los datos de de los valores desde la PokeApi. Pero en este caso, no me queda claro ¿cómo se da esta relación? Osea, cómo llego a que la Api me traiga los valores de un pokemon determinado?

Tags: Pokemon, PokeApi, diccionarios, valores, relación entre: datos - valores

Annotation 35:

Created at:
Author: lgruben2002
Type: Annotation
Quote:
{ fighter1 . fighter2 }
Comment:

Docente @offray que significa o que mensaje se ejecuta cuando colocamos el punto en el medio entre los dos peleadores.

Tags: POO

Annotation 36:

Created at:
Author: MaxiL
Type: Annotation
Quote:
Vista errorea del Data Frame para guardar el torneo Pokemon. Si que quiere ver la vista correcta hay que cliquera la soalapa “Tree”, en lugar de la solapa “Data”, en la parte superior.
Comment:

Una vez hecho el ejercicio en GT y agregado el DataFrame, y cliquear en la solapa Tree, me salen los datos vacíos, no se si es que falta agregar una parte de código para ejecutar algo y organizarlos.datos en la tabla

Annotation 37:

Created at:
Author: offray
Type: Reply
Comment:

Aunque el conocimiento previo del fenómeno a modelar no es un prerrequisito de los ejericicios con modelamiento de datos. Como dice este mismo documento:

La clave de este tipo de ejercicios, ya sea con datos reales, como los de Fossil, o con datos ficticios, como los de los Pokemon, es continuar nuestra introducción al pensamiento computacional, de modo que podamos aplicar lo aprendido hasta el momento en la consulta, composición y manipulación de información estructurada. Esto cierra nuestro encuentro del semestre en esta ocasión. Pero, a futuro, se espera que la dichas competencias con información estructurada, sean la antesala que nos permita pasar a manejar la información no estructurada, como la que se encuentra en los modelos vectoriales de lenguaje.

Tags: modelación computacional

Annotation 38:

Created at:
Author: offray
Type: Reply
Comment: Efectivamente, lo que hace STONJSON es obtener esa vista de información estructurada, pero dentro de Pharo/GToolkit. Es como pasar de ver los datos con un navegador derivado de Chrome/Chromium, a Firefox, como afirmas acá, pero sin necesidad de cambiar de navegador, sino manteniéndonos dentro de GToolkit.

Annotation 39:

Created at:
Author: offray
Type: Reply
Comment:

El := significa asignación y lo vimos cuando introdujimos las variables y en los tipos de igualdad.

Para el caso de los bloques, quiere decir que a esa variable se le asignará lo que esté en un bloque, como aparece explicado en la subsección "Asignación de bloques", justo después del inicio de la sección de bloques .

Lo anterior se conecta con la segunda parte de tu pregunta y son las variables dentro de un bloque, que, como está explicado allí, están precedidas de : y aparecen antes de la barra. Como conversamos en clase :x seria la variable "x" dentro de bloque que la nombra.

Tags: asignación de variables, bloques

Annotation 40:

Created at:
Author: offray
Type: Reply
Comment: De acuerdo a lo visto en clase, esto ocurre cuando se reemplaza un "endpoint" o punto de adquisición de datos de un API con los valores particulares que dicho endpoint espera para retornar datos particulares. En nuestro caso específico, empezamos a explorar el enpoint que, a partir del enlace al nombre de un Pokemon, entrega sus datos. Luego fuimos abstrayendo esto en bloques para que dicho nombre pudiera ser un valor que se le entrega al bloque, como vemos en este ejemplo particular

Annotation 41:

Created at:
Author: offray
Type: Reply
Comment:

En mensaje no se ejecuta al colocar un punto entre las dos variables, sino que, como vimos en Arreglos dinámicos, el punto separa un elemento del arreglo del otro. En este caso está diciendo que nuestros dos elementos son los valores:; fighter1 y fighter2

Annotation 42:

Created at:
Author: offray
Type: Reply
Comment:

Ver esta respuesta

Annotation 43:

Created at:
Author: offray
Type: Reply
Comment: ¿Cuál error? ¿Has venido ejecutando el código previo que define los elementos que este bloque usa?

Annotation 44:

Created at:
Author: offray
Type: Reply
Comment: Efectivamente. Gracias. 👍

Annotation 45:

Created at:
Author: offray
Type: Reply
Comment:

No es necesario agregar código nuevo para no tener datos vacios, pero sí es necesario ejecutarlo. La recomendación es ejecutar una fila individualmente, es decir una ronda de combate, para ver que los datos no están nulos y una vez la fila individual funciona, se pueden agregar al data frame.

Sugiero no sólo agregar las imágenes, que sirven para orientar sobre la duda, sino el enlace a la narrativa de datos en el repositorio. De manera que podamos mirar los detalles.

Annotation 46:

Created at:
Author: lgruben2002
Type: Reply
Comment:

Si profe, la verdad fue una mala práctica de copiar y pegar el código, una vez lo transcribí manualmente ya funcionó!

Tags: POO, randomMove

Annotation 47:

Created at:
Author: Thoms19.99
Type: Annotation
Quote:
pokemonExampleLink := [ :name | 'https://pokeapi.co/api/v2/pokemon/', name ]
Comment:

Respecto a este código, cuando lo ejecuté los códigos anteriores donde teníamos el data diccionary aparecían con llaves que antes no tenían. A pesar de que no afecta los códigos posteriores si me gustaría saber el motivo de esto.

Annotation 48:

Created at:
Author: Thoms19.99
Type: Annotation
Quote:
winner := { fighter1 . fighter2 } atRandom
Comment:

Curiosamente con este comando no solo lo estuve utilizando para definir un ganador en un combate. También Para poder sortear quienes serían los peleadores en x ronda.

Annotation 49:

Created at:
Author: Valentina_Penagos_Ariza
Type: Annotation
Quote:
capturar información de los repositorios de código en Fossil para las distintas asignaturas que usaran dicha herramienta
Comment:

Sería bueno seguir desarrollando como capturar información de los repositorios de código podría servirnos para otras asignaturas. Obviando el hecho de su relación en búsqueda de información, es importante resaltar que importancia puede tener esta captura de información en espacios de otras materias que pueden usar esta herramienta. Si bien el ejercicio con PokeAPI nos permite hacer la parte práctica, se identifica el vacío teórico de esta relevancia del ejercicio práctico.

Tags: Captura de Información, Aplicación de las herramientas

Annotation 50:

Created at:
Author: Valentina_Penagos_Ariza
Type: Annotation
Quote:
Este tiene dos partes, que se muestran en la figura anterior: las llaves, ubicadas a la izquierda, y los valores, ubicados a la derecha.
Comment: Esta representación es muy útil si lo queremos adaptar a otros ejercicios. Si bien el reto es, precisamente, como adaptamos este código para una nueva necesidad que surja, me parece interesante como los nombres son las llaves y el link personal de cada repositorio. Lo interpretó como una especie de BUSCARV de excel interesante para analizar a profundidad.
Tags: Relación de herramientas, Interpretación en línea

Annotation 51:

Created at:
Author: Valentina_Penagos_Ariza
Type: Reply
Comment: Igualmente una forma de verificar si ejecutamos correctamente esta operación es cuando dentro del propio GToolkit nos da la opción de visualizar los datos estructurados es su pestaña de resultados 'JSON data', precisamente para no tener que salir de la herramienta para ver los datos estructurados.
Tags: JSON, Datos estructurados, Visualización de datos

Annotation 52:

Created at:
Author: Valentina_Penagos_Ariza
Type: Annotation
Quote:
pokemonDataDictionaries := #('pikachu' 'ditto' 'charizard') collect: [:name | pokemonDataDictionary value: name ]
Comment: Al final esto es justamente lo que intenté hacer en la última clase, tener un listado con los nombres de los Pokemones y un bloque que me permita visualizar la información estructurada de cada uno. No pensé que este sería el resultado de ello, pero me voy satisfecha.
Tags: Retos de programación, Representación de información

Annotation 53:

Created at:
Author: Valentina_Penagos_Ariza
Type: Annotation
Quote:
pokemonDataDictionaries collect: [:item | {item at: 'name' . item at: 'height' } ]
Comment:

Si lo interpreto bien, se supone que lo que le estamos pidiendo es: en bloque tomando la variable 'item' que será cada valor de nuestro arreglo anterior, entrá a cada uno y tre el valor de los metadatos 'name' y 'height'. Así el resultado será un listado del número de valores de nuestro arreglo, con su respectivo nombre y altura.

Lo único que me molesta es que el orden que presenta es justamente como lo pedimos, es decir, los resultados están en el mismo orden que los valores de nuestro arreglo. No sé si haya una forma de volver la información de 'height' en un dato al que luego podamos ponerle una condición de mayor a menor número.

Tags: Representación de información, Interpretación en línea, Interacción computacional, Comparación de información

Annotation 54:

Created at:
Author: ValeVanegas_
Type: Annotation
Quote:
studentRepositories keys atRandom
Comment: Atrandom es el comando que he estado implementando para elegir un Pokémon al azar, y hará parte da la construcción de los round de mis pokemones.

Annotation 55:

Created at:
Author: ValeVanegas_
Type: Annotation
Quote:
Pokemones e información a partir de datos en JSON
Comment:

Ha sido una forma diferente de entender la programación y la cantidad de posibilidades que existen una vez que aprendes a entender la lógica de los lenguajes. Pokémon en este caso es el conjunto de datos con los que estamos trabajando (Criaturas con diferentes poderes).

Annotation 56:

Created at:
Author: ValeVanegas_
Type: Annotation
Quote:
pokemonExampleLink := 'https://pokeapi.co/api/v2/pokemon/pikachu'
Comment: realicé el cambio de Pikachu por ''Snorlax'' y el resultado fue el mismo, únicamente con la edición del Pokémon que indiqué

Annotation 57:

Created at:
Author: ValeVanegas_
Type: Annotation
Quote:
pokemonRawData := pokemonExampleLink asUrl retrieveContents
Comment: ¿Qué pasa cuando ejecutamos esta linea de código? tenemos todos los contenidos de PokemonExampleLink

Annotation 58:

Created at:
Author: ValeVanegas_
Type: Annotation
Quote:
pokemonExampleLink value: 'pikachu'
Comment: Te devuele la URL del pokemon que pongas entre comilas

Annotation 59:

Created at:
Author: ValeVanegas_
Type: Annotation
Quote:
pokemonDataDictionary := [ :name | | dataLink pokemonRawData | dataLink := 'https://pokeapi.co/api/v2/pokemon/', name. pokemonRawData := dataLink asUrl retrieveContents. STONJSON fromString: pokemonRawData ]
Comment: Este código particularmente no me salió, pero con la lógica del mismo realice el cambio para que se hiciera con Snorlax

Annotation 60:

Created at:
Author: ValeVanegas_
Type: Annotation
Quote:
pokemonDataDictionaries := #('pikachu' 'ditto' 'charizard') collect: [:name | pokemonDataDictionary value: name ]
Comment: Funciona para obtener los datos de diferentes pokemones a la vez, y almacenarlos en una variable.

Annotation 61:

Created at:
Author: Valentina_Penagos_Ariza
Type: Annotation
Quote:
fighter1 data
Comment:

Durante la lectura anotada e interactiva de este documento en mi GToolkit, parece que la clase Pokemon no me entiende el 'data'. En lo que he experimentado autónomamente con la herramienta, puedo suponer que es porque el 'data' debe agregarse como newMethods dentro de la clase de Pokemon. Si bien esto no impide el trabajo del proyecto, me parece importante mencionarlo.

Tags: POO, Interacción computacional

Annotation 62:

Created at:
Author: Valentina_Penagos_Ariza
Type: Annotation
Quote:
finalRound := { randomMove value: fighter1 . randomMove value: fighter2 }
Comment:

No entiendo porque cuando intentó ejecutar el siguiente código, que es el siguiente me sale error. Estoy editando el código a algo menos práctico, pero que me permite hacer el ejercicio

Tags: Errores en programación, Interacción computacional

Annotation 63:

Created at:
Author: Valentina_Penagos_Ariza
Type: Annotation
Quote:
pokemonTournament := DataFrame withColumnNames: #(figther1 fighter2 moveFigther1 moveFigther2 winner)
Comment: En pocas palabras, esto lo que hace es dejar el nombre de nuestras columnas hechas para luego llenarlas con la información de las batallas. Prácticamente estamos dejando el nombre de las columnas que luego llenaremos.
Tags: Interpretación en línea, Interacción computacional, Conocimientos sobre la coputación

Annotation 64:

Created at:
Author: ValeVanegas_
Type: Annotation
Quote:
fighter1 := Pokemon new name: 'pikachu'. fighter2 := Pokemon new name: 'ditto'.
Comment: Desde aquí tuve una incidencia debido a la instalación incorrecta de minidocs. Cosa que pude resolver con ayuda de otra persona que tuvo el mismo error en su debido momento

Annotation 65:

Created at:
Author: Valentina_Penagos_Ariza
Type: Annotation
Quote:
pokemonTournament addRow: (roundBetweenFighters value: fighter1 value: fighter2) named: 'round 1'
Comment: Algo importante que aclarar con este código es que, como agrega un row, no se puede ejecutar dos veces, porque el row que volvemos a ejecutar ya existe, lo que nos produce un error.
Tags: Interacción computacional, Conocimientos sobre la coputación, Errores en programación

Annotation 66:

Created at:
Author: Valentina_Penagos_Ariza
Type: Annotation
Quote:
pokemonTournament
Comment: Con este código podemos ver nuestra tabla de le grabamos a nuestra DataFrame (si no estoy mal, por lo menos lo que yo entiendo que estamos haciendo)
Tags: Interacción computacional, Interpretación en línea, Conocimientos sobre la coputación

Annotation 67:

Created at:
Author: ValeVanegas_
Type: Reply
Comment:

En mi caso si genera un error que no he logrado resolver. #data was sent to nil

Annotation 68:

Created at:
Author: Valentina_Penagos_Ariza
Type: Annotation
Quote:
Pokemon atRandom
Comment: Si bien entiendo la utilidad del código, pues nos asegura elegir que las peleas sean elegidas por dos pekemon aleatorios, por el mismo error de 'data' no puedo ejecutar este código, pues no se reconoce 'atRandom', supongo que por la misma razón. De igual manera, como mi código está modificado, haré a mi propia manera una forma de elegir los pokemones aleatorios.
Tags: Interpretación en línea, Conocimientos sobre la coputación