@ no recuerdo la definición creo que es foldr::(a -> b -> b) -> b -> [a] -> b. la evaluación es estricta creo🤔.soy noob con haskell me gusta muchísimo.
3 года назад
@@lumed2189 Sigue con Haskell, es un lenguaje que moldeará tu forma de pensar de una manera que te ayudará a programar mucho mejor en otros lenguajes. Y las oportunidades laborales de Haskell son muy buenas.
@ He escuchado lo contrario , que nadie lo usa. Cómo podría empezar?(en lo laboral siendo novato)porque me siento atorado y estas cosas se olvidan sino se practican.
3 года назад
@@lumed2189 Con un buen libro de Haskell. He escuchado de dos buenos libros para empezar: Learn you a Haskell y el otro es Real World Haskell.
5 лет назад+3
¿Has usado lambdas o funciones anónimas en Java u otros lenguajes de programacion?
Ufffffff con todos mis respetos no me mola nada el ejemplo. 1º -> NO has implementado la interface Operacionde2Num en la clase Main, ha sido lo primero que me ha saltado a la vista y en lugar de eso, has creado un objeto (operacion) para la interface como si fuera una clase normal, con lo cual, ¿para qué la interface?. 2º -> Has usado un tercer parámetro (int inicial) en el método reducir() cuando como muchísimo se usan 3 parámetros, si y solo si, es totalmente necesario porque mas de 3 parámetros en una función son malas practicas y luego ese mismo parámetro solo lo usas 1 vez para que sea igual a 0 y por tanto, no vuelves a usarlo. 3º -> Te podías haber ahorrado el tercer parametro (int inicial), en el metodo reducir() haciendo int acumulador = 0 y luego acumulador += operacion.aplicar(numero, acumulador). 4º -> Debido a todo lo anterior, en la variable sumaTotal podrías haberte ahorrado el parametro inicial:0 habiendo implementado la interface en la clase Main (porque para eso se usan las interfaces), y haber desarrollando el metodo aplicar() de la interface en la clase Main y luego hacer uso de la expresion lambda con la misma operacion y habrias obtenido el mismo resultado.... 5º -> Cuidado con los métodos static o estáticos porque te estás saltando el uso fundamental de la programación orientada a objetos. Conclusión: Podrías haber usado un ejemplo mucho mejor que se entendiera mucho más y sobre todo, los alumnos mas novatos habrian asimilado mucho mejor el uso de las expresiones lambda. Muchas gracias de todas formas y un saludo.
Súper bien explicado. Ya con otros videos me estaba frustrando porque no entendía, jaja 😢
Primer video que veo sobre lambdas y estoy flipando
MUchas gracias bro. saludos desde colombia.
hola, me acuerdo ver lambdas con C# con linq últimamente he visto funcion flecha con JS retomar Java se ve genial gracias por tu video Saludos
Genial, de verdad explicas super, te encontré porque comenzaste a seguirme en instagram y me dio curiosidad xD
Gracias!
buenas bro estaba leyendo sobre un patron de diseño que se llama strategy y dice que las lambda son mejor alternativa me puedes explicar esto ?
La verdad es que las lambdas te ayudan a reducir codigo de implementacion del patron strategy, no es un reemplazo.
Reduce es un fold en haskell? .saludos
Me parece que sí, aunque no he visto Haskell, he visto fold en Scheme y es practicamente lo mismo, he visto fold left y fold right.
@ no recuerdo la definición creo que es
foldr::(a -> b -> b) -> b -> [a] -> b.
la evaluación es estricta creo🤔.soy noob con haskell me gusta muchísimo.
@@lumed2189 Sigue con Haskell, es un lenguaje que moldeará tu forma de pensar de una manera que te ayudará a programar mucho mejor en otros lenguajes. Y las oportunidades laborales de Haskell son muy buenas.
@ He escuchado lo contrario , que nadie lo usa. Cómo podría empezar?(en lo laboral siendo novato)porque me siento atorado y estas cosas se olvidan sino se practican.
@@lumed2189 Con un buen libro de Haskell. He escuchado de dos buenos libros para empezar: Learn you a Haskell y el otro es Real World Haskell.
¿Has usado lambdas o funciones anónimas en Java u otros lenguajes de programacion?
👏👏👏👏
3:29 Todavía no explicó de que va ese static, ni la palabra private.
Por lo menos no en este array de videos sobre Java.
mira los metodos o variable static, son solo usable por la clase. el objeto no hereda esos metodos o variables.
Chileno, ¿verdad?
Que conveniente, me hacia falta ver que era los lambdas edit: COMO RAYOS METISTE UN ; DENTO DE LOS PARAMETROS DE UNA FUNCION? WTF
Minuto?
@ 10:00, es algo parecido a las clases anonimas?
Ufffffff con todos mis respetos no me mola nada el ejemplo.
1º -> NO has implementado la interface Operacionde2Num en la clase Main, ha sido lo primero que me ha saltado a la vista y en lugar de eso, has creado un objeto (operacion) para la interface como si fuera una clase normal, con lo cual, ¿para qué la interface?.
2º -> Has usado un tercer parámetro (int inicial) en el método reducir() cuando como muchísimo se usan 3 parámetros, si y solo si, es totalmente necesario porque mas de 3 parámetros en una función son malas practicas y luego ese mismo parámetro solo lo usas 1 vez para que sea igual a 0 y por tanto, no vuelves a usarlo.
3º -> Te podías haber ahorrado el tercer parametro (int inicial), en el metodo reducir() haciendo int acumulador = 0 y luego acumulador += operacion.aplicar(numero, acumulador).
4º -> Debido a todo lo anterior, en la variable sumaTotal podrías haberte ahorrado el parametro inicial:0 habiendo implementado la interface en la clase Main (porque para eso se usan las interfaces), y haber desarrollando el metodo aplicar() de la interface en la clase Main y luego hacer uso de la expresion lambda con la misma operacion y habrias obtenido el mismo resultado....
5º -> Cuidado con los métodos static o estáticos porque te estás saltando el uso fundamental de la programación orientada a objetos.
Conclusión: Podrías haber usado un ejemplo mucho mejor que se entendiera mucho más y sobre todo, los alumnos mas novatos habrian asimilado mucho mejor el uso de las expresiones lambda.
Muchas gracias de todas formas y un saludo.