O ponto de entrada main
Entenda por que os scripts começam na função main.
O ponto de entrada main é uma aula grátis de Mojo Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Mojo Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Mojo Academy inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em inglês.
Every Program Needs a Start
When you run a Mojo file, the program needs to know where to begin. That starting point is a special function named main. 🚀
Mojo Looks for main
The toolchain searches your file for a function called main and calls it for you. You never call main yourself.
def main():
print("Program started")The Entry Point Idea
An entry point is simply where execution enters your code. In Mojo that door is always main, so your logic goes inside it.
Code Outside main
Top-level definitions like functions and structs can live outside main, but the work that actually runs starts from main.
fn greet():
print("Hi")
def main():
greet()main Takes No Arguments
A basic main needs no parameters. The empty parentheses after the name show it accepts nothing when Mojo calls it.
def main():
print("No args needed")One main Per Program
A program has exactly one main. Two would confuse Mojo about where to begin, so the compiler expects a single clear entry point.
def or fn for main
You can define main with def or fn. Both work as the entry point; def is the friendlier, Python-like choice when starting out.
fn main():
print("Strict style")Order Inside main
Statements inside main run top to bottom, in order. The first line executes first, then the next, building your program step by step.
def main():
print("first")
print("second")Calling Helpers from main
main is often short: it just calls other functions. This keeps your entry point a clean summary of what the program does.
def main():
setup()
run()Forgetting main
If a file has no main, running it as a program fails because Mojo cannot find where to start. Always include one for runnable files.
main Ends the Program
When the last line of main finishes, the program is done and control returns to your shell. No extra cleanup is required.
Quick Check
You wrote a Mojo file with several functions. Where does execution actually begin?
Recap
Every runnable Mojo file needs one main function. Mojo calls it to start, runs its lines in order, and ends when main finishes. 🎯
Perguntas Frequentes
A aula “O ponto de entrada main” é grátis?
Sim — o texto completo de “O ponto de entrada main” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Mojo Academy, atualize para CoddyKit PRO. O curso de Mojo Academy inclui 4 aulas no total.
O que vou aprender em “O ponto de entrada main”?
Entenda por que os scripts começam na função main. Você pratica Mojo Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Mojo Academy?
Nenhuma experiência prévia é necessária. Mojo Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “O ponto de entrada main”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Mojo Academy?
Sim. Cada aula de Mojo Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Seu primeiro arquivo .mojo
- O ponto de entrada main
- Executando com mojo run
- Explorando no REPL do Mojo