Executando verificação de segurança...
1

Meus 2 cents,

Galera, existe algum caminho para pesquisa em ciência da computação(voltado ao software livre) para eu estudar e criar linguagens que acredito remuneradamente?

Aqui precisa definir algumas coisas - pesquisa normalmente implica em:

  • Universidade publica federal/estadual: tem mais flexibilidade por pesquisa pura, sem uma aplicacao imediata (que me parece o caso). Tem pessoas que gostam deste tipo de dedicacao e sao remunerados por isso (as bolsas sao salarios para pesquisadores). A dificuldade eh entrar em uma universidade destes e depois conseguir a bolsa, mas existem caminhos (CNPq, Finep, programams de iniciacao cientifica, parcerias, etc)

  • Universidades privadas: algumas ate fazem pesquisa, mas geralmente com patrocinio ligado a uma empresa - tenho duvidas se seria o caso aqui.

  • Empresas privadas com areas de P&D (vou citar Embraer e Petrobras para dar uma ideia, mas existem diversas empresas em areas bem diversas que fazem este tipo de acao): Voce pode conseguir uma empresa que tenha necessidade especial pelo que voce pesquisando e entao patrocinar tua bolsa/trabalho.

Em qualquer das opcoes acima, uma coisa que faz diferenca eh participar de forma ativa das comunidades voltadas ao assunto de interesse: voce conhece as pessoas, ve o que elas estao fazendo, mostra o que voce esta fazendo, vao trocando dados e eventualmente surgem parcerias. Mas da trabalho, exige um bocado de energia e pode demorar para maturar e comecar a dar resultado financeiro concreto.

O que comentei acima serve tanto para nacional como gringa. Muitas pessoas se formam em universidades publicas no Brasil e conseguem projetos de intercambio para prosseguir estudos na gringa. Novamente - participar e conhecer pessoas eh fundamental para conseguir avancar. O estudo solitario pode trazer satisfacao individual - mas eh a colaboracao que pode te permitir avancar na atividade.

Quanto ao teus sonhos - sao teus e de mais ninguem. Se valem a pena ou nao, se sao tangiveis ou nao eh voce que vai descobrir - mas o que posso destacar eh: nao vao vir sem persistencia. Sobre o assunto tem um livro que pode servir de inspiracao: "Pressa de futuro: Como Luiz Donaduzzi criou uma gigante farmacêutica e uma revolução na educação" sobre os laboratorios Pratti" (disponivel de graca via assinatura Kindle Unlimited que custa R$ 20 na amazon, ou seja, mais barato assinar o kindle, ler pela web que comprar o livro fisico, noves fora poder ler todo o catalogo kindle unlimited).". O livro tem problemas (nao critica negativamente o biografado, so fala bem dele), mas pelo menos mostra que vida de pesquisador nao eh facil e que as vezes tem de ralar alternativas para fazer a coisa acontecer. De haver outros livros de graca tao bons quanto esse sobre o assunto - mas nao lembro, neste ponto a IA pode te ajudar.

Se voce gosta de "criar linguagens" - uma bibliografia basica poderia ser (faceis de encontrar em PDF para download):

OBS: Nao sao leituras "tradicionais" para um iniciante - mas se voce quer trabalhar criando linguagens, faz parte da brincadeira.

OBS 2: Sim, pedi para o gepeto criar a lista, mais por dificuldade de achar todas as referencias que precisaria, mas ele fez um trabalho razoavel praticamente tem tudo que ia recomendar (em especial e imprescindivel no topico 1, como Tanenbaum e "dragao").

1. Fundamentos de Compiladores e Linguagens

  • Aho, A. V., Lam, M. S., Sethi, R., Ullman, J. D.
    Compilers: Principles, Techniques, and Tools (2nd Edition). Pearson, 2006.
    → Conhecido como “O Dragão”. É a obra clássica sobre compiladores — cobre análise léxica, sintática, semântica e geração de código. Leitura obrigatória para qualquer pessoa que projete uma linguagem.

  • Tanenbaum, A. S., & Bos, H.
    Modern Operating Systems (4th Edition). Pearson, 2014.
    → Embora não trate diretamente de linguagens, Tanenbaum contextualiza o impacto das linguagens na implementação de sistemas operacionais, especialmente em C e C++. Útil para entender o elo entre linguagem e arquitetura.

  • Wirth, N.
    Compiler Construction. Addison-Wesley, 1996.
    → Um livro mais enxuto e direto que o Dragão, escrito pelo criador de Pascal e Modula. Foca na clareza conceitual e na construção prática de compiladores simples.


2. Teoria das Linguagens e Autômatos

  • Hopcroft, J. E., Motwani, R., & Ullman, J. D.
    Introduction to Automata Theory, Languages, and Computation (3rd Edition). Pearson, 2007.
    → Fundamenta os conceitos formais de gramáticas, autômatos e linguagens — base teórica para qualquer sintaxe de linguagem de programação.

  • Scott, M. L.
    Programming Language Pragmatics (4th Edition). Morgan Kaufmann, 2015.
    → Excelente livro que une teoria e prática. Discute sintaxe, semântica, implementação e comparação entre paradigmas (imperativo, funcional, OO, lógico etc.).


3. Paradigmas e Design de Linguagens

  • Sebesta, R. W.
    Concepts of Programming Languages (12th Edition). Pearson, 2023.
    → Cobre a evolução histórica e os conceitos fundamentais de design. Um dos livros mais adotados em cursos universitários.

  • Tucker, A., & Noonan, R.
    Programming Languages: Principles and Paradigms. McGraw-Hill, 2006.
    → Aborda com clareza os princípios que guiam a criação de linguagens e os diferentes paradigmas de programação.

  • Pierce, B. C.
    Types and Programming Languages. MIT Press, 2002.
    → Obra de referência sobre sistemas de tipos, inferência e segurança em linguagens modernas. Mais teórica, mas indispensável para projetos robustos.


4. Implementações e Projetos Práticos

  • Nisan, N., & Schocken, S.
    The Elements of Computing Systems: Building a Modern Computer from First Principles. MIT Press, 2005.
    → Conduz o leitor na criação de um computador completo, incluindo uma linguagem simples e seu compilador. Excelente para compreender a integração hardware–software.

  • Abelson, H., Sussman, G. J., & Sussman, J.
    Structure and Interpretation of Computer Programs (SICP). MIT Press, 1996.
    → Clássico absoluto sobre abstração e interpretação de linguagens. Ensina a pensar como projetista de linguagens, não apenas como programador.

  • Pratt, T. W., & Zelkowitz, M. V.
    Programming Languages: Design and Implementation (4th Edition). Prentice Hall, 2001.
    → Livro equilibrado entre teoria e prática, cobre detalhadamente análise léxica, semântica e execução.


5. Leituras Complementares e Contemporâneas

  • Hudak, P.
    “Conception, Evolution, and Application of Functional Programming Languages.” ACM Computing Surveys, 21(3), 1989.
    → Artigo clássico sobre o desenvolvimento das linguagens funcionais e sua filosofia.

  • Hoare, C. A. R.
    “The Emperor’s Old Clothes.” Communications of the ACM, 24(2), 1981.
    → Uma reflexão histórica e filosófica sobre os acertos e erros no design de linguagens — leitura fundamental.

  • Stroustrup, B.
    The Design and Evolution of C++. Addison-Wesley, 1994.
    → Um estudo de caso detalhado sobre a evolução de uma linguagem amplamente usada.


Nao esqueca de continuar compartilhando tua jornada, tem muitas pessoas que tem curiosidade em saber como voce se seguiu.

Saude e Sucesso !

Carregando publicação patrocinada...