<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8431735611033108974</id><updated>2011-08-02T17:40:52.940-07:00</updated><title type='text'>CodMACs</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://codmacs.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431735611033108974/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://codmacs.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>mRt</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://3.bp.blogspot.com/_4kgjazFo0gM/StfTOk4z_oI/AAAAAAAAACw/8VkHrlRlcXI/S220/ghjgjgh.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>2</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8431735611033108974.post-7300485334593627089</id><published>2009-10-19T15:21:00.000-07:00</published><updated>2010-11-05T15:16:08.453-07:00</updated><title type='text'></title><content type='html'>&lt;div id="wikicontent" style="padding: 0pt 3em 1.2em 0pt;"&gt;&lt;div id="wikicontent" style="font-family: inherit; padding: 0pt 3em 1.2em 0pt;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;What is CodMACs?&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div id="wikicontent" style="padding: 0pt 3em 1.2em 0pt;"&gt;&lt;a href="http://code.google.com/images/code_logo.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;CodMACs is a &lt;a href="http://en.wikipedia.org/wiki/Open_source_software"&gt;open source&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Metaprogramming"&gt;meta-programming&lt;/a&gt; &lt;a href="http://www.python.org/"&gt;python&lt;/a&gt; implementation. It helps you to write programs (in any language) very quickly by generating source code based on &lt;a href="http://en.wikipedia.org/wiki/SQL"&gt;SQL&lt;/a&gt; tables structure. Turns a “hours taker” task into a “seconds taker” one. &lt;br /&gt;&lt;br /&gt;First, it reads your databases in order to create a structure for you to include it into your code templates. The structure is simply a python &lt;a href="http://en.wikipedia.org/wiki/Class_%28computer_science%29"&gt;class&lt;/a&gt;. Then, the CodMACs core parses your code tamplates, interprets your CodMACs/python code and creates a source code file that includes your code and the result of evaluating the code written in CodMACs/python.&lt;br /&gt;&lt;br /&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: 130%;"&gt;&lt;span style="font-weight: bold;"&gt;The CodMACs Core&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;The core of CodMACs provides you with all the necessary functionalities for a complete application framework.&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;Is also extensible because the source code is available.&lt;/div&gt;&lt;br /&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;How its works?&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;The main idea in CodMACs is to embed python code into your *any language* source, like in this scheme:&lt;br /&gt;&lt;div style="font-family: inherit;"&gt;&lt;title&gt;&lt;/title&gt; 	 	&lt;style type="text/css"&gt;	&lt;!--		@page { size: 8.5in 11in; margin: 0.79in }		P { margin-bottom: 0.08in }	--&gt;	&lt;/style&gt;  &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_4kgjazFo0gM/St-6lETntWI/AAAAAAAAAD8/C-Y4wIPtKqo/s1600-h/graphic.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_4kgjazFo0gM/St-6lETntWI/AAAAAAAAAD8/C-Y4wIPtKqo/s400/graphic.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;title&gt;&lt;/title&gt; 	 	&lt;style type="text/css"&gt;	&lt;!--		@page { size: 8.5in 11in; margin: 0.79in }		P { margin-bottom: 0.08in }	--&gt;	&lt;/style&gt;  &lt;/div&gt;&lt;div align="left" style="font-family: inherit; margin-bottom: 0in;"&gt;Having a template file (wich contains code in *any language* and CodMACs code) then, you process it and get the *any language* code, but customized with the table structure information of the table (or anything else you could generate with a python script).&lt;br /&gt;&lt;br /&gt;As in &lt;a href="http://php.net/index.php"&gt;PHP&lt;/a&gt;, we use a "&lt;a href="http://en.wikipedia.org/wiki/HTML_tag"&gt;tag&lt;/a&gt; like" syntax (&amp;lt;scr_python&amp;gt;) to indicate the parser that the code between the tags is CodMACs/python code and it has to be parsed.&lt;br /&gt;&lt;br /&gt;The rest is ignored and sent directly to the output.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/codmacs/"&gt;Project Home &lt;/a&gt;&lt;/div&gt;&lt;div align="left" style="font-family: inherit; margin-bottom: 0in;"&gt;&lt;a href="http://codmacs.googlecode.com/files/CodMACs%20v2.zip"&gt;Download Betha Source&lt;/a&gt;&lt;br /&gt;&lt;a href="http://codmacs.blogspot.com/2009/10/codmacs.html"&gt;Versión en Español&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_4kgjazFo0gM/St0avT7aqFI/AAAAAAAAADs/27libzodfM4/s1600-h/python-powered-w-200x80.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_4kgjazFo0gM/St0avT7aqFI/AAAAAAAAADs/27libzodfM4/s320/python-powered-w-200x80.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_4kgjazFo0gM/StzpGFt9ZEI/AAAAAAAAADk/5OfJTXR_4pQ/s1600-h/opensource_logo.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_4kgjazFo0gM/StzpGFt9ZEI/AAAAAAAAADk/5OfJTXR_4pQ/s200/opensource_logo.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;This project is hosted on:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;a href="http://code.google.com/images/code_logo.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://code.google.com/images/code_logo.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431735611033108974-7300485334593627089?l=codmacs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codmacs.blogspot.com/feeds/7300485334593627089/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://codmacs.blogspot.com/2009/10/que-es-codmacs-codmacs-es-una.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431735611033108974/posts/default/7300485334593627089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431735611033108974/posts/default/7300485334593627089'/><link rel='alternate' type='text/html' href='http://codmacs.blogspot.com/2009/10/que-es-codmacs-codmacs-es-una.html' title=''/><author><name>mRt</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://3.bp.blogspot.com/_4kgjazFo0gM/StfTOk4z_oI/AAAAAAAAACw/8VkHrlRlcXI/S220/ghjgjgh.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_4kgjazFo0gM/St-6lETntWI/AAAAAAAAAD8/C-Y4wIPtKqo/s72-c/graphic.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431735611033108974.post-5359219087275527012</id><published>2009-10-19T14:53:00.000-07:00</published><updated>2010-11-05T15:17:17.163-07:00</updated><title type='text'></title><content type='html'>&lt;div id="wikicontent" style="padding: 0pt 3em 1.2em 0pt;"&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: 130%; font-weight: bold;"&gt;Qué es CodMACs?&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: 130%; font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;CodMACs es una implementación código abierto, en python de meta-programación. Ayuda a escribir programas (en cualquier lenguaje) rápidamente, mediante la generación de código fuente basado en estructuras de tablas SQL. Convierte una tarea "de horas" en "de minutos".&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;Primero, lee las bases de datos para crear una estructura que se incluirá en las plantillas. Dicha estructura es simplemente una clase en python. Luego, el núcleo de CodMACs, analiza la plantilla, interpreta tu código en CodMACs/python y crea un archivo con el código fuente que incluye, tu código y el resultado de evaluar lo escrito en CodMACs/python.&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: 130%; font-weight: bold;"&gt;&amp;nbsp;&lt;/span&gt; &lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: 130%;"&gt;&lt;span style="font-weight: bold;"&gt;El núcleo de CodMACs&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;El núcleo de CodMACs provee todas las funcionalidades necesarias para un completo framwork.&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;Es además extensible debido a que el código fuente está disponible.&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-family: inherit; font-size: large;"&gt;&lt;b&gt;Cómo funciona?&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div id="wikicontent" style="padding: 0pt 3em 1.2em 0pt;"&gt;&lt;b style="font-family: inherit;"&gt;&lt;/b&gt;La idea principal en CodMACs es embeber código escrito en python en el código fuente en *cualquier lenguaje*, como en este esquema:&lt;br /&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_4kgjazFo0gM/St-_P2jm72I/AAAAAAAAAEE/XUb8ftpfQ2s/s1600-h/graphic.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_4kgjazFo0gM/St-_P2jm72I/AAAAAAAAAEE/XUb8ftpfQ2s/s400/graphic.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;Con el archivo de la plantilla (que contiene código en *cualquier lenguaje* y código en CodMACs) se procesa obteniendo el código en *cualquier lenguaje*, pero customizado con la información de la estructura de la tabla (o con cualquier cosa que se pueda generar con un script en python).&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/div&gt;Cómo en PHP, utilizamos un sintaxis "simil-tag" (&amp;lt;scr_python&amp;gt;) para indicarle al parser que el código entre esos tags es CodMACs/python y tiene que ser parseado.&lt;br /&gt;&lt;br /&gt;El resto es ignorado y enviado directamente a la salida.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/codmacs/"&gt;Página del Proyecto&lt;/a&gt;&lt;br /&gt;&lt;a href="http://codmacs.googlecode.com/files/CodMACs%20v2.zip"&gt;Descargar Fuente Betha&lt;/a&gt;&lt;br /&gt;&lt;a href="http://codmacs.blogspot.com/2009/10/que-es-codmacs-codmacs-es-una.html"&gt;English Version&lt;/a&gt;&lt;/div&gt;&lt;div id="wikicontent" style="padding: 0pt 3em 1.2em 0pt;"&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_4kgjazFo0gM/St0a7_Bm98I/AAAAAAAAAD0/OLJXHehJCKk/s1600-h/python-powered-w-200x80.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_4kgjazFo0gM/St0a7_Bm98I/AAAAAAAAAD0/OLJXHehJCKk/s320/python-powered-w-200x80.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_4kgjazFo0gM/StzoypFxLCI/AAAAAAAAADc/yHfAy7Kr7hQ/s1600-h/opensource_logo.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_4kgjazFo0gM/StzoypFxLCI/AAAAAAAAADc/yHfAy7Kr7hQ/s200/opensource_logo.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Este proyecto está hosteado en:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://code.google.com/images/code_logo.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://code.google.com/images/code_logo.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431735611033108974-5359219087275527012?l=codmacs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codmacs.blogspot.com/feeds/5359219087275527012/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://codmacs.blogspot.com/2009/10/codmacs.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431735611033108974/posts/default/5359219087275527012'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431735611033108974/posts/default/5359219087275527012'/><link rel='alternate' type='text/html' href='http://codmacs.blogspot.com/2009/10/codmacs.html' title=''/><author><name>mRt</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://3.bp.blogspot.com/_4kgjazFo0gM/StfTOk4z_oI/AAAAAAAAACw/8VkHrlRlcXI/S220/ghjgjgh.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_4kgjazFo0gM/St-_P2jm72I/AAAAAAAAAEE/XUb8ftpfQ2s/s72-c/graphic.png' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
