Bibliotecas

Vamos falar sobre os doces recheios embutidos no FatScript: as bibliotecas!

Bibliotecas padrão

Essenciais

Estas são as bibliotecas fundamentais que você espera que estejam disponíveis em uma linguagem de programação, fornecendo funcionalidades essenciais:

  • async - Trabalhadores e tarefas assíncronas
  • color - Códigos de cores ANSI para console
  • console - Operações de entrada e saída do console
  • curses - Interface de usuário baseada em terminal
  • enigma - Métodos de criptografia, hash e UUID
  • failure - Tratamento de erros e gerenciamento de exceções
  • file - Operações de entrada e saída de arquivos
  • http - Framework de manipulação HTTP
  • math - Operações e funções matemáticas
  • recode - Conversão de dados entre vários formatos
  • sdk - Utilitários do kit de desenvolvimento de software do fry
  • system - Operações e informações no nível do sistema
  • time - Manipulação de data e hora

Pacote de tipos

Este pacote estende os recursos dos tipos nativos do FatScript:

Pacote Extra

Tipos adicionais implementados em FatScript puro:

  • Date - Gerenciamento de calendário e datas
  • Duration - Construtor de duração em milissegundos
  • HashMap - Armazenamento rápido de chave-valor
  • Logger - Suporte ao registro de logs
  • Memo - Utilitário de memoização genérica
  • Option - Encapsulamento de valor opcional
  • Sound - Interface de reprodução de som
  • Storable - Armazenamento de dados

Atalho de importação

Se você deseja torná-los todos disponíveis de uma vez, pode simplesmente fazer o seguinte, e todas essas coisas boas estarão disponíveis para o seu código:

_ <- fat._

Embora esse recurso possa ser conveniente ao experimentar no REPL, esteja ciente de que ele traz todas as constantes e nomes de método da biblioteca, potencialmente poluindo seu namespace global.

fat.std

Alternativamente, importe a biblioteca "standard" que importa todos os tipos (inclusive do pacote extra), bem como aplica importações nomeadas de todos os demais pacotes, assim:

_ <- fat.std

O que equivale a:

_       <- fat.type._
_       <- fat.extra._
async   <- fat.async
color   <- fat.color
console <- fat.console
curses  <- fat.curses
enigma  <- fat.enigma
failure <- fat.failure
http    <- fat.http
file    <- fat.file
math    <- fat.math
recode  <- fat.recode
sdk     <- fat.sdk
system  <- fat.system
time    <- fat.time

Observe que, a importação de tudo antecipadamente pode adicionar uma sobrecarga desnecessária ao tempo de inicialização do seu programa, mesmo que você precise usar apenas alguns métodos.

Como boa prática, considere importar apenas os módulos específicos de que você precisa, com importações nomeadas. Dessa forma, você pode manter seu código limpo e conciso, minimizando o risco de conflitos de nome ou problemas de desempenho.

Hacking e mais

Sob o capô, as bibliotecas são construídas usando comandos embutidos. Para obter uma compreensão mais profunda e explorar o funcionamento interno do interpretador, mergulhe neste tópico mais avançado.

results matching ""

    No results matching ""