segunda-feira, 12 de setembro de 2011
terça-feira, 7 de junho de 2011
paste.call-cc.org (pastiche)
Hoje foi anunciado o serviço de pasting em call-cc.org (o servidor do projeto Chicken), disponibilizado através de http://paste.call-cc.org. Em linhas gerais, o serviço permite colar trechos de código para que outras pessoas possam ver. É bem útil em discussões via IRC.
paste.call-cc.org executa pastiche, uma aplicação para a web desenvolvida por Christian Kellermann. É feita em Chicken Scheme, usando awful.
paste.call-cc.org executa pastiche, uma aplicação para a web desenvolvida por Christian Kellermann. É feita em Chicken Scheme, usando awful.
quinta-feira, 26 de maio de 2011
Chicken 4.7.0
Ontem foi lançada a versão 4.7.0 do sistema Chicken, com várias correções de problemas e melhorias. A lista de novidades está no arquivo NEWS.
Uma das mais significativas modificações foi a substituição do sistema de expressões regulares. A unidade antiga (regex), agora é um egg. A implementação nova é irregex, em Scheme puro.
Uma das mais significativas modificações foi a substituição do sistema de expressões regulares. A unidade antiga (regex), agora é um egg. A implementação nova é irregex, em Scheme puro.
quinta-feira, 28 de abril de 2011
"Novo" equipamento
Amplificador de microfones Stevaux (50W, com 6L6 na saída).
Alguém sabe mais sobre esta marca? Até onde sei, foi (é?) um fabricante de transformadores e caixas metálicas.
Todo o circuito é valvulado, inclusive a fonte.
Fotos em resolução maior podem ser vistas em http://parenteses.org/mario/fotos/stevaux
quinta-feira, 21 de abril de 2011
sábado, 16 de abril de 2011
Primeiro esboço de R7RS
Ontem foi anunciado o primeiro esboço [PDF] da nova versão da especificação de Scheme.
O comitê responsável por preparar a nova versão da especificação decidiu dividi-la em duas partes: uma básica e outra com funcionalidades opcionais que podem não ser necessárias ou adequadas em alguns contextos. O documento anunciado é referente à parte básica (small language).
Felizmente, R7RS baseia-se em R5RS, e não em R6RS. O texto preliminar da nova especificação é de leitura agradável, não sendo tão "denso" quanto o das versões anteriores.
O comitê responsável por preparar a nova versão da especificação decidiu dividi-la em duas partes: uma básica e outra com funcionalidades opcionais que podem não ser necessárias ou adequadas em alguns contextos. O documento anunciado é referente à parte básica (small language).
Felizmente, R7RS baseia-se em R5RS, e não em R6RS. O texto preliminar da nova especificação é de leitura agradável, não sendo tão "denso" quanto o das versões anteriores.
terça-feira, 12 de abril de 2011
Novas versões para awful e extensões de suporte a bancos de dados
Há pouco foram lançadas versões novas das extensões awful, awful-sql-de-lite, awful-sqlite3 e awful-postgresql.
Os destaques da nova versão de awful são as melhorias significativas para possibilitar a instalação de múltiplos aplicativos em um mesmo virtual host, uma interface sobre spiffy-request-vars e a correção de um bug crítico devido ao reuso de threads feito pelo servidor web Spiffy.
As notas sobre a nova versão de awful (0.31) estão abaixo:
As novas versões das extensões de suporte a sistemas de bancos de dados exportam um novo procedimento para permitir o chaveamento entre bases de diferentes bancos. Assim, o uso de múltiplos sistemas de bancos de dados (e múltiplas bases de dados) em awful fica facilitado.
Os destaques da nova versão de awful são as melhorias significativas para possibilitar a instalação de múltiplos aplicativos em um mesmo virtual host, uma interface sobre spiffy-request-vars e a correção de um bug crítico devido ao reuso de threads feito pelo servidor web Spiffy.
As notas sobre a nova versão de awful (0.31) estão abaixo:
* Added a tiny wrapper around spiffy-request-vars, adding the
with-request-variables macro and exporting
spiffy-request-vars's converters.
* Updated JQuery from version 1.5.1 to 1.5.2.
* Better support for multiple applications under the same virtual
host (add-request-handler-hook! and remove-request-handler-hook!)
* $db checks if database access is enabled via (enable-db) and
throws an error if it is not.
* Fixed critical bug regarding to parameters and thread reuse by Spiffy
* Fixed redirect-to but introduced in version 0.29
As novas versões das extensões de suporte a sistemas de bancos de dados exportam um novo procedimento para permitir o chaveamento entre bases de diferentes bancos. Assim, o uso de múltiplos sistemas de bancos de dados (e múltiplas bases de dados) em awful fica facilitado.
sexta-feira, 8 de abril de 2011
Alinhamento de astros
Uma coincidência: atualmente as duas mais expressivas implementações de compilador de Scheme->C (Chicken e Gambit) e um dos mais importantes compiladores de C (GCC) estão na mesma versão: 4.6.
A expectativa é que Chicken quebre esse alinhamento nos próximos dias com o lançamento da versão 4.7.
Hoje a versão release candidate para 4.7.0 foi atualizada no branch prerelease do repositório git do compilador.
Também hoje foi lançado o tarball de desenvolvimento, versão 4.6.7, com as funcionalidades que farão parte da versão 4.7.0.
A expectativa é que Chicken quebre esse alinhamento nos próximos dias com o lançamento da versão 4.7.
Hoje a versão release candidate para 4.7.0 foi atualizada no branch prerelease do repositório git do compilador.
Também hoje foi lançado o tarball de desenvolvimento, versão 4.6.7, com as funcionalidades que farão parte da versão 4.7.0.
domingo, 27 de fevereiro de 2011
Awful 0.29
Há pouco foi lançada a versão 0.29 de awful. Nada de muito revolucionário nesta nova versão, mas correção de pelo menos um bug crítico e novas funcionalidades/atualizações menores. O changelog para a versão 0.29 está abaixo:
* Updated JQuery from version 1.5.0 to 1.5.1.
* ajax and periodical-ajax bugfix (for situations when they
are used simultaneously, or periodical-ajax and add-javascript).
* The default URI for ajax-library is now protocol-relative
(thanks to Peter Bex).
* Added the javascript-position parameter.
sábado, 26 de fevereiro de 2011
REPL ilustrado
O REPL (Read, Eval, Print, Loop), vulgar e erroneamente conhecido como interpretador (existem compiladores com ambiente interativo), é uma das ferramentas mais indispensáveis para programadores. É o tipo de coisa que, depois que nos acostumamos a usar, é difícil viver sem.
Abaixo está uma implementação simplificada e graficamente comentada em Chicken Scheme que ilustra o conceito:
O código acima é executável:
Abaixo está uma implementação simplificada e graficamente comentada em Chicken Scheme que ilustra o conceito:
O código acima é executável:
$ csi -s repl.scm
(define (fatorial n) (if (< n 2) 1 (* n (fatorial (- n 1)))))
#<unspecified>
(fatorial 6)
720
segunda-feira, 7 de fevereiro de 2011
Recarregando aplicações em awful através do Emacs
Abaixo está um hackzinho para recarregar aplicações em awful através do Emacs, o qual pode ser bem útil quando usando awful no modo desenvolvimento (
O código acima define uma função interativa (
O cliente HTTP pode ser qualquer um de linha de comando. O
Abaixo está um screenshot do Emacs logo após a execução de
--development-mode
). No modo de desenvolvimento, awful automaticamente define o caminho /reload
, o qual, quando requisitado, recarrega as aplicações.(defun awful-reload ()
(interactive)
(shell-command "lynx -dump http://localhost:8080/reload"))
(add-hook 'scheme-mode-hook
#'(lambda ()
(local-set-key "\C-cR" 'awful-reload)))
O código acima define uma função interativa (
awful-reload
) que pode ser invocada no Emacs através de C-cR
estando-se no modo Scheme.O cliente HTTP pode ser qualquer um de linha de comando. O
lynx
serve bem a este propósito por fornecer a opção -dump
, que gera a saída sem formatação, a qual pode ser exibida com facilidade no buffer do Emacs.Abaixo está um screenshot do Emacs logo após a execução de
awful-reload
através de C-cR
.domingo, 6 de fevereiro de 2011
Awful 0.28 e awful-ssl
Hoje foi lançada a versão 0.28 de awful. A nova versão apresenta correções de bugs, soluções para algumas limitações e algumas novas funcionalidades.
Também foi lançada a versão inicial da extensão awful-ssl, a qual permite o uso de awful com SSL de forma fácil.
Também foi lançada a versão inicial da extensão awful-ssl, a qual permite o uso de awful com SSL de forma fácil.
Assinar:
Postagens (Atom)