Empresas apoiadoras
Universidades participantes
Projetos em andamento
- 1. Um backend eBPF para a linguagem de programação Elixir. Escrevendo um compilador e uma biblioteca de suporte para traduzir programas Elixir em código eBPF de baixo nível que será executado no Kernel do Linux. [repositório] [LaC/DCC/UFMG].
Projetos concluídos
- 1. Catálogo de code smells para Elixir. Prospeção, documentação e validação com a comunidade de um catálogo de code smells mais comuns e relevantes em sistemas Elixir. [repositório] [ASERG/DCC/UFMG].
Publicações
-
1.
Code Smells in Elixir: Early Results from a Grey Literature
Review, International Conference on Program Comprehension (ICPC), 2022.
[slides]
[video]
[podcast (pt-BR)]
Lucas Vegi e Marco Tulio Valente, do ASERG/DCC/UFMG.
-
2.
Understanding code smells in Elixir functional language, Empirical Software Engineering, 2023.
[Link]
[Tweet]
Lucas Vegi e Marco Tulio Valente, do ASERG/DCC/UFMG.
Por que Elixir?
Por que Elixir?
Elixir é uma linguagem de programação dinâmica e funcional, usada para construir aplicações escaláveis desenvolvida pelo brasileiro José Valim em 2012.
O Elixir roda em cima da Máquina Virtual do Erlang, conhecida pela execução de sistemas distribuídos, tolerantes a falhas e de baixa latência.
Áreas de Interesse
Computação numérica e aprendizado de máquina
A comunidade Elixir começou em 2021 um esforço para trazer abstrações de computação numérica para o ecossistema, incluindo execução em GPUs. Temos interesse em pesquisa em redes neurais com Axon e aprendizado de máquina como um todo.
Ensino e cadernos computacionais (notebooks)
Temos interesse em tornar o Elixir, uma linguagem funcional, concorrente, e distribuída, mais acessível para o ensino e documentação. Uma iniciativa recente nessa área é o Livebook, que deixa o aprendizado com o Elixir mais acessível e moderno através de cadernos computacionais.
Sistema concorrentes e distribuídos
O Elixir roda em cima da máquina virtual do Erlang, desenhada para a construção de sistemas concorrentes e distribuídos. Estudo de algoritmos distribuídos, métodos formais, tolerância a falhas, CRDTs, e mais são áreas de interesse.
Compiladores e tipagem
Código Elixir compila para o formato .beam
, que o
formato de código da Erlang VM. Quando carregado, o código é
compilado just-in time para código de máquina. Exemplos de áreas
de pesquisa incluem aplicações de otimizações a nível de SSA,
tipagem, alocação de registro, e durante a emissão de código de
máquina.
A sua sugestão!
O nosso maior interesse é em fomentar a pesquisa, independente da área de interesse. As áreas acima são baseadas em atividades já existentes, mas outras áreas e sugestão são bem-vindas, como Engenharia de software, Computação paralela, Processamento de dados, e mais!
Como funciona?
Aplicação
O Orientador ou Pesquisador responsável por coordenar bolsas de mestrado e doutorado enviam o seu projeto de pesquisa através do preenchimento deste formulário.
Avaliação
Se o projeto atender os Requistos do Programa, nós fazemos a conexão entre a Universidade e a Empresa que financiará as bolsas de mestrado e/ou doutorado.
Aprovação
A empresa envia o valor referente a 1 (um) ano de Pesquisa para o Instituto e/ou Universidade responsável. O Orientador divulga a bolsa em sua Universidade e junto ao seu orientando desenvolve a pesquisa.
Requisitos do Programa
Pesquisa em tecnologia
As bolsas de mestrado e doutorado devem ser destinadas a área de tecnologia. Confira as áreas de interesse.
Elixir
O código desenvolvido durante a pesquisa deve ser, em sua maioria, escrito em Elixir. Ou a pesquisa deve ter o ecosistema do Elixir e a Máquina Virtual do Erlang como foco.
Open-Source
O código desenvolvido durante a pesquisa deve ser disponibilizado em licenças de código aberto, de forma a contribuir para o fortalecimento da comunidade.
FAQ
Como a minha Empresa pode fazer parte do projeto?
Para a sua empresa fazer parte do projeto, basta preencher o formulário clicando aqui e entraremos em contato com mais detalhes.
Como a minha Universidade pode fazer parte do projeto?
Para a sua universidade fazer parte do projeto, basta preencher o formulário clicando aqui e entraremos em contato com mais detalhes.
Qual é o valor e a duração do financiamento da bolsa de Mestrado e/ou Doutorado?
O valor da bolsa é regulamentado pelas próprias Universidades / Fundações de Pesquisa, na faixa de R$1600-R$2300 mensais, dependendo da localização e do tipo de bolsa.
A duração de uma bolsa é de 1 (um) ano e pode ser renovada através do mesmo processo.
O que é esperado dos Pesquisadores ao receber uma bolsa?
É esperado que você desenvolva sua pesquisa em Tecnologia (em suas diversas áreas) usando a linguagem de programação Elixir e que ao final sua pesquisa seja disponibilizada em licenças de código aberto.
Como é feito o repasse da bolsa de pesquisa?
O valor referente a 1(um) ano de pesquisa, será enviado pela empresa patrocinadora a Universidade e/ou Fundação de Pesquisa que por sua vez será responsável pela seleção e oferta da bolsa aos estudantes da Instituição.
Sou estudante, posso aplicar a uma bolsa individual?
Não. Todo o processo é feito entre a Empresa e a Universidade e/ou Instituto de Pesquisa. Se esse for o seu caso, converse com o seu orientador e peça-o para fazer a aplicação do Projeto de Pesquisa em nosso site.