<?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-6198284543776667391</id><updated>2011-06-06T16:50:28.725-07:00</updated><category term='Info'/><category term='ChangeLog'/><category term='TODO'/><title type='text'>LuaWsgi ChangeLog</title><subtitle type='html'>Versões, exemplos e notícias</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://luawsgi.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://luawsgi.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Darth Batalema</name><uri>http://www.blogger.com/profile/14265747724618147106</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/-qTEYswdhBwA/Td-uAIo2SII/AAAAAAAAAac/ekYfzs4jqbA/s220/darthbatalema-150x108.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>11</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6198284543776667391.post-7675259526928469981</id><published>2008-09-16T17:18:00.000-07:00</published><updated>2008-09-17T17:55:21.484-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ChangeLog'/><category scheme='http://www.blogger.com/atom/ns#' term='Info'/><title type='text'>Kraken 8.09</title><content type='html'>Nova versão do &lt;a href="http://www.assembla.com/wiki/show/kraken-lua"&gt;Kraken&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;Use &lt;a href="http://subversion.tigris.org/"&gt;Subversion&lt;/a&gt; para obter:&lt;br /&gt;&lt;pre&gt;&lt;code&gt;svn co http://svn2.assembla.com/svn/kraken-lua/tags/8.09 kraken-8.09.0&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Walter, foi mal a falta de comentários! As principais mudanças foram nos arquivos &lt;a href="http://trac2.assembla.com/kraken-lua/changeset?new=trunk%2FMakefile.in%4014&amp;old=trunk%2FMakefile.in%406"&gt;&lt;code&gt;Makefile.in&lt;/code&gt;&lt;/a&gt;, &lt;a href="http://trac2.assembla.com/kraken-lua/changeset?new=trunk%2Fsrc%2Fkforker.cc%4018&amp;old=trunk%2Fsrc%2Fkforker.cc%4010"&gt;&lt;code&gt;kforker.cc&lt;/code&gt;&lt;/a&gt; e &lt;a href="http://trac2.assembla.com/kraken-lua/changeset?new=trunk%2Fsrc%2Fkraken.cc%4018&amp;old=trunk%2Fsrc%2Fkraken.cc%4010"&gt;&lt;code&gt;kraken.cc&lt;/code&gt;&lt;/a&gt;, além de ter trocado a extensão &lt;code&gt;.hpp&lt;/code&gt; por &lt;code&gt;.h&lt;/code&gt; dos cabeçalhos.&lt;br /&gt;&lt;br /&gt;Basicamente foram corrigidos alguns &lt;em&gt;bugs&lt;/em&gt;, ajustado o &lt;em&gt;casting&lt;/em&gt; e implementada função para obter o UID de um usuário a partir do &lt;em&gt;login&lt;/em&gt;.&lt;br /&gt;&lt;br /&gt;[]'s&lt;br /&gt;Cacilhas, La Batalema&lt;br /&gt;&lt;br /&gt;PS: Já estou trabalhando nos códigos de LuaWsgi para o novo Kraken.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198284543776667391-7675259526928469981?l=luawsgi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://luawsgi.blogspot.com/feeds/7675259526928469981/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6198284543776667391&amp;postID=7675259526928469981' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/7675259526928469981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/7675259526928469981'/><link rel='alternate' type='text/html' href='http://luawsgi.blogspot.com/2008/09/kraken-809.html' title='Kraken 8.09'/><author><name>Darth Batalema</name><uri>http://www.blogger.com/profile/14265747724618147106</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/-qTEYswdhBwA/Td-uAIo2SII/AAAAAAAAAac/ekYfzs4jqbA/s220/darthbatalema-150x108.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6198284543776667391.post-5749390509448358320</id><published>2008-05-06T07:40:00.000-07:00</published><updated>2008-05-06T09:19:24.924-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Info'/><title type='text'>Kraken no Ohloh</title><content type='html'>O &lt;a href="http://www.assembla.com/wiki/show/kraken-lua"&gt;Kraken&lt;/a&gt; agora está no &lt;a href="http://www.ohloh.net/"&gt;Ohloh, &lt;em&gt;the open source network&lt;/em&gt;&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;Vejam &lt;a href="http://www.ohloh.net/projects/kraken/"&gt;aqui&lt;/a&gt;, comentários &lt;a href="http://www.ohloh.net/projects/kraken/factoids/"&gt;aqui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Obrigado, &lt;a href="http://waltercruz.com/"&gt;Walter&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;[]'s&lt;br /&gt;Cacilhas, La Batalema&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198284543776667391-5749390509448358320?l=luawsgi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://luawsgi.blogspot.com/feeds/5749390509448358320/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6198284543776667391&amp;postID=5749390509448358320' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/5749390509448358320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/5749390509448358320'/><link rel='alternate' type='text/html' href='http://luawsgi.blogspot.com/2008/05/kraken-no-ohloh.html' title='Kraken no Ohloh'/><author><name>Darth Batalema</name><uri>http://www.blogger.com/profile/14265747724618147106</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/-qTEYswdhBwA/Td-uAIo2SII/AAAAAAAAAac/ekYfzs4jqbA/s220/darthbatalema-150x108.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6198284543776667391.post-6056111659363438740</id><published>2008-04-30T15:57:00.000-07:00</published><updated>2008-09-17T17:56:09.880-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ChangeLog'/><category scheme='http://www.blogger.com/atom/ns#' term='Info'/><title type='text'>Kraken 8.01</title><content type='html'>Lancei o Kraken em &lt;a href="http://subversion.tigris.org/"&gt;Subversion&lt;/a&gt; no &lt;a href="http://www.assembla.com/"&gt;Assembla&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;No momento em que posto este artigo, a versão no &lt;em&gt;head&lt;/em&gt; é 8.01. O endereço da página do Kraken é &lt;a href="http://www.assembla.com/wiki/show/kraken-lua"&gt;http://www.assembla.com/wiki/show/kraken-lua&lt;/a&gt;. Para obter os códigos do repositório use o comando:&lt;br /&gt;&lt;pre&gt;&lt;code&gt;svn co http://svn2.assembla.com/svn/kraken-lua/tags/8.01 kraken-8.01.0&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Infelizmente não há ainda uma versão de LuaWsgi portada para esse novo Kraken.&lt;br /&gt;&lt;br /&gt;[]'s&lt;br /&gt;Cacilhas, La Batalema&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198284543776667391-6056111659363438740?l=luawsgi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://luawsgi.blogspot.com/feeds/6056111659363438740/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6198284543776667391&amp;postID=6056111659363438740' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/6056111659363438740'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/6056111659363438740'/><link rel='alternate' type='text/html' href='http://luawsgi.blogspot.com/2008/04/kraken-801.html' title='Kraken 8.01'/><author><name>Darth Batalema</name><uri>http://www.blogger.com/profile/14265747724618147106</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/-qTEYswdhBwA/Td-uAIo2SII/AAAAAAAAAac/ekYfzs4jqbA/s220/darthbatalema-150x108.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6198284543776667391.post-7901056132260796329</id><published>2007-10-14T17:02:00.000-07:00</published><updated>2007-10-14T17:04:40.704-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ChangeLog'/><title type='text'>Kraken 7.10</title><content type='html'>Primeiramente gostaria de pedir desculpas pelo tempo sem postar aqui. Estive um tanto ocupado com uma série de contratempos, mas agora estou de volta!&lt;br /&gt;&lt;br /&gt;Tomei esse último feriadão para mexer no código do Kraken. Infelizmente não consegui fazê-lo funcionar com &lt;em&gt;threads&lt;/em&gt;, pois preciso clonar um estado Lua &amp;ndash; e sinceramente não sei como fazer isso (ainda) &amp;ndash; portanto ele faz &lt;em&gt;fork&lt;/em&gt; por enquanto.&lt;br /&gt;&lt;br /&gt;De qualquer forma, segue a prematura versão 7.10 do Kraken e do LuaWsgi, mas cuidado! Deve haver &lt;em&gt;bugs&lt;/em&gt; não detectados.&lt;br /&gt;&lt;br /&gt;Os fontes estão aqui:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://luaforge.net/frs/download.php/2660/kraken-7.10.0.tar.gz"&gt;Kraken 7.10&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://luaforge.net/frs/download.php/2661/luawsgi-7.10.0.tar.gz"&gt;LuaWsgi 7.10&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Para os felizardos usuários de Slackware, seguem os pacotes (testados na versão 11.0):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://luaforge.net/frs/download.php/2662/kraken-7.10.0-i386-1.tgz"&gt;Kraken 7.10&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://luaforge.net/frs/download.php/2663/luawsgi-7.10.0-i386-1.tgz"&gt;LuaWsgi 7.10&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Obrigado!&lt;br /&gt;&lt;br /&gt;[]'s&lt;br /&gt;Cacilhas&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198284543776667391-7901056132260796329?l=luawsgi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://luawsgi.blogspot.com/feeds/7901056132260796329/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6198284543776667391&amp;postID=7901056132260796329' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/7901056132260796329'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/7901056132260796329'/><link rel='alternate' type='text/html' href='http://luawsgi.blogspot.com/2007/10/kraken-710.html' title='Kraken 7.10'/><author><name>Darth Batalema</name><uri>http://www.blogger.com/profile/14265747724618147106</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/-qTEYswdhBwA/Td-uAIo2SII/AAAAAAAAAac/ekYfzs4jqbA/s220/darthbatalema-150x108.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6198284543776667391.post-6558139252080817020</id><published>2007-08-19T09:42:00.000-07:00</published><updated>2007-08-20T05:04:47.618-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TODO'/><category scheme='http://www.blogger.com/atom/ns#' term='ChangeLog'/><title type='text'>Kraken</title><content type='html'>Como LuaWsgi é meu projeto de conclusão de curso da faculdade, ainda vai levar algum tempo para entrar em fase &lt;em&gt;beta&lt;/em&gt;. Enquanto isso, modificações mais pesadas pode ser feitas.&lt;br /&gt;&lt;br /&gt;E é o que tenho feito.&lt;br /&gt;&lt;br /&gt;Por exemplo, o &lt;code&gt;wsgi.listener&lt;/code&gt; passou a se chamar &lt;strong&gt;Kraken&lt;/strong&gt;, nome escolhido num debate entre &lt;a href="http://montegasppa.blogspot.com/"&gt;mim&lt;/a&gt;, &lt;a href="http://nauapoteotica.blogspot.com/"&gt;Krisnatágoras Araújo&lt;/a&gt;, &lt;a href="http://claudiotorcato.wordpress.com/"&gt;Claudio Torcato&lt;/a&gt;, &lt;a href="http://weblook.blogspot.com/"&gt;Ulisses Campos&lt;/a&gt; e &lt;a href="http://waltercruz.com/"&gt;Walter Cruz&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Estou reescrevendo o Kraken em C com dois pontos em vista: &lt;sup&gt;1&lt;/sup&gt;reduzir a quantidade de dependências e &lt;sup&gt;2&lt;/sup&gt;adaptar seu funcionamento para ambiente multiprocessado, inicialmente só de memória compartilhada. O suporte a memória distribuída será inicialmente fornecido por &lt;a href="http://openmosix.sourceforge.net/"&gt;OpenMosix&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Após a defesa do trabalho de conclusão, pretendo implementar no Kraken suporte nativo a ambiente multiprocessado de memória distribuída, mas esse ainda é um sonho distante.&lt;br /&gt;&lt;br /&gt;Aproveitando a deixa, estou escolhendo outro nome pro módulo que trata do protocolo HTTP, atualmente &lt;code&gt;wsgi.httpd&lt;/code&gt;. Sugestões são bem vindas!&lt;br /&gt;&lt;br /&gt;Gostaria que fosse algo que tenha a haver com &lt;a href="http://pt.wikipedia.org/wiki/Kraken"&gt;Kraken&lt;/a&gt; &amp;ndash; sugestão de procura: &lt;a href="http://pt.wikipedia.org/wiki/Categoria:Mitologia_nórdica"&gt;mitologia nórdica&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Então nova versão de LuaWsgi demorará um pouco, pois estou reescrevendo o Kraken em C.&lt;br /&gt;&lt;br /&gt;[]'s&lt;br /&gt;Cacilhas&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198284543776667391-6558139252080817020?l=luawsgi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://luawsgi.blogspot.com/feeds/6558139252080817020/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6198284543776667391&amp;postID=6558139252080817020' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/6558139252080817020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/6558139252080817020'/><link rel='alternate' type='text/html' href='http://luawsgi.blogspot.com/2007/08/kraken.html' title='Kraken'/><author><name>Darth Batalema</name><uri>http://www.blogger.com/profile/14265747724618147106</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/-qTEYswdhBwA/Td-uAIo2SII/AAAAAAAAAac/ekYfzs4jqbA/s220/darthbatalema-150x108.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6198284543776667391.post-7427912679575923941</id><published>2007-07-07T18:39:00.000-07:00</published><updated>2007-07-08T11:09:27.961-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ChangeLog'/><title type='text'>Pacotes para Slackware 11.0</title><content type='html'>Os seguintes apontadores levam aos pacotes necessários para instalar LuaWsgi e suas dependências sobre Slackware 11.0 (outras versões não foram testadas):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://maisideias.com.br/~rodrigocacilhas/luawsgi/lua-5.1.2-i486-1rmc.tgz"&gt;Lua 5.1&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://maisideias.com.br/~rodrigocacilhas/luawsgi/luasocket-2.0.1-i386-1rmc.tgz"&gt;LuaSocket 2.0&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://maisideias.com.br/~rodrigocacilhas/luawsgi/luaposix-5.1.200703-i386-1rmc.tgz"&gt;LuaPOSIX&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://maisideias.com.br/~rodrigocacilhas/luawsgi/lua51pthread-0.1-i386-1rmc.tgz"&gt;lua51pthread 0.1&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://luaforge.net/frs/download.php/2509/luawsgi-7.07.0-i386-1rmc.tgz"&gt;LuaWsgi&lt;/a&gt; (ou &lt;a href="http://maisideias.com.br/~rodrigocacilhas/luawsgi/luawsgi-7.07.0-i386-1rmc.tgz"&gt;aqui&lt;/a&gt;)&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Sintam-se convidados a criar pacotes RPM e APT (&lt;code&gt;.deb&lt;/code&gt;). =)&lt;br /&gt;&lt;br /&gt;[]'s&lt;br /&gt;Cacilhas&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198284543776667391-7427912679575923941?l=luawsgi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://luawsgi.blogspot.com/feeds/7427912679575923941/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6198284543776667391&amp;postID=7427912679575923941' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/7427912679575923941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/7427912679575923941'/><link rel='alternate' type='text/html' href='http://luawsgi.blogspot.com/2007/07/pacotes-para-slackware-110.html' title='Pacotes para Slackware 11.0'/><author><name>Darth Batalema</name><uri>http://www.blogger.com/profile/14265747724618147106</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/-qTEYswdhBwA/Td-uAIo2SII/AAAAAAAAAac/ekYfzs4jqbA/s220/darthbatalema-150x108.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6198284543776667391.post-165223983163571220</id><published>2007-07-06T05:31:00.000-07:00</published><updated>2007-07-06T05:34:05.547-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Info'/><title type='text'>Relação entre WSGI e LuaWsgi</title><content type='html'>O &lt;a href="http://pythonologia.org/"&gt;Osvaldo&lt;/a&gt; comentou comigo que &lt;a href="http://www.python.org/dev/peps/pep-0333/"&gt;WSGI&lt;/a&gt; não cuida do baixo nível, sendo apenas uma interface de programação, uma camada de abstração do servidor &lt;em&gt;web&lt;/em&gt; em si.&lt;br /&gt;&lt;br /&gt;Praticamente um protocolo de interface.&lt;br /&gt;&lt;br /&gt;Eu sei disso, mas &lt;a href="http://luaforge.net/projects/wsgi/"&gt;LuaWsgi&lt;/a&gt; não é &lt;strong&gt;apenas&lt;/strong&gt; WSGI&amp;hellip;&lt;br /&gt;&lt;br /&gt;WSGI é tão somente o motivo primordial para LuaWsgi.&lt;br /&gt;&lt;br /&gt;Para cima de WSGI, LuaWsgi implementa módulos de suporte a &lt;a href="http://www.ietf.org/rfc/rfc2965.txt"&gt;&lt;em&gt;cookies&lt;/em&gt;&lt;/a&gt;, sessão, &lt;a href="http://pt.wikipedia.org/wiki/AJAX_(programação)"&gt;AJAX&lt;/a&gt;, modelos (por enquanto apenas &lt;a href="http://www.keplerproject.org/cgilua/manual.html#templates"&gt;LuaPage&lt;/a&gt;, porque é fácil) e (por enquanto só) dois &lt;em&gt;middlewares&lt;/em&gt; prontos, autenticação e publicador.&lt;br /&gt;&lt;br /&gt;Para baixo de WSGI, LuaWsgi possui uma implementação de servidor &lt;a href="http://www.ietf.org/rfc/rfc2616.txt"&gt;HTTP&lt;/a&gt; sobre um módulo gerenciador de &lt;em&gt;daemon&lt;/em&gt; TCP para múltiplas conexões, &lt;code&gt;wsgi.listener&lt;/code&gt;, que pretende tirar o melhor proveito possível de um ambiente multiprocessado (essa parte está em construção).&lt;br /&gt;&lt;br /&gt;Nessa direção ainda falta criar interfaces com outros servidores &lt;em&gt;web&lt;/em&gt;, a começar pelo &lt;a href="http://httpd.apache.org/"&gt;Apache&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Portanto LuaWsgi &lt;strong&gt;é&lt;/strong&gt; WSGI, mas não somente&amp;hellip; é mais que isso.&lt;br /&gt;&lt;br /&gt;[]'s&lt;br /&gt;Cacilhas&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198284543776667391-165223983163571220?l=luawsgi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://luawsgi.blogspot.com/feeds/165223983163571220/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6198284543776667391&amp;postID=165223983163571220' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/165223983163571220'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/165223983163571220'/><link rel='alternate' type='text/html' href='http://luawsgi.blogspot.com/2007/07/relao-entre-wsgi-e-luawsgi.html' title='Relação entre WSGI e LuaWsgi'/><author><name>Darth Batalema</name><uri>http://www.blogger.com/profile/14265747724618147106</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/-qTEYswdhBwA/Td-uAIo2SII/AAAAAAAAAac/ekYfzs4jqbA/s220/darthbatalema-150x108.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6198284543776667391.post-8207952780172135639</id><published>2007-07-05T06:17:00.000-07:00</published><updated>2007-07-05T07:48:41.494-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TODO'/><title type='text'>O que você NÃO gosta…</title><content type='html'>Duas coisas me motivaram a escrever &lt;a href="http://luaforge.net/projects/wsgi/"&gt;LuaWsgi&lt;/a&gt;:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Distração do &lt;em&gt;stress&lt;/em&gt; pelo qual eu passava (sim! Programo para relaxar!);&lt;/li&gt; &lt;li&gt;Havia coisas em outras ferramentas das quais eu não gostava.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;Em Lua, o melhor projeto de &lt;em&gt;framework&lt;/em&gt; para &lt;em&gt;web&lt;/em&gt; que há atualmente é &lt;a href="http://www.keplerproject.org/"&gt;Kepler&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;No entanto há coisas em Kepler das quais eu pessoalmente não gosto. O legal do desenvolvimento colaborativo é que as pessoas podem ajudar a mudar essas coisas.&lt;br /&gt;&lt;br /&gt;Por exemplo, coisas que não são legais em Kepler 1.0 e 1.1, cujas mudanças já estão previstas para a versão 1.2:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;O controle de sessão está na camada mais abstrata (&lt;a href="http://www.keplerproject.org/cgilua/"&gt;CGILua&lt;/a&gt;). Será passado para camadas mais baixas na versão 1.2.&lt;/li&gt; &lt;li&gt;A interface &lt;a href="http://www.keplerproject.org/cgilua/sapi.html"&gt;SAPI&lt;/a&gt; será substituída por outra mais programável, &lt;a href="http://kepler-tmp.dreamhosters.com/en/WSAPI"&gt;WSAPI&lt;/a&gt; (ou KAPI, o pessoal ainda está discutindo o nome), que possuirá uma camada superior mais amigável que CGILua, chamada &lt;a href="http://kepler-tmp.dreamhosters.com/en/Orbit"&gt;Orbit&lt;/a&gt;.&lt;/li&gt; &lt;li&gt;O módulo facilitador para AJAX (&lt;a href="http://www.keplerproject.org/xavante/sajax.html"&gt;Sajax&lt;/a&gt;) não trabalha com sessão e está implementado na camada mais abstrata (CGILua). Na versão 1.2 será implementado usando WSAPI e de forma a permitir trabalhar com sessão.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;É claro que é necessário um certo nível de controle para um projeto não virar um caos. Esse controle é ao mesmo tempo o ponto forte e o ponto fraco do desenvolvimento colaborativo.&lt;br /&gt;&lt;br /&gt;Por um lado o controle mantém foco e concisão no projeto. Por outro lado é impossível agradar a gregos e troianos, e esse foco pode não ser o que você procura.&lt;br /&gt;&lt;br /&gt;Chegamos à beleza do código aberto: se você não gosta de algo, pode fazer diferente por conta própria. O nome disso é &lt;strong&gt;diversidade&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;Diversidade é o que garante continuidade na Natureza e o homem só é feliz em seus intentos quando aprende com a Natureza.&lt;br /&gt;&lt;br /&gt;Por exemplo, &lt;a href="http://www.keplerproject.org/xavante/"&gt;Xavante&lt;/a&gt; &amp;ndash; servidor &lt;em&gt;web&lt;/em&gt; de Kepler &amp;ndash; tem como foco permanecer pequeno e ser apenas um ambiente de desenvolvimento, como o objeto &lt;code&gt;httpserver&lt;/code&gt; de &lt;a href="http://pythonpaste.org/"&gt;Paste&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Assim Xavante e &lt;a href="http://www.keplerproject.org/copas/"&gt;Copas&lt;/a&gt; são mantidos pequenos, rodando em um só processo, sem &lt;em&gt;multithreading&lt;/em&gt; e sem criação de processos filho &amp;ndash; usam uma combinação de &lt;a href="http://www.lua.org/pil/9.html"&gt;corrotinas&lt;/a&gt; e &lt;a href="http://www.lua.org/pil/9.4.html"&gt;tempo de expiração&lt;/a&gt; de &lt;a href="http://www.cs.princeton.edu/~diego/professional/luasocket/"&gt;&lt;em&gt;sockets&lt;/em&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Nada contra, é um foco. Os coordenadores do projeto oferecem interfaces com outros servidores &lt;em&gt;web&lt;/em&gt; para uso em produção.&lt;br /&gt;&lt;br /&gt;Mas eu quero mais&amp;hellip; e se você também quer mais, pode ajudar a melhorar LuaWsgi!&lt;br /&gt;&lt;br /&gt;O foco de LuaWsgi é tirar proveito máximo de um ambiente multiprocessado, de memória compartilhada ou distribuída.&lt;br /&gt;&lt;br /&gt;A idéia é que LuaWsgi use &lt;code&gt;pthread&lt;/code&gt; para fazer &lt;em&gt;multithreading&lt;/em&gt; (que em ambiente GNU/Linux já tira proveito de multiprocessamento &lt;em&gt;per si&lt;/em&gt;) e crie processo filho (&lt;em&gt;fork&lt;/em&gt;) quando necessário (LuaWsgi ainda não faz isso).&lt;br /&gt;&lt;br /&gt;Chegamos aqui ao &lt;strong&gt;objetivo desta postagem&lt;/strong&gt;: quais são &lt;strong&gt;suas&lt;/strong&gt; sugestões para melhorar LuaWsgi?&lt;br /&gt;&lt;br /&gt;O que você &lt;strong&gt;não gosta&lt;/strong&gt; em LuaWsgi?&lt;br /&gt;&lt;br /&gt;O que você não gosta em &lt;strong&gt;outros&lt;/strong&gt; &lt;em&gt;frameworks&lt;/em&gt;, não pode mudar e gostaria de ver implementando em LuaWsgi?&lt;br /&gt;&lt;br /&gt;Vamos criar um &lt;em&gt;TODO&lt;/em&gt; de coisas legais que podem ser implementadas em LuaWsgi. Você não precisa colaborar com código (se tiver algum código, ele será analisado com zelo, claro), ideias bastam &amp;ndash; seja para &lt;strong&gt;acrescentar&lt;/strong&gt;, seja para &lt;strong&gt;retirar&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;Precisamos de ideias nesse momento.&lt;br /&gt;&lt;br /&gt;[]'s&lt;br /&gt;Cacilhas&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198284543776667391-8207952780172135639?l=luawsgi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://luawsgi.blogspot.com/feeds/8207952780172135639/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6198284543776667391&amp;postID=8207952780172135639' title='4 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/8207952780172135639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/8207952780172135639'/><link rel='alternate' type='text/html' href='http://luawsgi.blogspot.com/2007/07/o-que-voc-no-gosta.html' title='O que você NÃO gosta&amp;hellip;'/><author><name>Darth Batalema</name><uri>http://www.blogger.com/profile/14265747724618147106</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/-qTEYswdhBwA/Td-uAIo2SII/AAAAAAAAAac/ekYfzs4jqbA/s220/darthbatalema-150x108.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6198284543776667391.post-8291306235131454946</id><published>2007-07-03T18:22:00.000-07:00</published><updated>2007-07-06T05:28:32.293-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Info'/><title type='text'>Versionamento</title><content type='html'>Perguntaram-me por que a primeira versão de LuaWsgi é 7.06.0.&lt;br /&gt;&lt;br /&gt;Foi adotado um esquema de versionamento um tanto peculiar, mas similar ao adotado pelo &lt;a href="http://www.ubuntu.com/"&gt;Ubuntu&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;O número maior de versão indica o ano (2007 &amp;rarr; 7), o número menor indica o mês (junho &amp;rarr; 06) e o número de &lt;em&gt;release&lt;/em&gt; inicia em zero e é incrementado a cada lançamento no mesmo mês.&lt;br /&gt;&lt;br /&gt;Então 7.06.0 indica o primeiro &lt;em&gt;release&lt;/em&gt; de junho de 2007 e 7.06.1 o segundo &lt;em&gt;release&lt;/em&gt; do mesmo mês.&lt;br /&gt;&lt;br /&gt;[]'s&lt;br /&gt;Cacilhas&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198284543776667391-8291306235131454946?l=luawsgi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://luawsgi.blogspot.com/feeds/8291306235131454946/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6198284543776667391&amp;postID=8291306235131454946' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/8291306235131454946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/8291306235131454946'/><link rel='alternate' type='text/html' href='http://luawsgi.blogspot.com/2007/07/versionamento.html' title='Versionamento'/><author><name>Darth Batalema</name><uri>http://www.blogger.com/profile/14265747724618147106</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/-qTEYswdhBwA/Td-uAIo2SII/AAAAAAAAAac/ekYfzs4jqbA/s220/darthbatalema-150x108.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6198284543776667391.post-8853218838124370451</id><published>2007-07-03T07:49:00.000-07:00</published><updated>2007-07-03T08:01:13.033-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TODO'/><title type='text'>Refatoração</title><content type='html'>Inicialmente escrevi LuaWsgi para trabalhar associado ao &lt;a href="http://www.keplerproject.org/"&gt;Kepler&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Assim, na versão 7.06.x, LuaWsgi tem como dependências Lua, LuaSocket, LuaFileSystem, Copas e lua-unistd.&lt;br /&gt;&lt;br /&gt;No entanto mudei de idéia e estou refatorando o código.&lt;br /&gt;&lt;br /&gt;As dependências passarão a ser nas versões posteriores:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.lua.org/"&gt;Lua&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://www.cs.princeton.edu/~diego/professional/luasocket/"&gt;LuaSocket&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://alua.inf.puc-rio.br/ftp/libs/posix-5.1.tar.gz"&gt;LuaPOSIX&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://lua51pthread.luaforge.net/"&gt;lua51pthread&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Já tenho ele refatorado para funcionar assim, no entanto quero separar o tratamento do protocolo HTTP do tratamento de WSGI antes de liberar nova versão.&lt;br /&gt;&lt;br /&gt;[]'s&lt;br /&gt;Cacilhas&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198284543776667391-8853218838124370451?l=luawsgi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://luawsgi.blogspot.com/feeds/8853218838124370451/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6198284543776667391&amp;postID=8853218838124370451' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/8853218838124370451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/8853218838124370451'/><link rel='alternate' type='text/html' href='http://luawsgi.blogspot.com/2007/07/refatorao.html' title='Refatoração'/><author><name>Darth Batalema</name><uri>http://www.blogger.com/profile/14265747724618147106</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/-qTEYswdhBwA/Td-uAIo2SII/AAAAAAAAAac/ekYfzs4jqbA/s220/darthbatalema-150x108.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6198284543776667391.post-270133463014882170</id><published>2007-07-03T07:37:00.000-07:00</published><updated>2007-07-03T07:41:39.187-07:00</updated><title type='text'>Introdução</title><content type='html'>Este &lt;em&gt;blog&lt;/em&gt; tem o objetivo de manter &lt;em&gt;changelogs&lt;/em&gt; e notícias sobre o projeto &lt;a href="http://luaforge.net/projects/wsgi/"&gt;LuaWsgi&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Como o público alvo principal do projeto são programadores lusófonos, este &lt;em&gt;blog&lt;/em&gt; terá como linguagem preferencial o Português, mas algumas postagens podem eventualmente ser feitos em outras línguas &lt;strong&gt;se&lt;/strong&gt; necessário.&lt;br /&gt;&lt;br /&gt;[]'s&lt;br /&gt;Cacilhas&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198284543776667391-270133463014882170?l=luawsgi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://luawsgi.blogspot.com/feeds/270133463014882170/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6198284543776667391&amp;postID=270133463014882170' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/270133463014882170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6198284543776667391/posts/default/270133463014882170'/><link rel='alternate' type='text/html' href='http://luawsgi.blogspot.com/2007/07/introduo.html' title='Introdução'/><author><name>Darth Batalema</name><uri>http://www.blogger.com/profile/14265747724618147106</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/-qTEYswdhBwA/Td-uAIo2SII/AAAAAAAAAac/ekYfzs4jqbA/s220/darthbatalema-150x108.jpg'/></author><thr:total>0</thr:total></entry></feed>
