Feb 18

Misc

Tag: admin @ 6:13 pm

Seccion miscelanea: Smalltalk, Haskell, Python, Ruby y Forth

En esta seccion seran mostrada aquella informacion que no tenga cabida en el resto de secciones. Esto en lo referente a la tematica del blog; que fundamentalmente se centra en GNU/Emacs, Scheme, Elisp, Common Lisp, Lisp en general, demos y videotutoriales sobre ello, SICP (libro que emplea tecnicas avanzadas sobre scheme), GEB (libro relacionado con la perspectiva y vision de los problemas, del cual tambien habla de Lisp), experimental-os (sistema operativo con base en asm y c sobre el que se monta una plataforma para Lisp imitando a emacs).

Sin embargo la informacion aqui expuesta, y aunque no este intimamente relacionada con GNU/Emacs, si lo esta con el mundo del software y en muchos casos se emplea de forma masiva en el software libre como por ejemplo Python. Por lo que fundamentalmente esta seccion ira destinada a lenguajes que considero interesantes como Smalltalk, Haskell, Python, Ruby y Forth.

Python:

Para explicar Python, me basare en el libro “Programming python” de Mark Lutz, que posiblemente sea el mejor para aprender el lenguaje, ya que el resto explica cosas especificas o algunos trucos o tecnicas empleadas en ese lenguaje, pero creo que este es el ideal para conocer bien el lenguaje, aunque basicamente cogere la informacion que me interese, obviando gran parte de ella, ya que esto pretende ser una especie de resumen y auto ayuda para uno mismo, para sentirse comodo con este lenguage.

1. Programacion del sistema

1.1 Herramientas del sistema

Vista general de scripting, Modulo sys, Modulo os

1.2 Contexto de ejecucion

CWD, Argumentos por linea de comando, Variables de entorno, Streams estandars

1.3 Herramientas para ficheros y directorios

Herramientas de ficheros, Herramientas de directorios

1.4 Herramientas para sistemas paralelos

Fork de procesos, Threads, Salidas de programa, IPC, Modulo de multiproceso, Otros modos para lanzar programas, Portabilidad, Herramientas de soporte.

1.5. Programas de sistemas completos

Scanning, Partir y juntar ficheros, Generando redireccion de paginas web, Test de regression, Copia de arbol de directorios, Comparacion de arbol de directorios, Busqueda de arbol de directorios, Caminando sobre arbol de directorios, ejecucion de ficheros Media.

2. Interfaces graficas de usuario (GUI)

Opciones del GUI, Vista general de Tkinter, Cumbre del GUI, Alternativas a tkinter, Botones y callbacks.

2.2 TKinter

Widgets, niveles de ventanas, gadgets, dialogos, eventos, mensajes y entradas, botones, formas de lanzar el GUI, imagenes, procesamiento de imagenes mediante PIL, menus, listboxes y scrollbars, text, canvas, grids, herramientas de tiempo, Threads, animacion.

2.3 Tecnicas de coding para el GUI

GuiMixin, GuiMaker, ShellGui, GuiStreams, Recarga dinamica de manejadores para retrollamada, Wrapping de interfaces de ventana, Threads y colas sobre el GUI, GUI y no-GUI, PyDemos y PyGadgets.

2.4 Programas completos

PyEdit, PyPhoto, PyView, PyDraw, PyClock, PyToe

3. Programacion de red (Internet)

3.1 Scripting de red

Opciones de desarrollo para internet, ‘pintando’ internet, programacion con sockets, manejo de multiples clientes, sockets con streams y ficheros especiales, servidor en python

3.2 Scripting del lado del cliente

FTP, ftplib para directorios, ftplib para arbol de directorios, procesando mails, POP, SMTP, parseo del mail, client de correo electronico, mailtools, NNTP, HTTP, urllib, mas opciones

3.3 Cliente PyMailGUI

PyMailGUI demo, Implementacion de PyMailGUI

3.4 Scripting del lado del servidor

Ejemplos, CGI, Guardando estados de informacion con CGI, Selector, Refactorizacion, HTML y URLs, Transfiriendo informacion entre clientes y servidores

3.5 Servidor PyMailGUI

PyMailCGI, Pagina raiz, enviando mails mediante SMTP, Leyendo mails mediante POP, Procesando mails, Modulos de utilidad, Web Scripting de trade-offs

4. Tecnicas y herramientas

4.1 Bases de datos y persistencia

DBM, Objetos pickle, Ficheros shelve, ZODB, Interfaces SQL, ORM, PyForm

4.2 Estructuras de datos

Implementando pilas, Implementando sets, Subclases de nuevos tipos, Arboles binarios de busqueda, Grafos, Permutando secuencias, Secuencias inversas y de ordenacion, PyTree

4.3 Lenguaje y texto

Procesamiento de texto, Utilidades de metodos para cadenas, Expresiones regulares, Parseo de XML y HTML, Herramientas avanzadas del lenguaje, Parsers especificos para lenguajes, PyCalc

4.4 Integrando Python y C

Extendiendo Python en C, Modulo de extension de C, Generacion de codigo SWIG, Wrapping funciones del entorno C, Wrapping classes de C++ con SWIG, Otras herramientas de extension, Incrustando Python en C, Tecnicas basicas de incrustacion, Registrando manejo de retrollamadas de objetos, usando clases de Python en C, Otros topicos de integracion.

<en desarrollo>

Leave a Reply

You must be logged in to post a comment.