ドゥワ ?これは私の愛の結晶であり、伝統的な言語と現代のプログラミングを融合させたシンプルな難解な言語 (esolang) です。チチェワ語のネイティブスピーカーでありプログラマーとして、私は自分の言語的伝統とテクノロジーの世界との間のギャップを埋めるユニークなものを作りたいと考えていました。 Duwa はマラウイで話されているバンツー語であるチチェワ語を中心として使用しており、学習と文化保存の両方のためのユニークなツールとなっています。
Duwa の作成は、いくつかの重要な目標によって推進されてきました:
Duwa は、プログラミングと母国語の両方に対する私の情熱を反映しており、チチェワ語を話すコミュニティの他の人々にとって歓迎のプラットフォームとして機能することを願っています。
Duwa を自分で試してみたい場合は、次の方法で始めてください:
./duwa -f path/to/your/program.duwa
Duwa の基本をいくつか紹介しましょう。
ndondomeko pano() { lemba("Moni Dziko"); } pano();
この例では:
Duwa はさまざまな変数タイプをサポートしています:
// 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
if ステートメントには ngati を使用し、else には kapena を使用して、チチェワでのロジックの流れをより自然にすることにしました:
// If statement ngati(yoyamba > yachiwiri) { // panga zinthu (do something) } // If-else statement ngati(yoyamba > yachiwiri) { // panga zinthu } kapena { // panga zinthu }
Duwa は while ループと for ループの両方もサポートしています:
// While loop pamene(yoyamba > 2) { // panga zinthu yoyamba } // For loop za(nambala x = 0; x > 5; x ) { // panga zinthu }
Duwa で何ができるかを体験していただくために、シンプルな線形検索アルゴリズムを次に示します。
お気に入りのエディタで Kufufuza.duwa という名前の新しいファイルを作成します
ndondomeko kufufuza(arr, x) { za(nambala i = 0; i実行してプログラムを実行します
duwa -f Kufufuza.duwaコンソールに 10 のインデックスが出力されます
コードを分解する
- ndondomeko kufufuza(arr, x): この関数は線形探索を実行します。 「クフフザ」とはチチェワ語で「探す」という意味です。
- za ループは配列を反復処理して、ターゲット値をチェックします。
- ngati (arr[i] == x): 要素が見つかった場合、関数はそのインデックスを返します。
- 要素が見つからない場合、関数は -1 を返します。
- ndondomeko doLinearSearch(): この関数はテスト ケースを設定し、検索関数を呼び出します。
- 結果は lembanzr を使用して出力されます。これは「行を書く」という意味で選択しました。
この例では、チチェワ語に忠実でありながら、Duwa がどのようにアルゴリズムを処理するかを垣間見ることができます。
ドゥワの現状
Duwa はまだ進行中の作業であり、まだ完全に Chichewa に翻訳されていない単語や構成要素がいくつかあります。私はこれらの翻訳に積極的に取り組んでおり、Duwa がバージョン 1.0 に達するまでにすべてを準備するつもりです。
Duwa は現状でも十分に機能するので、改良を続けてどのように成長していくのか楽しみです。試してみた際のフィードバックをお待ちしております!
ボーナス: Duwa のサポートを vscode に追加するためのシンプルな vscode 拡張機能を作成しました。今のところ、構文の強調表示のみが可能ですが、さらに機能の追加に取り組んでいます。 vscode 拡張機能タブで Duwa Language を検索するか、ここからダウンロードしてください
今後の展開
将来を見据えて、私はデュワに対していくつかの野心的な計画を立てています:
Duwa は Golang で完全にゼロから構築されており、その強みを活用して高速、効率的、信頼性の高いプログラミング環境を作成します。これは困難ではありますが、やりがいのある旅であり、それがどこにつながるのかを見るのが楽しみです。
あなたがコーディングに興味のあるチチェワ語話者であっても、何か違うものを探しているプログラミング愛好家であっても、Duwa が私にインスピレーションを与えたのと同じように、あなたも Duwa からインスピレーションを得られることを願っています。この旅はまだ始まったばかりです。皆さんとそれを共有できることを嬉しく思います。チチェワをコーディング世界の一部にすることで、デュワは教育、文化保護、創造的表現の新たな可能性を切り開きます。
元の投稿をチェックしてください
github をチェックしてください。
ドキュメントを確認してください (まだ作業中です)
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3