Metadata-Version: 1.0
Name: MacroPy
Version: 0.2.0
Summary: Macros for Python: Quasiquotes, Case Classes, LINQ and more!
Home-page: https://github.com/lihaoyi/macropy
Author: Li Haoyi, Justin Holmgren
Author-email: haoyi.sg@gmail.com, justin.holmgren@gmail.com
License: BSD
Description: 
        
        MacroPy is an implementation of Macros in the Python Programming Language.
        MacroPy provides a mechanism for user-defined functions (macros) to perform
        transformations on the abstract syntax tree(AST) of Python code at module
        import time. This is an easy way to modify the semantics of a python program
        
        Python like you've never seen before
        ------------------------------------
        
        MacroPy allows you to create constructs which are impossible to have in normal
        python code, such as:
        
        Tracing
        ```````
        .. code:: python
        
            with trace:
                sum([x + 5 for x in range(3)])
        
            # sum([(x + 5) for x in range(3)])
            # range(3) -> [0, 1, 2]
            # (x + 5) -> 5
            # (x + 5) -> 6
            # (x + 5) -> 7
            # [(x + 5) for x in range(3)] -> [5, 6, 7]
            # sum([(x + 5) for x in range(3)]) -> 18
        
        Quick Lambdas
        `````````````
        
        .. code:: python
        
            print map(f%_[0], ['omg', 'wtf', 'bbq'])
            # ['o', 'w', 'b']
        
            print reduce(f%(_ + _), ['omg', 'wtf', 'bbq'])
            # 'omgwtfbbq
        
        Case Classes
        ````````````
        
        .. code:: python
        
            @case
            class Point(x, y): pass
        
            p = Point(1, 2)
        
            print str(p)    #Point(1, 2)
            print p.x       #1
            print p.y       #2
            print Point(1, 2) == Point(1, 2) # True
        
        And more! All this runs perfectly on vanilla Python 2.7 or PyPy 2.0. For more details, see the `GitHub page <https://github.com/lihaoyi/macropy>`_
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 2.7
