Lectura anotada pharo
Lectura anotada de Pharo
Representando y procesando datos en Pharo
"en el capítulo 1: ¿todo en Pharo es objeto? ¿hasta los números? ¿y los errores existenciales también son objetos o qué?"
"--- Números ---" 3 + 4. "en el capítulo 1: esto da 7. Ok, sí, pero... ¿por qué parece que 3 le está mandando una carta al 4? ¿esto es OOP en esteroides?"
10 - 2. "en el capítulo 1: resta normal, cero emoción." 5 * 2. "en el capítulo 1: esto da 10. matemáticas básicas funcionando como siempre." 20 / 4. "en el capítulo 1: da 5.0. ¿por qué no 5 a secas? Ah, porque ya están metiendo floats sin permiso..."
"--- Strings ---" 'Hola mundo'. "en el capítulo 2: ¿comillas simples para los strings? raro, pero bueno."
'Hola' , ' mundo'. "en el capítulo 2: ¿coma para concatenar? Qué poético."
'Pharo' class. "en el capítulo 2: esto devuelve 'String'. obvio, pero igual necesitaba comprobarlo porque uno nunca sabe..."
"--- Colecciones ---"
(1 2 3). "en el capítulo 3: esto es un array fijo. ¿pa’ qué me sirve si no lo puedo cambiar?"
Array with: 1 with: 2 with: 3. "en el capítulo 3: ahora sí, esto es más usable. gracias."
(1 2 3) at: 2. "en el capítulo 3: esto da 2. Pero... ¿por qué los índices empiezan en 1? ¿¡quién decidió esto!?"
"--- Diccionario ---" dict := Dictionary new. "en el capítulo 4: ok, diccionario creado. listo pa' chismear."
dict at: 'nombre' put: 'Thomas'. "en el capítulo 4: agregué 'nombre'. soy yo." dict at: 'edad' put: 24. "y obvio, la edad también. bastante autorreferencial este ejercicio."
dict at: 'nombre'. "en el capítulo 4: esto devuelve 'Thomas'. si no, algo explotó."
"--- Clases ---" "en el capítulo 5: hora de sentirme poderoso. vamos a crear una clase llamada Persona."
Object subclass: #Persona instanceVariableNames: 'nombre edad'. "tiene lo básico para existir: nombre y edad. con eso me basta."
p := Persona new. "en el capítulo 5: creé una persona. básicamente Dios."
p instVarNamed: 'nombre' put: 'Thomas'. "le metí el nombre. igualito a mí." p instVarNamed: 'edad' put: 24. "la edad también. seguimos clonándome."
p inspect. "en el capítulo 5: el inspector me deja ver por dentro a mi creación. medio creepy, medio cool."