Skip to content

Latest commit

 

History

History
60 lines (43 loc) · 2.42 KB

2022-09-12.md

File metadata and controls

60 lines (43 loc) · 2.42 KB

Encontro 002

Encontro 2

https://youtu.be/SLj9dx-P_zs

Informações

  • Data: segunda, 12 de setembro de 2022, 16:30
  • Local: Google Meet
  • Encontro Passado

Participantes

Agenda

  • boas vindas
  • setup do ambiente compartilhado
  • escolha dos problemas
  • ack das regras e início da gravação
  • discussão, resumo dos temas cobertos, dúvidas
  • registro dos produtos e agendamento do próximo

Produtos

Do encontro

Outros assuntos, notas e links

Testemunhos / Sumários

Fabricio

O segundo encontro foi mais curto que o primeiro, pois devido a uma agenda conflitante de parte dos convidados, acabamos começando atrasado.

Ainda assim, conseguimos pegar o primeiro desafio do site de exercícios https://ocaml.org/problems que era a construção de uma função que, dada uma lista, retornasse o último elemento de uma lista.

Eu iniciei dando uma mordida maior que a boca e já querendo fazer esta função listas onde os elementos pudessem ser de qualquer tipo, me embananei na sintaxe dos genérics...

Demos um passo para trás e nos contentamos em fazer uma função que aceitasse apenas listas de números inteiros (i32). E passamos rapidamente um pouco por cima dos temas de slice, array, a diferença entre eles e como passar a referencia de um slice para uma função.

Para mim foi bom o encontro por ter dado a oportunidade de usarmos o "enum" Option<i32> para fazer a função funcionar também quando recebe a lista vazia. E neste caso, ao invés de retornar um numero ter dois tipos de retorno, ou um "Some(10)" ou um None. Isto ajuda a evitar "surpresas" comuns em linguagens onde a mesma funão pode retornar um valor nulo e nao obrigar que este caso seja tratadoa. (o Billion Dollar Mistake)

Foi até interessante que uns dias depois do encontro assisti este video no Youtube que fala sobre esta segurança de não ter caminhos de execução que causem crash em runtime.