<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Christopher Seven Phiri</title>
    <description>The latest articles on DEV Community by Christopher Seven Phiri (@sevenreup).</description>
    <link>https://dev.to/sevenreup</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F357333%2F386273ad-a870-4838-97f1-442cbac00291.jpeg</url>
      <title>DEV Community: Christopher Seven Phiri</title>
      <link>https://dev.to/sevenreup</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sevenreup"/>
    <language>en</language>
    <item>
      <title>Introducing Duwa a Chichewa Programming Language</title>
      <dc:creator>Christopher Seven Phiri</dc:creator>
      <pubDate>Tue, 03 Sep 2024 07:35:46 +0000</pubDate>
      <link>https://dev.to/sevenreup/introducing-duwa-a-chichewa-programming-language-126k</link>
      <guid>https://dev.to/sevenreup/introducing-duwa-a-chichewa-programming-language-126k</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq0sa0ctvspixywg7ekjo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq0sa0ctvspixywg7ekjo.png" alt="Duwa Logo" width="500" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Duwa?
&lt;/h2&gt;

&lt;p&gt;Duwa 🌺 is my labor of love—a simple esoteric language (esolang) that blends traditional language with modern programming. As a native Chichewa speaker and a programmer, I wanted to create something unique that bridges the gap between my linguistic heritage and the tech world. Duwa uses Chichewa, a Bantu language spoken in Malawi, as its core, making it a one-of-a-kind tool for both learning and cultural preservation.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Purpose of Duwa
&lt;/h2&gt;

&lt;p&gt;Creating Duwa has been driven by several key goals:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Making Programming Accessible&lt;/strong&gt;: I wanted to make programming more approachable for Chichewa speakers by using familiar language constructs, helping them see coding as something within reach.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Preserving and Promoting Chichewa&lt;/strong&gt;: In a field dominated by English, I felt it was important to carve out a space for Chichewa in the tech landscape, ensuring the language evolves with the times.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Creating a Unique Educational Tool&lt;/strong&gt;: By designing Duwa, I aimed to offer a new way to teach programming, particularly to those who might feel alienated by traditional programming languages.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Duwa is a reflection of my passion for both programming and my native language, and I hope it serves as a welcoming platform for others in the Chichewa-speaking community.&lt;/p&gt;

&lt;h2&gt;
  
  
  Setup and Installation
&lt;/h2&gt;

&lt;p&gt;If you'd like to try out Duwa yourself, here's how to get started:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Head over to the Duwa GitHub releases page: &lt;a href="https://github.com/sevenreup/duwa/releases" rel="noopener noreferrer"&gt;https://github.com/sevenreup/duwa/releases&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Download the binary that matches your operating system from the latest release.&lt;/li&gt;
&lt;li&gt;Run Duwa programs using the binary (note that the binary name might vary):
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;   ./duwa &lt;span class="nt"&gt;-f&lt;/span&gt; path/to/your/program.duwa
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Basic Syntax
&lt;/h2&gt;

&lt;p&gt;Let me show you some of the basics of Duwa.&lt;/p&gt;

&lt;h3&gt;
  
  
  Hello World
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;ndondomeko&lt;/span&gt; &lt;span class="nf"&gt;pano&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nf"&gt;lemba&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Moni Dziko&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nf"&gt;pano&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In this example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;ndondomeko&lt;/code&gt; is how I decided to declare a function in Duwa.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;lemba&lt;/code&gt;, which means "write" in Chichewa, outputs text.&lt;/li&gt;
&lt;li&gt;The program simply prints "Moni Dziko" ("Hello World") to the screen.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Variables
&lt;/h3&gt;

&lt;p&gt;Duwa supports a variety of variable types:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Numbers&lt;/span&gt;
&lt;span class="nx"&gt;nambala&lt;/span&gt; &lt;span class="nx"&gt;yoyamba&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nx"&gt;nambala&lt;/span&gt; &lt;span class="nx"&gt;yachiwiri&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="nx"&gt;nambala&lt;/span&gt; &lt;span class="nx"&gt;yomaliza&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;yoyamba&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;yachiwiri&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="c1"&gt;// Strings&lt;/span&gt;
&lt;span class="nx"&gt;mawu&lt;/span&gt; &lt;span class="nx"&gt;dzina&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Maliko&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="c1"&gt;// Maps&lt;/span&gt;
&lt;span class="nx"&gt;mgwirizano&lt;/span&gt; &lt;span class="nx"&gt;munthu&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;dzina&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Soma&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;zaka&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// Other types like boolean are not strongly typed&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Conditional Statements
&lt;/h3&gt;

&lt;p&gt;I chose to use &lt;code&gt;ngati&lt;/code&gt; for if statements and &lt;code&gt;kapena&lt;/code&gt; for else, making the logic flow more naturally in Chichewa:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// If statement&lt;/span&gt;
&lt;span class="nf"&gt;ngati&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;yoyamba&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;yachiwiri&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;// panga zinthu (do something)&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// If-else statement&lt;/span&gt;
&lt;span class="nf"&gt;ngati&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;yoyamba&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;yachiwiri&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;// panga zinthu&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="nx"&gt;kapena&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;// panga zinthu&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Loops
&lt;/h3&gt;

&lt;p&gt;Duwa also supports both while and for loops:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// While loop&lt;/span&gt;
&lt;span class="nf"&gt;pamene&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;yoyamba&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;// panga zinthu&lt;/span&gt;
    &lt;span class="nx"&gt;yoyamba&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// For loop&lt;/span&gt;
&lt;span class="nf"&gt;za&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;nambala&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;// panga zinthu&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Let's Code: Linear Search Example
&lt;/h2&gt;

&lt;p&gt;To give you a taste of what Duwa can do, here’s a simple linear search algorithm.&lt;br&gt;
Create a new file called &lt;code&gt;Kufufuza.duwa&lt;/code&gt; in your favorite editor&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;ndondomeko&lt;/span&gt; &lt;span class="nf"&gt;kufufuza&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nf"&gt;za&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;nambala&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;length&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nf"&gt;ngati &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="nx"&gt;bweza&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="nx"&gt;bweza&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nx"&gt;ndondomeko&lt;/span&gt; &lt;span class="nf"&gt;doLinearSearch&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;nambala&lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt; &lt;span class="nx"&gt;arr&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
    &lt;span class="nx"&gt;nambala&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

    &lt;span class="nx"&gt;nambala&lt;/span&gt; &lt;span class="nx"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;kufufuza&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="nf"&gt;ngati &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;result&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nf"&gt;lembanzr&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Linear Search: Element is not present in array&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="nx"&gt;kapena&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nf"&gt;lembanzr&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Linear Search: Element at index &lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nf"&gt;doLinearSearch&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Run the program by running&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;duwa &lt;span class="nt"&gt;-f&lt;/span&gt; Kufufuza.duwa
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You will get the index of 10 printed out on your console&lt;/p&gt;

&lt;h3&gt;
  
  
  Breaking Down the Code
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;ndondomeko kufufuza(arr, x)&lt;/code&gt;&lt;/strong&gt;: This function performs the linear search. "Kufufuza" means "to search" in Chichewa.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;&lt;code&gt;za&lt;/code&gt; loop&lt;/strong&gt; iterates through the array, checking for the target value.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;ngati (arr[i] == x)&lt;/code&gt;&lt;/strong&gt;: If the element is found, the function returns its index.&lt;/li&gt;
&lt;li&gt;If the element is not found, the function returns -1.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;ndondomeko doLinearSearch()&lt;/code&gt;&lt;/strong&gt;: This function sets up the test case and calls the search function.&lt;/li&gt;
&lt;li&gt;The result is printed using &lt;strong&gt;&lt;code&gt;lembanzr&lt;/code&gt;&lt;/strong&gt;, which I chose to mean "write line."&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This example gives a glimpse of how Duwa handles algorithms while staying true to the Chichewa language.&lt;/p&gt;

&lt;h2&gt;
  
  
  Current State of Duwa
&lt;/h2&gt;

&lt;p&gt;Duwa is still a work in progress, and there are some words and constructs that haven't been fully translated into Chichewa yet. I'm actively working on these translations, and I plan to have everything ready by the time Duwa reaches version 1.0.&lt;/p&gt;

&lt;p&gt;Even in its current state, Duwa is fully functional, and I'm excited to see how it grows as I continue to refine it. I’d love to hear your feedback as you experiment with it!&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Bonus:&lt;/strong&gt; I created a simple vscode extension for adding support for Duwa to vscode, for now, you will only get syntax highlighting but working on adding more features. Search for &lt;code&gt;Duwa Language&lt;/code&gt; in the vscode extension tab, or download &lt;a href="https://marketplace.visualstudio.com/items?itemName=sevenreup.duwa-lang" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Future Development
&lt;/h2&gt;

&lt;p&gt;Looking ahead, I have some ambitious plans for Duwa:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Expanding the language features to make it even more powerful&lt;/li&gt;
&lt;li&gt;Building a standard library to support more complex programs&lt;/li&gt;
&lt;li&gt;Creating learning resources to help others get started with Duwa&lt;/li&gt;
&lt;li&gt;Encouraging community contributions to enrich the language and its ecosystem&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Duwa is built entirely from scratch in Golang, leveraging its strengths to create a fast, efficient, and reliable programming environment. This has been a challenging but rewarding journey, and I’m excited to see where it leads.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Whether you're a Chichewa speaker curious about coding or a programming enthusiast looking for something different, I hope Duwa inspires you as much as it has inspired me. This journey is just beginning, and I’m thrilled to share it with you. By making Chichewa a part of the coding world, Duwa opens up new possibilities for education, cultural preservation, and creative expression.&lt;/p&gt;

&lt;p&gt;Check out the original &lt;a href="https://www.cphiri.dev/blog/duwa-first-look/" rel="noopener noreferrer"&gt;post&lt;/a&gt;&lt;br&gt;
Check out the &lt;a href="https://github.com/sevenreup/duwa" rel="noopener noreferrer"&gt;github&lt;/a&gt;.&lt;br&gt;
Check out the &lt;a href="https://www.duwa.cphiri.dev/" rel="noopener noreferrer"&gt;docs&lt;/a&gt; (Still a work inprogress)&lt;/p&gt;

</description>
      <category>go</category>
      <category>duwa</category>
    </item>
  </channel>
</rss>
