Skip to content
/ nok Public
forked from bnjbvr/rouille

Rust programming, in Korean. 재미로 해보는 한글 Rust 코딩

Notifications You must be signed in to change notification settings

Alfex4936/nok

 
 

Repository files navigation

녹 (Nok)

logo

녹 (Nok) (Korean for Rust)

Aren't you 피곤 from writing Rust programs in English? Do you like saying "시발" a lot? Would you like to try something different, in an exotic and funny-sounding language? Would you want to bring some Korean touch to your programs?

nok (Korean for Rust) is here to save your day, as it allows you to write Rust programs in Korean, using Korean keywords, Korean function names, Korean idioms.

You don't feel at ease using only Korean words? Don't worry! Korean Rust is fully compatible with English-Rust, so you can mix both at your convenience.

Here's an example of what can be achieved with nok:

trait and impl (특성과 구현)

nok::korean! {
    외부 크레이트 nok;

    사용 std::collections::사전 다음_처럼 Dic;

    열거 EN {
        Oh,
        Hi,
    }

    특성 SomeTrait {
        함수 안녕1(&self, val: 문자열, value: 문자열);
        함수 안녕2(&self, val: 문자열) -> 결과<옵션<&'static 문자열>, 문자열>;
    }

    정적 가변 DICT: 옵션<Dic<문자열, 문자열>> = 없음;

    구조 Something;

    구현 SomeTrait 다음을_위해 Something {
        함수 안녕1(&self, val: 문자열, value: 문자열) {
            여기서 dico = 위험 {
                DICT.get_or_insert_with(기본::default)
            };
            dico.넣기(val, value);
        }
        함수 안녕2(&self, val: 문자열) -> 결과<옵션<&'static 문자열>, 문자열> {
            만약 여기서 있음(dico) = 위험 { DICT.as_ref() } {
                오케이(dico.얻기(&val))
            } 아니면 {
                실패("실패함".into())
            }
        }
    }

    공용(크레이트) 함수 some_thing(i: u32) -> 옵션<결과<u32, 문자열>> {
        만약 i % 2 == 1 {
            만약 i == 42 {
                있음(실패(문자열::다음에서("안녕")))
            } 아니면 {
                있음(오케이(33))
            }
        } 아니면 {
            없음
        }
    }

    비동기 함수 example() {
        구현안됨!()
    }

    #[허용(접근_불가_코드)]
    함수 접근_불가() {
        안돼!("안녕히 가세요.");
        종료!("안녕히 가세요.");
        패닉!("안녕히 가세요.");
    }

    // this is main function
    함수 메인() {
        출력!("{} 오케이 ㅋㅋ", "안녕");
        그냥();
        여기서 test: 문자열 = "Hello World".to_string();
        출력!("test: {}", test);

        여기서 가변 total_sum = 0;
        여기서 result1 = 'main: 무한 {
            다음을_위해 i 안 0..10000 {
                total_sum += i;
                만약 i == 100 {
                    탈출 'main total_sum * 2; // break main and result1 will be total_sum * 2
                }
            }
        };
        출력!("총 합: {}", total_sum);  // 5050
        안돼!("안녕히 가세요.");
    }
}

Support for regional languages

#[허용(접근_불가_코드)]
함수 접근_불가() {
    안돼!("안녕히 가세요.");
    종료!("안녕히 가세요.");
    패닉!("안녕히 가세요.");
}

Other examples

korean

See the examples to get a rough sense of the whole syntax.

다른 언어

라이선스

WTFPLOLIS 번역판을 약간 변형하여 사용.

About

Rust programming, in Korean. 재미로 해보는 한글 Rust 코딩

Topics

Resources

Stars

Watchers

Forks

Languages

  • Rust 100.0%