Activa las notificaciones para estar al tanto de lo más nuevo en tecnología.

Nuevo reto de la Programación Lúdica: Reglas ortográficas y MsWord

Mucha gente usa Office, una de las suites más populares de Microsoft. Algunos años atrás había una serie de competidores en este ramo pero algo...

msword00Mucha gente usa Office, una de las suites más populares de Microsoft. Algunos años atrás había una serie de competidores en este ramo pero algo pasó y Lotus 1-2-3, por ejemplo, dejó de ser tan popular y la gente adoptó a Excel. Lo mismo parece haber pasado con los procesadores de palabras: estaban WordStar y WordPerfect, entre otros, pero de nuevo, algo ocurrió y la gente empezó a migrar a Word de Microsoft. Finalmente la suite del gigante de las ventanas terminó por imponerse y es hoy por hoy, el conjunto de programas más usados en el mundo. Sin duda es uno de los programas que más dinero le han dejado a Microsoft.

Word tiene un buen número de opciones y funciones, las cuales usamos muchas veces sin saberlo, por ejemplo, el corrector ortográfico de dicho programa. Éste nos pinta subrayando en colores, como rojo, cuando una palabra no la reconoce. Esto nos puede dar una pauta a los que usamos el programa, mostrando qué algo quizás está mal escrito. No cabe duda que es una buena ayuda. Word trabaja con un gran diccionario (inaccesible desde la programación, es decir, no podemos sacar la lista de palabras que contiene dicho archivo, sea cual sea éste), y hace la tarea bastante bien, pero como muchos programas, apelan a la fuerza bruta, es decir, a tratar de identificar un error ortográfico analizando una inmensa cantidad de palabras. Es una manera de hacer las cosas, pero en cierto sentido, no saca provecho del español y sus reglas.

modif2El español contiene unas doscientas reglas (quizás más), sobre el uso de las letras en las palabras. Por ejemplo, “todas las palabras que contienen ‘nv’ se escriben con v, nunca con ‘b'”. Así,’enbiar’ está mal escrito. Otra regla es que “todas las palabras que empiezan con ‘bib’ se escriben con b labial”, por ejemplo ‘biberón'”. La excepción de esto es ‘vivir’ (con sus conjugaciones) y ‘víbora’, por ejemplo. Es decir, las reglas ortográficas sobre el uso de las letras permite saber cómo deben ser escritas sin siquiera tener la necesidad de usar un diccionario.

Microsoft usa el enfoque de la fuerza bruta que sin duda funciona y además, lo hace muy rápido. Pero aquí el enfoque, de usar reglas, no solamente nos puede permitir usarlas para poder escribir sin errores ortográficos, sino para además, aprender dichas reglas. Y ésa es la tarea de este reto: “Hágase un programa que interactúe con Word, tomando palabra por palabra y revisándolo contra las reglas ortográficas existentes, indicando en una ventana si la palabra se escribió mal (de acuerdo a las reglas), pudiéndola corregir directamente en el documento de Word mismo de forma inmediata”.

Dicho en otras palabras, hay que usar un protocolo para comunicar el programa Word con nuestro programa. Para quienes nunca han oído hablar de cómo hacer esto, revisen lo que puede hacer OLE (Object Linking an Embedded), por ustedes. Por otra parte, las reglas ortográficas se las puedo dar yo (escríbanme a mi correo [email protected]), para que tengan una descripción de las mismas (sacadas del diccionario de reglas ortográficas de Laurousse).

¿El premio? Una taza con el logotipo de la Morsa y Microsoft, a la mejor solución. Si el ganador vive en el DF, se le entregará directamente el premio. Si vive en provincia, se le mandará hasta su domicilio. Microsoft está apoyando esta iniciativa de la Programación Lúdica y los premios están patrocinados por dicha empresa.

verifica

Evidentemente, quien gane será anunciado en unocero y hasta tendrá sus quince minutos de fama. Sus programas me los pueden mandar a [email protected] y pueden escribirse en cualquier lenguaje. Es importante señalar que hay que mandar el código fuente, el ejecutable (si procede) y el archivo de resultados pedido. Igualmente, se pide una explicación breve de la estrategia usada. Código documentado tiene más posibilidades de ser considerado el ganador.

Cabe señalar que este concurso busca simplemente alentar el trabajo de la programación y mostrar que puede ser lúdica. Es un concurso de buena fe. Si hay, por ejemplo, dos o más respuestas satisfactorias, ganará quien la haya mandado primero. El ganador cede su código fuente a la comunidad. Es decir, se promueve el código abierto.

Comentarios