Kib's Memo

Liens de la semaine 9

Article numéro 36 écrit le dimanche 09 mars 2008 à 11 h 50 min dans les catégories : Liens de la semaine Python Autres langages

Salut,

  • Toujours un bon rappel : les vidéos de Hal Abelson et Gerald Jay Sussman qui accompagnent le célèbre ouvrage Structure and Interpretation of Computer Programs,. Un régal en 8.6 Go de données (Si on choisit le format divX).

    Ces vidéos ont servi aux développeurs de chez Hewlett-Packard, et malgré leur âge elles n'ont pas pris une ride sur leur contenu. Les 2 profs sont vraiment fascinants, il faut les voir écrire du Lisp à la craie au tableau sur une bibliothèque de calcul formel par exemple.

    A noter, les sources sont aussi dispos au format TexInfo pour Emacs

  • le projet Pyxer est né ! Je cite

    Pyxer is a Python AJAX Server/ Framework similar to the Jaxer project of Aptana
    

    En gros, on écrit en Python côté client, c'est transformé en JavaScript côté serveur.

  • De nouveaux Tutos F# , le OCaml de MS qui fonctionne normalement sous Mono par la même occasion.

  • Dans la série langages de l'espace :

    • Un autre serpent à fouetter ? Cobra
    • Converge est très intéressant car il permet de créer des macros à la Lisp, d'embarquer une DSL dans le langage. A surveiller.
  • Dingue ce qu'on peut faire avec Excel : un moteur 3d !

  • Tout chaud, Python4Ply est un parser Python écrit avec le module PLY. Et alors, il en existe déjà 150 me direz vous. Certes, mais celui-ci vous permet de modifier les entrailles de votre langage préféré, par exemple en créant une nouvelle syntaxe pour les entiers, etc. L'auteur a même pris le temps de faire un petit tuto.

  • Dans la série je modifie Python, EasyExtend sort en version 2.0, beau projet.

  • Le fantastique ShedSkin (Compilateur de Python en C++) passe en version 0.0.27 en apportant le support pour des modules plus qu'utiles : re, time et os(partielement).

  • Komodo Edit passe en 4.3 avec pas mal de nouveautés (Find in Project, Replace in Files, Abbreviation).

  • On peut toujours se faire un moteur de templates en 5 lignes de code... Exemple ?

    # -*- coding: utf-8 -*-
    #!/usr/bin/python
    
    import re
    
    def apply_template(text,env):
        def eval_in_env(m):
            return str(eval(m.group(1),env))
        return re.sub(r"\${(.*?)}\$",eval_in_env,text)
    
    ## Main Programm
    def main():
        a, b= 5, "nada"
        myt = """Un petit système de templates
    qui tient en 5 lignes de code ! Vous y croyez ?!
    
        a vaut ${a}$
        b vaut ${b}$
        """
        print apply_template(myt, locals())
    
    if __name__ == "__main__":
        main()
    

    Ce qui donne en sortie :

    Un petit système de templates
    qui tient en 5 lignes de code ! Vous y croyez ?!
    
        a vaut 5
        b vaut nada
    

    Pas mal hein ?! A vous de modifier les balises dans la regexp pour qu'elle s'adapte à vos besoins [Pris sur comp.lang.python]

  • Premier en librairie, la saga Millenium de Stieg Larsson ne laisse personne indifférent ! Je viens de me procurer le premier tome (oui, c'est cher : 22,80 quand même !)

    alternativeText

    Je ne décroche déjà plus :)

Bon week-end.

Commentaires (Voir)