uno imagina irracionales…

Uno imagina cuando encuentra por primera vez números a los que llama irracionales que no lo son en el sentido que ha imaginado, sino en el hecho de que no son razones, razones entre números enteros, pero tampoco uno cae en la cuenta de que a las divisiones les llamamos razones, así, sin ton ni son o todo lo contrario, quizá no hay nada más razonable que dividir las cosas, repartirlas, incluso los números enteros para que dejen de ser tan pretenciosamente enteros y cuando uno se encuentra números que no son el fruto de una repartición siente cierta aversión hacia ellos, los repudia, los niega, los ningunea, uno intenta convencerse de que son aproximaciones de algo más «razonable», aunque uno llegue a saber que no es así por reducción al absurdo, que parece una reducción al Pedro Ximénez, pero no tiene nada que ver con ella, por muy sabrosa que pueda resultar en ocasiones.

Uno imagina cuando encuentra por primera vez números a los que llama irracionales que no son todos iguales y que el loco paralelismo prestado por el léxico filosófico sirve para clasificarlos en trascendentes, construibles, algebraicos, normales… Sí, también uno descubre que hay números normales y lo que a uno le vuelve aún más loco (que no irracional) es que todo número normal debe ser necesariamente irracional, así, como si nada, como si eso de repente explicase tantas cosas que uno nunca ha comprendido en la vida que parece una epifanía.

Uno imagina cuando encuentra por primera vez números a los que llama irracionales que no son el final de todos los números posibles y que ha de haber algo más allá, así que se emociona incluso cuando a uno le hablan de los números imaginarios que hacen realidad el hecho de que los números reales no sean tan completos como creían ser, mientras sí lo serán los números complejos, así: completos sin complejos.

Uno imagina (pues no puede parar de imaginar) cuando encuentra por primera vez números a los que llama irracionales que no son más que la puerta de entrada a la matemática de la poesía, la que descubrirá un número poético que incluirá sus números imaginarios, sus irracionales, sus enteros y sus fracciones, sus negatividades, sus nulidades, la nada, nada infinita, nada lemniscática, nada redonda y pueril, nada feliz en la que uno se pierde sin dilación en una ecuación diferencial diferente a lo esperable, una nada inestimable, incalculable, una nada que forma operaciones como versos sueltos en un cosmos ingrávido.

Uno imagina cuando encuentra por primera vez números a los que llama irracionales que el amor debe de estar escondido en el número π o que la i no es la e, pero ambas comparten la letra como signo último al que referirse, en el que habitar, en el que albergarse hasta que paren de llover decimales si es que alguna vez escampa; uno va más allá del signo reconocible objetivamente para abrazar el grafo, el signo asémico, la línea más o menos continua que un material traza sobre otro rompiendo y rompiéndose a nivel atómico, destrozándose para dar vida a la imagen: imagen que imagina uno cuando encuentra por primera vez números a los que llama irracionales que no lo son en el sentido que ha imaginado.

CD o DVD

Hoy estoy perdiendo el tiempo en busca de fuentes para obtener el número de personas sobre la faz de la tierra y ver la manera de convertir esa cifra en un número de bits que almacenar en un soporte como puede ser un CD o un DVD.

El objetivo sería escribir tantos bits como personas hay en el planeta (puedo caer en el «binarismo» de asignar 0 a un sexo y 1 al otro, o ignorarlo) en un CD e ir generando CDs con las estimaciones de Personas Vivas sobre la Tierra cada cierto periodo de tiempo.

He encontrado una fuente importante de datos en la ONU, como si fuese un organismo útil, pero no encuentro la manera de acceder a esos datos desde línea de comandos, lo que me encantaría.

Tampoco sé la manera de escribir un archivo en linux directamente en código binario, escribiendo bits y no bytes. Tendré que repasar la rama dura de la programación en C o en ensamblador.

Creo que lo que intento es tan ridículo como habitualmente hago, pero no por ello quiero dejar de hacerlo.

Un número son palabras

Qué mejor demostración de que un número son palabras que un traductor de números a palabras, así, tan absurdo como este que intenta transformar los números (dígitos) en palabras, especialmente orientado a crear un libro con las palabras de unos cuantos (indeterminados) decimales de números irracionales, pues hay pocas cosas más irracionales que este proyecto absurdo.

/********************************************************
    Proyecto tres14 (escrito en C)
    realizado por Giusseppe Domínguez
    a partir del día 8 de diciembre de 2019
********************************************************/

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
#include <ctype.h>
#define OK 1
#define KO 0
#define MAX_LONG 10 // Longitud máxima de nombre de dígito

int firma();
int digitea(char caracter);
int nombranumero(int idioma, char caracter, char *nombre);
int instrucciones(char *comando);

int main(int argc, char *argv[])
{
  int i, idioma=0;
  char nombrenumero[MAX_LONG], caracter;
  FILE *fp;
 
  if ((argc < 2) || (argc > 3)) { instrucciones(argv[0]); } // Faltan argumentos
  else if (argc == 2) { // Número desde línea de comando
    for (i=0; i<strlen(argv[1]); i++) {
      caracter=argv[1][i];
      if(! nombranumero(idioma, caracter, nombrenumero)) { instrucciones(argv[0]); return KO; }
      puts(nombrenumero);
    }
  }
  else if (argc == 3) { // Número en fichero argv[2]
    if ( (! isdigit(argv[1][0])) || ((idioma = digitea(argv[1][0])) > 1) ) {
      printf("[ERROR] No conocemos el idioma: %s\n", argv[1]);
      instrucciones(argv[0]);
    } 
    else if ((fp = fopen(argv[2],"r")) == NULL) {
      printf("[ERROR] intentando abrir el archivo %s\n", argv[2]);
      instrucciones(argv[0]);
    }
    else {
      while ((caracter = fgetc(fp)) != EOF) {
        if (caracter != '\n') { // Ignoramos los saltos de línea
          if (! nombranumero(idioma, caracter, nombrenumero)) { instrucciones(argv[0]); return KO; }
          printf("%s ", nombrenumero);
        }
      }
    }
  }
  printf("\n");
  firma();
  return OK;
}


/******************************************
  La función instrucciones hace lo que su nombre
  indica: Imprime las instrucciones del programa.
******************************************/
int instrucciones(char *comando) {
    printf("\nUtilización: %s [número_positivo] [idioma fichero]\n\n", comando);
    puts("Si introducimos un nombre de fichero, el primer parámetro indica el idioma");
    puts("Idioma puede ser:");
    puts("\t0 - Español");
    puts("\t1 - Inglés");
}

/******************************************
  La función nombranumero nombra el número
  contenido en el caracter (si procede, claro)
  y devuelve error si no lo consigue.
  idioma = 0 (español)
           1 (inglés)
******************************************/
int nombranumero(int idioma, char caracter, char *nombre) {
  int digito;
  static int nomascomas=0; // Para no encontrar más de una coma en un argumento
  // char *numeros[] = { "cero", "uno", "dos", "tres", "cuatro", "cinco", "seis", "siete", "ocho", "nueve" };
  char *numeros[2][MAX_LONG] = {
    { "cero", "uno", "dos", "tres", "cuatro", "cinco", "seis", "siete", "ocho", "nueve" },
    { "zero", "one", "two", "three", "for", "five", "six", "seven", "eigth", "nine" }
  };
  char *coma[] = { "coma", "point" };

  if ((caracter == ',') || (caracter == '.')) {
    strcpy(nombre, coma[idioma]);
    if (++nomascomas > 1) {
      printf("Un número no puede tener más de una coma\n");
      return KO;
    }
    return OK;
  }
  else if (isdigit(caracter)) {
    digito = digitea(caracter);
    strcpy(nombre, numeros[idioma][digito]);
    return OK;
  }
  printf("[ERROR] |%c| No es un caracter válido en un número positivo\n", caracter);
  strcpy(nombre, "ERROR");
  return KO;
}
/******************************************
  La función digitea devuelve un número entero
  a partir del caracter (char) proporcionado
******************************************/
int digitea(char caracter)
{
  int digito;
  digito = (int) (caracter + '0');
  digito -= 96;
  return digito;
}


int firma()
{
  time_t tiempo = time(0);
  struct tm *tiempolocal = localtime(&tiempo);
  char txt_firma[128];
  strftime(txt_firma,128,"\nGiusseppe Domínguez, a las %H:%M. M-%Y%m%d\n",tiempolocal);
  printf("%s\n",txt_firma);
  return OK;
}

Diccionario RAE Completo

He decidido dar por concluida la ordenación del Diccionario de la RAE, que me descargué con el programa buscaenrae.sh y el programa descargarae.sh hecho para la ocasión y que leía el archivo con la lista de palabras (al que impropiamente denominaba diccionario), para descargar, una a una, las páginas correspondientes.

Todo partió del trabajo que realicé para el proyecto del Diccionario Personal de Isidoro Valcárcel Medina, en 2015.

Ahí nos encontramos con la negativa de la RAE a ceder el diccionario en modo digital, así que tuve que teclear las entradas del mismo a lo largo de más de 3 meses. Finalmente, acabé teniendo una lista de 90940 palabras, algunas de las cuales eran acepciones repetidas. Si quitábamos las palabras que tenían más de una acepción y que estaban en el archivo etiquetadas con un número 1,2,… según procediera, nos quedaban 88296 palabras (debería llamarlas «entradas»).

Por supuesto, estaban plagadas de errores:

  1. En primer lugar los propios de tecleo.
  2. En segundo lugar (oh, my god!) tenía incluidas en mi colección las palabras que Isidoro había decidido incluir en su diccionario personal independientemente de las que hubiera en el de la RAE.
  3. En tercer lugar (y esto resultó ser lo peor), muchas palabras han «desaparecido», pues la entrada no corresponde a la palabra… por ejemplo, la palabra «poeta, tisa», no está en el diccionario sino en «poetisa», así que la palabra poeta no se encuentra en la RAE como tal.

Así que el programa contemplaba la necesidad de decirme si tal o cual palabra no estaba en el diccionario de la RAE (en la versión online)

Actualización 2020
La Real Academia Española (RAE) y la Asociación de Academias de la Lengua Española (ASALE) han emprendido ya las tareas de redacción de la nueva edición de su Diccionario de la lengua española (DLE), que tendrá las características fijadas en la planta aprobada por todas las Academias de ASALE. Con el objetivo de que el desarrollo de esa nueva edición, forzosamente lento, no retrase la inclusión de nuevas palabras y acepciones ni la modificación de las ya incorporadas que necesiten enmienda, se ha optado por publicar estas actualizaciones anualmente.

La que ahora se pone a disposición de todas las personas interesadas recoge las modificaciones aprobadas por todas las Academias en 2020 y tendrá la consideración de versión electrónica 23.4.

Ya de paso, como podía hacerlo, me informé de si la palabra que estaba consultando era o no conjugada, lo que significaba que era un verbo. Un bonito plus que no esperaba.

Con la lista de errores generada, fui revisándolas palabra a palabra, las 1245 entradas no encontradas, entre las que estaban, ni más ni menos: poeta.

Así que a lo largo de los últimos meses del 2020 fui dejándome los ojos para ir revisando esos errores y fabricando una lista de palabras que se corresponda lo más posible con la «oficial» de la RAE.

Ha quedado una lista de 88024 «entradas» que se corresponden con 90452 palabras (ya teniendo en cuenta que algunas entradas o vocablos tienen varias palabras (a veces me confundo y denomino a eso acepciones).

Una vez corregida y revisada, aunque asumo aún un error considerable que no puedo prever, tengo la posibilidad de descargar el diccionario completo palabra a palabra con el programa buscaenrae.sh

 

#!/bin/bash

### FUNCIONES ÚTILES PARA EL PROGRAMA
# uso() Instrucciones del programa y salida en caso de error.
uso () {
  echo "Uso: $0 salida palabra"
  echo -e "\tsalida es un valor númerico que identifica:"
    echo -e "\t[0] para generar un archivo HTML con la respuesta"
    echo -e "\t[1] para generar un archivo TXT  con la respuesta"
    echo -e "\t[2] para generar una línea  TXT  con la respuesta"
  exit
}
f_verbos="00000_VERBOS.txt"
f_errores="00000_ERRORES.txt"

# CONTROL DE ENTRADA DE VARIABLES y ASIGNACIÓN
if [ $# -lt 2 ]
then
  # Reportar uso inapropiado
  uso
else
  salida=$1
  if [ $# -eq 2 ]; then
    palabra="$2"
  elif [ $# -eq 3 ]; then 
    palabra="$2 $3"
  elif [ $# -eq 4 ]; then 
    palabra="$2 $3 $4"
  elif [ $# -eq 5 ]; then 
    palabra="$2 $3 $4 $5"
  fi
  # echo "Palabra es #$palabra#"
fi

# CONSULTA DEL SERVIDOR de la RAE simulando ser uno de los diversos navegadores posibles
navegador=(
  "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:15.0) Gecko/20100101 Firefox/15.0.1"
  "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:77.0) Gecko/20100101 Firefox/77.0"
  "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:77.0) Gecko/20190101 Firefox/77.0"
  "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A"
)
rnd=`echo $(($RANDOM%${#navegador[@]}))` # Elegimos un navegador al azar
# Hacemos la petición a la web de la RAE
curl -s --user-agent "${navegador[$rnd]}" https://dle.rae.es/"$palabra" > ./"$palabra.html"

# PROCESAMOS EL ARCHIVO OBTENIDO (Cortamos, retiramos lo innecesario, etc)
# Si se trata de un verbo, quitar las conjugaciones
id_conjugacion="<div id='conjugacion'>"
esunverbo=`grep -c "$id_conjugacion" ./"$palabra.html"`
if [ $esunverbo -gt 0 ]
then
  echo "$palabra es un verbo" >> $f_verbos
  # ELIMINAMOS la(s) CONJUGACIÓN(ES)
  sed -i "/${id_conjugacion}/d" ./"$palabra.html"
fi

# Si tiene más de una acepción (Calcular cuántas después de saber si es un verbo)
id_acepcion="<article id="
id_acepcion_fin="<\/article>"
num_acepciones=`grep -c "$id_acepcion" ./"$palabra.html"`
# Si no tiene acepciones, la palabra no existe. No continuamos.
if [ $num_acepciones -eq 0 ]
then
  echo "$palabra no se ha encontrado en la RAE" >> $f_errores
  rm "./$palabra.html"
  exit
fi

# PARTIR en $num_acepciones EL FICHERO $palabra.html"
# acepciones y acepciones_fin son 2 arrays de líneas PRECISO CONVERTIRLOS a cortes[]
acepciones=`grep -n "$id_acepcion" ./"$palabra.html"|awk -F":" '{print $1}'|sed ':a;N;$!ba;s/\n/ /g'`
c=0
for i in $acepciones
do
  let cortes[$c]=$(($i))
  let c=$(($c+1))
done
acepciones_fin=`grep -n "$id_acepcion_fin" ./"$palabra.html"|awk -F":" '{print $1}'|sed ':a;N;$!ba;s/\n/ /g'`
c=0
for i in $acepciones_fin
do
  let cortes_fin[$c]=$(($i))
  let c=$(($c+1))
done

# GENERA FICHEROS palabra.X.html por cada ACEPCIÓN
for (( i=0; i<$num_acepciones; i++ ))
do
  # echo "El comienzo del corte está en ${cortes[$((i))]}"
  # echo "El fin del corte está en ${cortes_fin[$((i))]}"
  sed "${cortes[$((i))]},${cortes_fin[$((i))]} !d" "./$palabra.html" > "./$palabra.$i.html"
  # Distintas salidas del programa, en función de la variable "salida"
  if [ $salida -gt 0 ]   # Salida a modo TXT
  then
    w3m "./$palabra.$i.html" > "./$palabra.$i.txt"
    if [ $salida -gt 1 ] # En una sóla línea
    then
      sed ':a;N;$!ba;s/\n/ /g' "./$palabra.$i.txt"|sed 's/  / /g' > "./$palabra.$i.1linea"
    fi
  fi
done

# BORRAR indica si dejar o no los archivos que no se deseen como salida 
BORRAR=1
if [[ $BORRAR -eq 1 ]] && [[ $salida -gt 0 ]]
then
  rm "./$palabra."*html
  if [ $salida -eq 2 ]
  then
    rm "./$palabra."*txt
  fi
fi
# SALIDA FORZADA
exit

 

Este programa era invocado con el siguiente miniprogramita que, leyendo de la lista de palabras corregidas que, impropiamente, denominé diccionariosinrepes.txt, obtiene las diversas, impropiamente denominadas, acepciones y las separa en 90452 archivos de una única línea.

#!/bin/bash

### FUNCIONES ÚTILES PARA EL PROGRAMA
# uso() Instrucciones del programa y salida en caso de error.
uso () {
  echo "Uso: $0 [diccionario]"
  exit
}

# CONTROL DE ENTRADA DE VARIABLES y ASIGNACIÓN
if [ $# -gt 1 ]
then
  # Reportar uso inapropiado
  uso
elif [ $# -eq 1 ]
then
  diccionario=$1
else
  diccionario=diccionariosinrepes.txt
fi

while IFS= read -r line
do
  buscaenrae.sh 2 $line
done < $diccionario

Descargadas y archivadas en una estructura de carpetas obvia:

dict -> LETRA

Se pueden reordenar o «recompilar» en una LETRA, con sus definiciones incluidas, sin incluir, etc…

Lo hago usando otro script simple:

#!/bin/bash

# El diccionario completo está por acepciones en las carpetas
# dict/LETRA
# Cada acepción (en realidad entrada en el diccionario) tiene
# un archivo denominado PALABRA.N.1linea conteniendo su definición.
# (donde N es el número de acepción contando desde cero)

letras="A B C D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z"
for letra in $letras
do
  ls dict/$letra > dictporletra/$letra.archivos.txt
  awk -F"." '{print $1}' dictporletra/$letra.archivos.txt > dictporletra/$letra.acepciones.txt
  ls dict/$letra/*.0.1linea |awk -F"/" '{print $3}'|awk -F"." '{print $1}' > dictporletra/$letra.sinrepes.txt
  cat dict/$letra/* > dictporletra/$letra.definiciones.txt
done

cat dictporletra/*.archivos.txt > DICCIONARIO_TOTAL.archivos.txt
cat dictporletra/*.acepciones.txt > DICCIONARIO_TOTAL.acepciones.txt
cat dictporletra/*.sinrepes.txt > DICCIONARIO_TOTAL.sinrepes.txt
cat dictporletra/*.definiciones.txt > DICCIONARIO_TOTAL.definiciones.txt

Pero queda por resolver un problema que me tiene algo martirizado desde hace meses y es que la ordenación es muy compleja realizarla, pues muchas entradas en el diccionario son dobles, como «ad hoc», pero las definiciones descargadas incluyen líneas que son del tipo: «i Escrito con…» y desde el punto de vista del uso del comando sort, es más o menos lo mismo que decir que si quiero ordenar las primeras como «adhoc», la «iEscrito» se sale de su lugar.

He ordenado muchas manualmente sobre esta compilación, pero es un trabajo absolutamente aberrante y seguro que se puede hacer mejor, así que de momento he decidido dejar de trabajar en esto y dar por cerrado este proyecto que, en realidad, es la puerta de entrada a muchos otros.

Espero que el orden no sea algo tan terrible en esos otros proyectos venideros.

Dejo a disposición pública el Diccionario Completo que he generado de esta manera, con la estructura de carpetas generada, así como los programas utilizados para su procesamiento.

RAE-COMPLETO.tar

Exposiciones temporales en mi estudio

Carmen me propuso la brillante idea de exponer obra propia temporalmente en mi sala. Es algo que había pensado en ocasiones, lo de tener más obra en las paredes de mi estudio para que tenga algo de visibilidad y genere curiosidad, pero he de reconocer que me resistía a clavar en las inmaculadas paredes del lugar. Aún le tengo mucho respeto al espacio y además me reconozco tremendamente torpe.

Elegí esta pared para colocar 4 paneles de cartón pluma negros de 50x70cm, de un grosor de 5mm que me sobraron (aún me quedan otros 6) de la Exposición en Dados Negros que todavía no ha podido tener lugar, dada la situación, desde la primavera del 2020, y ha pasado un año.

Sólo tenía clavos «reciclados» de ocasiones en las que he ido recogiéndolos de muebles o trastos que tenía guardados en un viejo bote de conservas dentro de una caja de galletas. Algo de miedo por si no se clavaban bien en la pared y se descascarillaba o qué sé yo, amén de la posibilidad de contraer el tétanos o similar si me pinchaba con esos utensilios parcialmente oxidados, como yo.

A 135 centímetros del suelo clavé dos clavos a una distancia de unos dos metros, recordando el tema de los dos metros de distancia para evitar contagios pero también la serie de dos metros bajo tierra (6 feet under). Uní ambos clavos con un hilo de cáñamo grueso que me sirviera de guía. Ha sido una brillante idea, pues a ojo habría sido un desastre.

Me lavé las manos con jabón, también con gel hidroalcohólico, por ver si se resecaban y dejaba de sudar. Bajé la temperatura, me quité el forro polar, me remangué para que las mangas no me estorbaran.

Alineados por abajo con el cáñamo guía, fui clavando los paneles de uno en uno comenzando por la derecha, el más próximo a la ventana, que era el que menos problemas me daría… y el primer clavo ya se me torció.

Me había asegurado de que la distancia al borde de la pared fuese de 5 centímetros tanto por arriba como por abajo de la plancha, pero entonces me di cuenta de que, no sé cómo ni por qué, había dejado lejos el martillo que había cogido prestado a mis compañeros de Costanilla, así que hube de dejar la plancha de nuevo sobre la mesa para volver a repetir toda la operación con el martillo en un bolsillo y las manos sudorosas otra vez.

Después de casi una hora, ha quedado muy bonito y me da pena ir a «ensuciar» esa monocromía con lo que sea que ponga. Hay algo mágico en el negro mate que me fascina.

Quitar los clavos que hicieron de guía no ha sido dificilísimo, pero tampoco trivial y en el de la izquierda, que es el primero que puse, ha quedado un pequeño boquete en la pared que quizá tendré que reparar, aunque no sea muy visible.

¡No sé ni clavar un clavo!

Este primer clavo que se me resistió quedó torcido por arte de magia. Y no sería el último. Pero la verdad es que seguro que si lo quito y pongo otro nuevo no quedará mucho mejor, porque el roto sobre el foam ya está hecho.

Lo que me molesta sin que sea algo que yo pueda atribuir a mi torpeza es la imperfección de lo analógico, el hecho, por ejemplo, de que las planchas iguales de 50x70cm no son exactamente iguales, es decir, tienen diferencias de un par de milímetros, lo que no es más que un error del 0,29%, aproximadamente, pero esas cosas me inquietan… imagino un mundo en el que las paralelas no se corten más que en el infinito y me doy cuenta de que Euclides no aplica, ni tan siquiera Arquímedes.

Las paredes no son completamente planas (¡oh, qué sorpresa!), ni las planchas tampoco, así que en una extensión de 70cm, se han producido arqueamientos que hacen que se aprecien casi a simple vista las separaciones entre las mismas. Estuve incluso mirando la posibilidad de comprar para la próxima ocasión una plancha más grande de un tamaño de 100x200cm directamente y ahorrarme tanta medición. Pero no quería despreciar el material que ya tenía adquirido y que no sé si alguna vez volveré a utilizar.

Ahora toca «vestir» el tablón negro con esas exposiciones más o menos temporales que ir colocando con chinchetas sobre el mismo para no taladrar la pared con infinitos pequeños agujeritos.

¿qué ha cambiado y qué ha permanecido inalterable?

En uno de los grupos de los Talleres de Poesía y Escritura Creativa de la Asociación Cultural Clave 53 que defiendo desde hace 2 décadas, han lanzado un formulario del que me he arrogado la siguiente pregunta para contestarla de la mejor manera que he podido:

¿De nuevo, el grupo poético dirigido por Giusseppe Domínguez publicáis un ramillete de poemas. Desde la última entrega, ¿qué ha cambiado y qué ha permanecido inalterable?

A pesar de la pandemia, la poesía resiste, a pesar de las crispaciones, la poesía resiste, a pesar de las penurias económicas, la poesía resiste… y nos ayuda a resistir.

Nos encontramos con más intensidad, aunque con menos proximidad, nos encontramos en la palabra, aunque no en el aliento, nos encontramos con la lujuria típica de la creación poética, como siempre, pero sin las mismas posibilidades de consumación.

Nos permite sentir cierta inalterabilidad, cierta normalidad, en mitad de un mar de incertidumbre, nos permite sentir cierta incertidumbre y aprehenderla desde la creación, desde la recreación, desde un recreo semanal que nos libera de la dureza de la cotidianeidad.

Es una fantasía. Es una realidad. Nada ha cambiado. Todo ha cambiado.

Seguimos escribiendo y confiando en que la poesía nos enriquezca, sabiendo que no es la finalidad de la poesía, que es libre y rica per sé.

Los libros no se pueden presentar físicamente y sin embargo llegan a todos los rincones, colándose subrepticiamente por las grietas del muro a derribar: amapolas que han crecido en las circunstancias más hostiles posibles. Pero así es la poesía: resistente, resiliente, si se prefiere, superviviente, sobreviviente, pues aumenta la vida, la realidad, en una sobrerrealidad (surrealista o no), una realidad ampliada, una vida expandida, un espasmo del espacio-tiempo que habitar infinitamente (sin fin) hasta el fin.

Nos encontramos toda lectura con ecos de tristeza, nostalgias, pérdidas, pero nuestra escritura brilla con optimismo, con esperanzas, con afán de diversión, no por escapismo, sino por revolución: no hay nada más revolucionario que la lucha a la contra, batalla silenciosa y perdurable, que lleva a cabo incontables microacciones que modifican el entorno, que aportan lo que creemos necesario a nuestro alrededor, que construyen lo que queremos que sea un futuro (con ese arma cargada) e incluso perfilan un presente diferente al programado en las cadenas de televisión, en la prensa, en la simpleza del click.

Nada ha cambiado. Todo ha cambiado.

Seguimos escribiendo de cara a un futuro que se construye a nuestro paso, haciendo camino, que diría el ínclito poeta castellano que vivió peores épocas que la nuestra.

Seguimos inmersos en un presente siempre poco amigo de la lírica y, sin embargo, agradecido a su existencia.

Nada ha cambiado. Todo ha cambiado.

Nos vemos tras pantallas para escribir poesía, hablar de poesía, leer poesía, vivir poesía, ser poesía y, en un futuro, porque habrá futuro, igual que habrá poesía, publicar poesía, otro ramillete de poemas con los que perfumar el diverso universo.

qrqrqrqr de Carmen de la Rosa

Carmen de la Rosa

Entre los zapatos de cristal,
rosas de hielo
se me ha congelado el alma, cristalina
de azul fuego

Llegó anunciada de antaño y estaño vs. deambulando
por cúmulos de arena y brisa de seda
recia
crujiendo cobarde, de la rectitud al desplome y entre versos de longevas dinastías se alzó, como una sirena que atisba un barco desde su océano infinito.

Cuan si fuese poetisa, diosa del infinito
emergió

Y mientras la tinta,
negra,
de punta a punta
y gota a gota, se clavaba en edificios de mármol,
las palabras se deshacían.
La sal en el agua
y en la tierra sucumbieron.
La luz de la manta que me cobijaba se llenó de langostas
SÍ!
SÍ!
SÍ!

Y dándome cuenta las notas, la música, las campanas y el latido se hicieron una en el silencio.

Recibido desde su página personal el día 15 de enero de 2020, tras terminar la edición online del libro qrqrqrqr. Quizá aún dé tiempo de incluirla en la versión en papel.

qrqrqrqr

Libro de códigos QR y poemas escritos y enviados desde una dirección URL generada para la ocasión por 33 diferentes poetas.

En las ocasiones donde el o la poeta no hicieron llegar sus textos, se ha optado por dejar la referencia a la página web en cuestión por si alguien quiere tomar el relevo y enviar algún poema en su nombre de cara al futuro.

Como todo proyecto de arte postal, es una botella lanzada al océano que, en más ocasiones de las esperadas, regresa con provisiones para aguantar la vida.

Giusseppe Domínguez les propuso a 33 personas participar en este libro enviándoles por correo postal un código QR impreso sobre hojas de una edición de Las Flores del Mal, de Baudelaire, que redireccionaba a una página que contenía un formulario personalizado así como un código QR con el nombre de la persona invitada a formar parte del proyecto.

El libro contiene los QR personalizados para cada poeta, así como los poemas de aquellas personas que cumplimentaron sus formularios poéticos con un poema.

Marujo o Maruja

Sigo repasando los errores que cometí durante la transcripción de las palabras del diccionario, lo que ha de hacerse error a error a lo largo de las más de 1000 palabras que no fueron detectadas por el programa que hice para descargar de la web de la RAE las definiciones.

Muchas de ellas simplemente no es que sean errores, sino cambios en el criterio de archivo online, así, por ejemplo, «LOS» ahora es «LAS» y no la encuentra (mi programita), pero está en el diccionario y no es ningún error.

Tampoco lo era maruja que hasta la XXIII edición no contemplaba el masculino y que, sin embargo, en esta XXIV edición (que es contra la que estoy revisando esa lista de palabras que yo tecleé a partir del diccionario en papel conteniendo la vigésimo tercera) aparece bajo «marujo«, aunque la definición en poco o nada ha cambiado y sigue siendo una de esas palabras que demuestran que el machismo está impregnado en lo más hondo que tenemos, que es el lenguaje:

marujo, ja Hipocorístico del n. p. María.

1. f. despect. coloq. Esp. Mujer que se dedica solo a las tareas domésticas y a la que suele asociarse a ciertos tópicos como el chismorreo, la dependencia excesiva de la televisión, etc. U. t. c. adj.

2. m. irón. coloq. Esp. Hombre que actúa como una maruja (? mujer que se dedica solo a las tareas del hogar). U. t. c. adj.

3. m. y f. despect. coloq. Esp. Persona chismosa. U. m. c. adj.

4. adj. despect. coloq. Esp. Propio o característico de las marujas o de los marujos.

No hay por dónde arreglar esto en el diccionario y que hayan cambiado de «maruja» a «marujo» la entrada correspondiente no es algo que considere ni mínimamente inclusivo.

Otras palabras en esta pequeña aventura de definiciones poco simétricas desde el punto de vista del género son:

manijero. Tb. manigero.

Del fr. ant. maisnagier.

1. m. Capataz de una cuadrilla de trabajadores del campo.

2. m. Hombre encargado de contratar obreros para ciertas faenas del campo.

De esto, obviamente, no se encarga una mujer, así que no es necesaria manijera.

O la poco usada:

lembario. De lembo.

1. m. Soldado que combatía a bordo de los bajeles.

No existían ni podían existir lembarias, parece ser.

Esto no es una broma