StatPy Programming Language
StatPy Programming Language
programação
do zero
StaticPy
Conteúdo
01 02 03 04
Introdução Motivação Características Exemplos
01
Introdução
Introdução
Ideia
Desenvolver uma linguagem de
programação do zero, desde a sintaxe Features
(representada pelo EBNF) até A linguagem desenvolvida inclui
compilador completo com Lexer, Parser, variáveis, condicionais, loops, funções
Semântico e Geração de Código, feitos além de algumas funções built-in.
com respectivamente: Flex, bison e
LLVM.
02
Motivação
Motivação
Inspirações
Inspirado em múltiplas linguagens:
• Python Objetivo
Rust Criar uma linguagem de alto nível como o
• python, porém com tipagem estática para
• C previnir erros em runtime.
• C#
03
Características
Características
Tipagem
Bloco de código Built-ins Em contrapartida ao
Assim como no python, Temos algumas funções python, a linguagem exige
um bloco de código é presentes por padrão na tipagem estática, porém
definido por “:”, seguido linguagem, por exemplo o temos a keyword “var”
de código identado. “println” que funciona para inferir o tipo da
como o“printf” do C. variável.
Condicionais Loops
Funcionam como o if/else
do python, onde temos
Assim como no python,
temos while e for, porém o
Funções
Funções seguem o estilo
“if” seguido da expressão for segue uma sintaxe
do Rust.
e bloco de código. semelhante à do C.
04
Exemplos
Exemplos - Variáveis e operações