"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Chichewa 프로그래밍 언어 Duwa 소개

Chichewa 프로그래밍 언어 Duwa 소개

2024년 10월 31일에 게시됨
검색:115

Introducing Duwa a Chichewa Programming Language

두와(Duwa)란 무엇인가?

두와 ? 전통적인 언어와 현대 프로그래밍을 혼합한 단순하고 난해한 언어(에솔랑)입니다. 저는 치체와어 원어민이자 프로그래머로서 저의 언어적 유산과 기술 세계 사이의 격차를 해소하는 독특한 것을 만들고 싶었습니다. Duwa는 말라위에서 사용되는 반투어인 치체와어를 핵심으로 사용하여 학습과 문화 보존을 위한 독특한 도구입니다.

두와(Duwa)의 목적

Duwa 제작은 다음과 같은 몇 가지 주요 목표에 따라 추진되었습니다.

  1. 프로그래밍 접근성 향상: 저는 친숙한 언어 구성을 사용하여 치체와어 사용자들이 프로그래밍에 더 쉽게 접근할 수 있도록 만들고 싶었고, 그들이 코딩을 쉽게 이해할 수 있도록 돕고 싶었습니다.
  2. 치체와어 보존 및 홍보: 영어가 지배하는 분야에서 기술 환경에서 치체와어를 위한 공간을 마련하여 언어가 시대에 맞춰 진화하도록 하는 것이 중요하다고 느꼈습니다.
  3. 독특한 교육 도구 만들기: Duwa를 디자인함으로써 저는 특히 전통적인 프로그래밍 언어에 소외감을 느낄 수 있는 사람들에게 프로그래밍을 가르치는 새로운 방법을 제공하는 것을 목표로 했습니다.

Duwa는 프로그래밍과 모국어에 대한 나의 열정을 반영하며, 치체와어를 사용하는 커뮤니티의 다른 사람들을 환영하는 플랫폼이 되기를 바랍니다.

설정 및 설치

Duwa를 직접 사용해 보고 싶다면 시작하는 방법은 다음과 같습니다.

  1. Duwa GitHub 릴리스 페이지로 이동하세요: https://github.com/sevenreup/duwa/releases
  2. 최신 릴리스에서 운영 체제와 일치하는 바이너리를 다운로드하세요.
  3. 바이너리를 사용하여 Duwa 프로그램을 실행합니다(바이너리 이름은 다를 수 있음).
   ./duwa -f path/to/your/program.duwa

기본 구문

두와(Duwa)의 기본을 알려드리겠습니다.

안녕하세요 세계

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

pano();

이 예에서는:

  • ndondomeko는 Duwa에서 함수를 선언하기로 결정한 방법입니다.
  • 치체와어로 "쓰기"를 의미하는 lemba는 텍스트를 출력합니다.
  • 프로그램은 단순히 "Moni Dziko"("Hello World")를 화면에 인쇄합니다.

변수

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이라는 인덱스가 인쇄됩니다.

코드 분석

  1. ndondomeko kufufuza(arr, x): 이 함수는 선형 검색을 수행합니다. "쿠후후자"는 치체와어로 "검색하다"라는 뜻입니다.
  2. za 루프는 배열을 반복하여 대상 값을 확인합니다.
  3. ngati (arr[i] == x): 요소가 발견되면 함수는 해당 인덱스를 반환합니다.
  4. 요소를 찾을 수 없으면 함수는 -1을 반환합니다.
  5. ndondomeko doLinearSearch(): 이 함수는 테스트 케이스를 설정하고 검색 함수를 호출합니다.
  6. 결과는 "줄 쓰기"를 의미하는 lembanzr를 사용하여 인쇄됩니다.

이 예에서는 Duwa가 Chichewa 언어에 충실하면서 알고리즘을 처리하는 방법을 엿볼 수 있습니다.

두와(Duwa)현황

Duwa는 아직 진행 중인 작업이며 아직 Chichewa어로 완전히 번역되지 않은 일부 단어와 구문이 있습니다. 저는 이 번역 작업에 적극적으로 참여하고 있으며 Duwa가 버전 1.0에 도달할 때까지 모든 것을 준비할 계획입니다.

현재 상태에서도 Duwa는 완벽하게 작동하고 있으며, 계속해서 개선하면서 어떻게 성장할지 기대됩니다. 실험하면서 피드백을 듣고 싶습니다!


보너스: Duwa에 대한 지원을 vscode에 추가하기 위해 간단한 vscode 확장을 만들었습니다. 지금은 구문 강조만 표시되지만 더 많은 기능을 추가하는 작업을 수행하게 됩니다. vscode 확장 탭에서 Duwa 언어를 검색하거나 여기에서 다운로드하세요

미래 개발

앞으로 Duwa에 대한 야심 찬 계획이 있습니다.

  • 언어 기능을 더욱 강력하게 확장
  • 더 복잡한 프로그램을 지원하기 위한 표준 라이브러리 구축
  • 다른 사람들이 Duwa를 시작하는 데 도움이 되는 학습 리소스 만들기
  • 언어와 생태계를 풍요롭게 하기 위한 커뮤니티 기여 장려

Duwa는 빠르고 효율적이며 안정적인 프로그래밍 환경을 만들기 위해 Golang의 강점을 활용하여 완전히 처음부터 Golang으로 구축되었습니다. 이는 힘들었지만 보람 있는 여정이었으며, 그것이 어디로 이어질지 기대됩니다.

결론

당신이 코딩에 관심이 있는 치체와어 사용자이거나 뭔가 다른 것을 찾고 있는 프로그래밍 매니아라면, Duwa가 나에게 영감을 준 만큼 당신에게도 영감을 주기를 바랍니다. 이 여정은 이제 막 시작되었습니다. 여러분과 공유하게 되어 기쁩니다. Chichewa를 코딩 세계의 일부로 만듦으로써 Duwa는 교육, 문화 보존 및 창의적 표현을 위한 새로운 가능성을 열어줍니다.

원본 게시물 확인
github을 확인해 보세요.
문서를 확인하세요(아직 작업이 진행 중입니다)

릴리스 선언문 이 글은 https://dev.to/sevenreup/introducing-duwa-a-chichewa-programming-언어-126k?1에서 복제됩니다.1 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3