"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Apresentando Duwa, uma linguagem de programação Chichewa

Apresentando Duwa, uma linguagem de programação Chichewa

Publicado em 31/10/2024
Navegar:986

Introducing Duwa a Chichewa Programming Language

O que é Duwa:

Duwa? é o meu trabalho de amor - uma linguagem esotérica simples (esolang) que combina a linguagem tradicional com a programação moderna. Como falante nativo de chichewa e programador, eu queria criar algo único que preenchesse a lacuna entre minha herança linguística e o mundo da tecnologia. Duwa usa o chichewa, uma língua bantu falada no Malawi, como núcleo, tornando-o uma ferramenta única para aprendizagem e preservação cultural.

O Propósito de Duwa

A criação de Duwa foi impulsionada por vários objetivos principais:

  1. Tornando a programação acessível: Eu queria tornar a programação mais acessível para falantes de Chichewa usando construções de linguagem familiares, ajudando-os a ver a codificação como algo ao seu alcance.
  2. Preservando e Promovendo o Chichewa: Em um campo dominado pelo inglês, achei que era importante abrir um espaço para o Chichewa no cenário tecnológico, garantindo que o idioma evoluísse com o tempo.
  3. Criando uma ferramenta educacional única: Ao projetar Duwa, tive como objetivo oferecer uma nova maneira de ensinar programação, especialmente para aqueles que podem se sentir alienados pelas linguagens de programação tradicionais.

Duwa é um reflexo da minha paixão pela programação e pela minha língua nativa, e espero que sirva como uma plataforma de boas-vindas para outras pessoas na comunidade de língua chichewa.

Configuração e instalação

Se você quiser experimentar o Duwa, veja como começar:

  1. Vá para a página de lançamentos do Duwa GitHub: https://github.com/sevenreup/duwa/releases
  2. Baixe o binário que corresponde ao seu sistema operacional da versão mais recente.
  3. Execute programas Duwa usando o binário (observe que o nome do binário pode variar):
   ./duwa -f path/to/your/program.duwa

Sintaxe Básica

Deixe-me mostrar alguns dos princípios básicos do Duwa.

Olá mundo

ndondomeko pano() {
    lemba("Moni Dziko");
}

pano();

Neste exemplo:

  • ndondomeko foi como decidi declarar uma função em Duwa.
  • lemba, que significa "escrever" em Chichewa, gera texto.
  • O programa simplesmente imprime "Moni Dziko" ("Hello World") na tela.

Variáveis

Duwa suporta uma variedade de tipos de variáveis:

// Numbers
nambala yoyamba = 1;
nambala yachiwiri = 2;

nambala yomaliza = yoyamba   yachiwiri;

// Strings
mawu dzina = "Maliko";

// Maps
mgwirizano munthu = {
    "dzina": "Soma",
    "zaka": 3
}

// Other types like boolean are not strongly typed

Declarações Condicionais

Eu escolhi usar ngati para instruções if e kapena para else, fazendo com que a lógica flua mais naturalmente em Chichewa:

// If statement
ngati(yoyamba > yachiwiri) {
    // panga zinthu (do something)
}

// If-else statement
ngati(yoyamba > yachiwiri) {
    // panga zinthu
} kapena {
    // panga zinthu
}

Laços

Duwa também suporta loops while e for:

// While loop
pamene(yoyamba > 2) {
    // panga zinthu
    yoyamba  
}

// For loop
za(nambala x = 0; x > 5; x  ) {
    // panga zinthu
}

Vamos codificar: exemplo de pesquisa linear

Para lhe dar uma ideia do que Duwa pode fazer, aqui está um algoritmo de pesquisa linear simples.
Crie um novo arquivo chamado Kufufuza.duwa em seu editor favorito

ndondomeko kufufuza(arr, x) {
    za(nambala i = 0; i 



Execute o programa executando

duwa -f Kufufuza.duwa

Você receberá o índice de 10 impresso em seu console

Quebrando o Código

  1. ndondomeko kufufuza(arr, x): Esta função realiza a pesquisa linear. "Kufufuza" significa "pesquisar" em Chichewa.
  2. O loop za itera pelo array, verificando o valor alvo.
  3. ngati (arr[i] == x): Se o elemento for encontrado, a função retorna seu índice.
  4. Se o elemento não for encontrado, a função retorna -1.
  5. ndondomeko doLinearSearch(): Esta função configura o caso de teste e chama a função de pesquisa.
  6. O resultado é impresso usando lembanzr, que escolhi para significar "escrever linha".

Este exemplo dá uma ideia de como Duwa lida com algoritmos enquanto permanece fiel à linguagem Chichewa.

Estado Atual de Duwa

Duwa ainda é um trabalho em andamento e há algumas palavras e construções que ainda não foram totalmente traduzidas para o chichewa. Estou trabalhando ativamente nessas traduções e pretendo ter tudo pronto quando Duwa chegar à versão 1.0.

Mesmo em seu estado atual, Duwa está totalmente funcional e estou animado para ver como ele cresce à medida que continuo a refiná-lo. Eu adoraria ouvir seu feedback enquanto você experimenta!


Bônus: Eu criei uma extensão vscode simples para adicionar suporte para Duwa ao vscode, por enquanto, você só obterá destaque de sintaxe, mas trabalhará para adicionar mais recursos. Pesquise Duwa Language na guia de extensão vscode ou baixe aqui

Desenvolvimento Futuro

Olhando para o futuro, tenho alguns planos ambiciosos para Duwa:

  • Expandindo os recursos do idioma para torná-lo ainda mais poderoso
  • Construindo uma biblioteca padrão para suportar programas mais complexos
  • Criando recursos de aprendizagem para ajudar outras pessoas a começar a usar o Duwa
  • Incentivando contribuições da comunidade para enriquecer o idioma e seu ecossistema

Duwa é construído inteiramente do zero em Golang, aproveitando seus pontos fortes para criar um ambiente de programação rápido, eficiente e confiável. Esta tem sido uma jornada desafiadora, mas gratificante, e estou animado para ver aonde ela leva.

Conclusão

Seja você um falante de Chichewa curioso sobre codificação ou um entusiasta de programação em busca de algo diferente, espero que Duwa inspire você tanto quanto me inspirou. Esta jornada está apenas começando e estou muito feliz em compartilhá-la com você. Ao tornar Chichewa parte do mundo da codificação, Duwa abre novas possibilidades para educação, preservação cultural e expressão criativa.

Confira a postagem original
Confira o github.
Confira a documentação (ainda um trabalho em andamento)

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/sevenreup/introduzindo-duwa-a-chichewa-programming-language-126k?1 Se houver alguma violação, entre em contato com [email protected] para excluí-la
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3