Clique abaixo para nos ajudar
Conectar-se

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
18 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 18 Visitantes :: 1 Motor de busca

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
Espessura do cursor intermitente

7/3/2017, 09:08 por Jefferson Matakas

Bom dia a todos !!

Existe uma opcao no windows que pode ser acessada atraves da 'central da …

Comentários: 0

DESENVOLVIMENTO EM REDES

4/3/2017, 18:45 por AJC

Pessoal tem ou conhece livros ou material para programação em
redes usando banco de dados nativo …

Comentários: 0

USAR REPORT FORM

30/12/2016, 09:06 por AJC

Pessoal bom dia,
Estou com um grande problema, já pesquisei muita coisa sobre report form, mas o …

Comentários: 4

Como preencher campos vazios

9/2/2017, 11:55 por Linghston

Pessoal boa tarde,

É o seguinte, eu preciso preencher os campos de uma coluna da tabela DBF que …

Comentários: 2

Enviar msg para WhatsAPP via VFP

7/2/2017, 10:31 por Eliana

Olá Pessoal!

Alguém sabe se é possível enviar mensagem para o WhatsAPP via VFP?


Grata


Comentários: 0

Estatísticas
Temos 7037 usuários registrados
O último usuário registrado atende pelo nome de GETULIO

Os nossos membros postaram um total de 31 mensagens em 17 assuntos

Lazylist execução para Ruby

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Anexo Lazylist execução para Ruby

Mensagem por Marcos Guedes em 11/7/2009, 09:35

Esta classe implementa listas para Ruby. Essas listas evitam o cálculo dos valores que não sejam necessários para alguma computação. Assim, é possível definir infinitas listas com uma quantidade limitada de memória. Um valor que não tenha sido utilizado ainda é calculado e guardado na lista. Um valor que é utilizado para uma segunda vez é computado apenas uma vez e apenas ler a partir de memória para o segundo uso.

Na versão mais recente acrescentei a lista método de Kernel, para encurtar a criação de listas (especialmente as mais complicadas ones). É possível criar uma lista infinita de como aqueles que:
Código:
ones = list(1) { ones } # => [... ]
ones.take 3  # => [1, 1, 1]
ones =  # => [1,... ]
Para criar o naturals natural, você pode fazer isso (ou utilizar LazyList.from (1)):
Código:
def from(n = 1)
    list(n) { from(n + 1) }
end
naturals.take 3  # => [1, 2, 3]
naturals = from  # => [1, 2, 3,... ]
Ou menor:
Código:
naturals = LazyList[1..Infinity]
Para combinar as listas, a utilização zip:
Código:
naturals_plus_one = naturals.zip(ones) { |x,y| x + y } # => [2,... ]
naturals_plus_one.take 3  # => [2, 3, 4]
naturals_plus_one  # => [2, 3, 4,... ]
Uma alternativa é construir a sintaxe:
Código:
naturals_plus_one = build { x + y }.where :x => naturals, :y => ones # => [... ]
naturals_plus_one.take 3 # => [2, 3, 4]
naturals_plus_one  # => [2, 3, 4,... ]
A lista com o bloco sintaxe agora suporta Haskell-like:
Código:
odds = list { x }.where(:x => naturals) { x % 2 == 1 }  # => [... ]
evens = naturals.select { |x| x % 2 == 0 }  # => [... ]
example = list { [ x, y ] }.where(:x => odds, :y => evens) { y < x } # => [... ]
example.take 3  # => [[3, 2], [5, 2], [5, 4]]
example  # => [[3, 2], [5, 2], [5, 4],... ]
Com a lista de exemplos PI / pi.rb você pode provar algumas propriedades perigosas da PI:
Código:
puts "Proof that PI is the number of the beast"
p PI.take(10)

def window(l, n, m = 0)
  list([ l.take(n) * '', m ]) { window(l.drop, n, m + 1) }
end
w = window(PI, 3)
index = w.find { |(x, i)| x == '666' and break i }
puts "Found #{PI.take_span(index, 3)} at #{index}!"
Saídas:
Código:
Found 666 at 2440!

Instalação

A biblioteca pode ser instalado através rubygems:
Código:
# gem install lazylist
A fonte do arquivo também pode ser baixado diretamente do [url=rubyforge.org]rubyforge.org[/url].

Autor
Florian Frank <flori@ping.de>

Licença

Isto é software livre; você pode redistribuí-lo e / ou modificá-lo sob os termos da GNU General Public License versão 2 conforme publicada pela Free Software Foundation: GNU GPL.

Nota: Não progamo em Ruby, mas achei que poderia ser do interesse de alguns, a divulgação deste conteúdo.
Esta fonte foi traduzida do seguinte link:
http://lazylist.rubyforge.org/

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum