Changes between Version 21 and Version 22 of GSoc2011

03/11/11 17:52:41 (3 years ago)

two new projects. An apache plugin (replace mod_parrot) and a text templating engine


  • GSoc2011

    v21 v22  
    147147 * '''Details''': Create a tool or toolset for calculating code maintainability metrics for Parrot. The toolset should operate on PIR or PBC, and be usable for any HLL which runs on top of Parrot (using code annotations to get information about the HLL). The toolset should be able to calculate total lines of code (in the original HLL, in addition to the generated PIR/PBC), per-sub cyclomatic complexity (including nested lexical subs), and inter-class coupling. 
    148148 * '''Expected Deliverables''': A library, stand-alone tool, or complete toolset for analyzing PIR or PBC and calculating various metrics from it. The successful project will be able to count total lines of code in an HLL-independant way and calculate ''at least'' one other important metric. 
     151=== Parrot in Apache === 
     153 * '''Difficulty''': 4/5 
     154 * '''Links of Interest''': <NONE, please add some> 
     155 * '''Possible Mentors''': <UNKNOWN, please volunteer!> 
     156 * '''Details''': Implement a plugin for running Parrot code in an Apache webserver. The plugin may be a plugin module similar to the old mod_parrot project, it may be a FastCGI module, or anything that works and is portable and well-supported. The plugin should be able to execute raw PIR code and code running in one of Parrot's HLLs, including the ability to load Parrot extension libraries. Preference is for projects which work on newer Apache 2 releases over older Apache 1. Compatibility with the older line is nice but not a strict requirement. 
     157 * '''Expected Deliverables''': The successful project will provide both the Apache plugin module, example code showing webpages generated using the plugin, a unit test suite and full user documentation. 
     159=== Safe Text Templating Engine === 
     161 * '''Difficulty''': 2/5 
     162 * '''Links of Interest''': <NONE, please add some> 
     163 * '''Possible Mentors''': <UNKNOWN, please volunteer!> 
     164 * '''Details''': A text templating engine, similar to Liquid or Lua-Codegen which runs on top of Parrot. The templating engine should follow good design and best practices and be "safe" (or have a "safe" mode) for use in public environments like the web. A good templating library will work with Parrot's immutable strings implementation to produce a high-performance and flexibile templating and formatting solution. This project should be implemented in a lower-level Parrot language for maximum portability (PIR, NQP-rx, Winxed, etc). 
     165 * '''Expected Deliverables''': A templating library, example code, unit tests, and user documentation.