Expressões lambda
Enviado: 16 Dez 2013 22:45
Olá
Sou programador especialista em .net, mas, também sou apaixonado pelo xBase, já trabalhei em uma empresa com xBase, e, inclusive ainda trabalho, mas, com clipper 5.2, mas enfim, visto que o harbour é uma linguagem extremamente poderosa e com varios recursos para trabalharmos, em questão de sintaxe, semantica e geração de código, poderiamos quem sabe, tratar de desenvolver um recurso, que hoje em dia é maravilhoso, que é a utilização de expressões lambda para realizar querys em arrays, listas, strings, dicionarios, hash e etc...
Vou dar um simples exemplo de uma expressão lambda ( linq )
Como vocês podem ver, estou realizando uma query na lista de strings, fazendo a seleção de apenas alguns itens, onde isso é muito mais simples do que realizar um FOR ou um WHILE ou um FOREACH para realizar os processos que deseja.
http://www.codeproject.com/Articles/507 ... -to-Lambda
Realizando alguns estudos aqui, percebi que em harbour, talvez seja posivel adicionar tal poder e eficiência, mas, infelizmente nao tenho tanto conhecimento na linguagem assim, então, se alguem quiser 'abdusir' a idéia, ta ai, uma idéia muito boa
Sou programador especialista em .net, mas, também sou apaixonado pelo xBase, já trabalhei em uma empresa com xBase, e, inclusive ainda trabalho, mas, com clipper 5.2, mas enfim, visto que o harbour é uma linguagem extremamente poderosa e com varios recursos para trabalharmos, em questão de sintaxe, semantica e geração de código, poderiamos quem sabe, tratar de desenvolver um recurso, que hoje em dia é maravilhoso, que é a utilização de expressões lambda para realizar querys em arrays, listas, strings, dicionarios, hash e etc...
Vou dar um simples exemplo de uma expressão lambda ( linq )
Código: Selecionar todos
List<string> minha_lista = new List<string>();
minha_lista.Add("dasbldsajknksldjanl");
minha_lista.Add("eakmdçlsa,mdksadsmdlksandsajlda");
minha_lista.Add("dasndksaqnwnçoeqmlqwmdadod ");
minha_lista.Add("87 3hg3ryh uyhuçnhdhfasgbafçpahçfonauifaif");
minha_lista.Add("h iu dnksnui dsnan oifjsofisamjofisajnfasb hoça");
minha_lista.Add("sdlkmasadlkjdsaoklasklasjldas");
minha_lista.Add("Maria");
minha_lista.Add("Pedro");
minha_lista.Add("João");
minha_lista.Add("Eu");
minha_lista.Add("Você");
minha_lista.Add("Nós");
minha_lista.Add("dsabhdsakjsdandsanjdsansdnsdnjlk");
List<string> minha_nova_lista = ( from mnl in minha_lista
where mnl.StartsWith("d") && mnl.Length > 2
select mnl).ToList();http://www.codeproject.com/Articles/507 ... -to-Lambda
Realizando alguns estudos aqui, percebi que em harbour, talvez seja posivel adicionar tal poder e eficiência, mas, infelizmente nao tenho tanto conhecimento na linguagem assim, então, se alguem quiser 'abdusir' a idéia, ta ai, uma idéia muito boa