Mestre, muito bom seu video, achei muito didático, sou relativamente novo em Clojure e isso ajudou muito a entender esses conceitos e como eles são vistos em Clojure vlw demais, e sim, gostaria muito de ver uma versão com protocols e/ou multimethods
Clojure não tem decorators. Na minha opinião decorators é algo "fácil" mas não "simples". O criador do Clojure, Rich Rickey, tem uma palestra em que ele diferencia fácil de simples.
@@andreciobezerra1198 Interoperabilidade com Java: Clojure foi construído sobre a JVM (Java Virtual Machine), o que significa que você tem acesso direto a todo o ecossistema Java. Isso é útil para empresas que já têm uma base de código Java substancial ou que desejam aproveitar bibliotecas e frameworks Java estabelecidos. Linguagem LISP: Se você gosta da sintaxe Lisp e do poder de metaprogramação que ela oferece, Clojure pode ser uma escolha melhor para você do que Elixir. A linguagem também oferece uma poderosa macro system que permite aos desenvolvedores estender e moldar a linguagem de maneiras que não são possíveis com Elixir. Multithreading e concorrência: Clojure tem suporte integrado para a modelagem de problemas de concorrência através de abstrações como atoms, agents, refs, e vars. Embora o Elixir também tenha forte suporte para concorrência e tolerância a falhas, o modelo é muito diferente (baseado em processos leves e isolados) e pode não ser tão adequado para todos os cenários de uso. Estruturas de dados imutáveis: Enquanto Elixir também suporta imutabilidade, a imutabilidade é mais central em Clojure e é aplicada por padrão a todas as suas estruturas de dados. Isso pode tornar mais fácil raciocinar sobre o estado do programa e evitar bugs relacionados à mutação de estado. Transducers e sequências lazy: Clojure tem suporte robusto para sequências lazy, que permitem o processamento eficiente de coleções de dados, mesmo muito grandes. Os transducers de Clojure também são uma maneira poderosa de compor operações de transformação de dados.
@@otaviolemos Concordo qto a JVM e questão dos tranducers/lazy, mas acho as macros em Elixir extremamente poderosas e o modelo de Actors vejo como mais interessante para sistemas distribuídos. Bem, ambas são linguagens poderosas, que tendem a crescer nos próximos anos
Parabens pelo video muito bom
Mestre, muito bom seu video, achei muito didático, sou relativamente novo em Clojure e isso ajudou muito a entender esses conceitos e como eles são vistos em Clojure vlw demais, e sim, gostaria muito de ver uma versão com protocols e/ou multimethods
Que bom que ajudou: obrigado!
Quando se perde o medo de clojure e de linguagens funcionais ai a coisa fica divertida :)
Parabéns pelo vídeo e pelo conteúdo do canal. Qual IDE vc esta usando?
VS Code mesmo. :)
Closure suporta decorators? Porque com TS da pra colocar todas essas HOF como decorators o que fica bem fácil de ler e entender depois.
Não sei, pra falar a verdade. Mas tem algum post algo assim, sobre isso que você falou no TS?
Clojure não tem decorators. Na minha opinião decorators é algo "fácil" mas não "simples". O criador do Clojure, Rich Rickey, tem uma palestra em que ele diferencia fácil de simples.
Professor, o senhor continua trabalhando como professor universitário?
Sim!
Pq Clojure e não Elixir ?
Pq Elixir e não Clojure?
@@otaviolemos maior suporte a concorrência, tolerância a falhas, dica de tipos,. comunidade e é do Brasillll
Ah, a BEAM é mais leve que a JVM
@@andreciobezerra1198 Interoperabilidade com Java: Clojure foi construído sobre a JVM (Java Virtual Machine), o que significa que você tem acesso direto a todo o ecossistema Java. Isso é útil para empresas que já têm uma base de código Java substancial ou que desejam aproveitar bibliotecas e frameworks Java estabelecidos.
Linguagem LISP: Se você gosta da sintaxe Lisp e do poder de metaprogramação que ela oferece, Clojure pode ser uma escolha melhor para você do que Elixir. A linguagem também oferece uma poderosa macro system que permite aos desenvolvedores estender e moldar a linguagem de maneiras que não são possíveis com Elixir.
Multithreading e concorrência: Clojure tem suporte integrado para a modelagem de problemas de concorrência através de abstrações como atoms, agents, refs, e vars. Embora o Elixir também tenha forte suporte para concorrência e tolerância a falhas, o modelo é muito diferente (baseado em processos leves e isolados) e pode não ser tão adequado para todos os cenários de uso.
Estruturas de dados imutáveis: Enquanto Elixir também suporta imutabilidade, a imutabilidade é mais central em Clojure e é aplicada por padrão a todas as suas estruturas de dados. Isso pode tornar mais fácil raciocinar sobre o estado do programa e evitar bugs relacionados à mutação de estado.
Transducers e sequências lazy: Clojure tem suporte robusto para sequências lazy, que permitem o processamento eficiente de coleções de dados, mesmo muito grandes. Os transducers de Clojure também são uma maneira poderosa de compor operações de transformação de dados.
@@otaviolemos Concordo qto a JVM e questão dos tranducers/lazy, mas acho as macros em Elixir extremamente poderosas e o modelo de Actors vejo como mais interessante para sistemas distribuídos. Bem, ambas são linguagens poderosas, que tendem a crescer nos próximos anos