10 पॉइंट द्वारा GN⁺ 2026-03-16 | 12 टिप्पणियां | WhatsApp पर शेयर करें
  • Korean keywords के साथ लिखा जाने वाला static type वाला compiled language है, जो LLVM IR के माध्यम से native binary बनाता है
  • Rust में implement किया गया compiler और interpreter दोनों देता है, और hgl CLI के जरिए build·run·REPL·LSP features को support करता है
  • hamsu, manyak, banbok, byeonsu जैसे सभी keywords Korean में हैं, और variable names व function names भी Korean में define किए जा सकते हैं
  • file I/O, JSON, HTTP, regex, date/time, system calls जैसी practical features built-in हैं, और 18 examples शामिल हैं
  • Hangul की वैज्ञानिक संरचना और सांस्कृतिक प्रसार को programming language में लागू करके, Korean सीखने और coding को जोड़ने की नई कोशिश के रूप में ध्यान खींचता है

Han भाषा का अवलोकन

  • Han एक Korean keywords के साथ लिखा जाने वाला static type compiled language है, जो LLVM IR के जरिए native binary बनाता है
    • इसमें Rust में लिखा गया compiler toolchain और tree-walking interpreter शामिल है
    • hgl कमांड से interpreter चलाना, build करना, REPL और LSP server चलाना संभव है
  • सभी keywords Korean में हैं, उदाहरण: hamsu, manyak, banbok, byeonsu, chulryeok आदि
  • Hangul की वैज्ञानिक लिपि संरचना को programming language में लागू करके, भाषाई सुंदरता और तकनीकी सटीकता के संयोजन को लक्ष्य बनाया गया है

मुख्य फीचर्स

  • Korean keywords और identifiers support: variable names, function names, struct names आदि Korean में लिखे जा सकते हैं
  • Static type system: jeongsu, silsu, munjayeol, bul, eopseum के 5 basic types देता है
  • Compile और interpreter modes: LLVM IR → clang → binary generation या immediate execution
  • REPL और LSP server: hgl repl, hgl lsp कमांड से interactive execution और code completion support
  • Built-in features
    • arrays, structs, closures, pattern matching, exception handling, generics
    • file I/O, JSON, HTTP, regex, date/time, system calls
    • format strings, hash maps, built-in math functions
  • 18 example programs शामिल: Hello World, HTTP API calls आदि

इंस्टॉलेशन और निष्पादन

  • ज़रूरी dependencies: Rust(1.70+), clang
  • installation steps
  • VS Code extension उपलब्ध: syntax highlighting और LSP support
  • CLI commands
    • hgl interpret <file.hgl> — interpreter चलाएँ
    • hgl build <file.hgl> — native binary compile करें
    • hgl run <file.hgl> — compile करने के बाद तुरंत चलाएँ
    • hgl repl — interactive mode
    • hgl lsp — LSP server चलाएँ

मौजूदा implementation स्थिति

  • पूरी तरह काम करने वाले features
    • data types, control flow, functions, strings, arrays, hash maps, structs, error handling, type checking
    • JSON, HTTP, regex, date/time, system, file I/O, math functions, modules, generics
  • आंशिक रूप से implemented features
    • hgl build में closures·strings·array methods के लिए code generation अभी अधूरा है
  • अभी implement न किए गए features
    • Null safety (Option type नहीं है), async/parallel processing, garbage collection, tail recursion optimization

Hangul और programming

  • Hangul एक ऐसी वैज्ञानिक लिपि प्रणाली है जो ध्वन्यात्मक संरचना को दृश्य रूप में व्यक्त करती है, जिसे King Sejong ने 1443 में बनाया था
  • Han, Hangul की इसी संरचनात्मक स्पष्टता को code grammar में दर्शाता है
  • दुनिया भर में 1.6 करोड़ से अधिक लोग Korean सीख रहे हैं, और Han coding के माध्यम से Korean सीखने का साधन देता है
  • उदाहरण keywords
    • hamsu(function), manyak(if), banbok(for), banhwan(return), byeonsu(variable), chulryeok(print) आदि

डिज़ाइन और संरचना

  • Rust-आधारित compiler pipeline
    • Lexer → Parser → AST → Interpreter / CodeGen → LLVM IR → clang → Binary
  • Project structure
    • src/ — core compiler और interpreter code
    • editors/vscode/ — VS Code extension
    • examples/, spec/, tests/ शामिल
  • डिज़ाइन choices के कारण
    • LLVM C API की जगह text-based IR generation से build को सरल बनाया गया
    • interpreter तेज़ execution के लिए, compiler performance-केंद्रित
    • Rust का pattern matching और memory safety language implementation के लिए उपयुक्त है

टेस्ट और लाइसेंस

  • cargo test से 46 tests (41 unit, 5 integration) चलाए जा सकते हैं
  • MIT license के तहत जारी किया गया है

सांस्कृतिक महत्व

  • Han एक प्रयोगात्मक language है जो Hangul की सुंदरता और programming की सटीकता को जोड़ती है
  • यह Korean learners और developers दोनों के लिए भाषा और code की सीमाएँ मिटाने वाला नया दृष्टिकोण प्रस्तुत करता है

12 टिप्पणियां

 
runableapp 2026-03-17

इससे मुझे उपयोगी जानकारी मिली। GeekNews, जो मुख्य और अहम खबरों को चुनकर प्रस्तुत करता है, रोज़ विज़िट करने की खुशी देता है। मैं भी इस समय एक Korean-language programming language विकसित कर रहा हूँ, इसलिए ऐसे प्रयासों का जारी रहना मुझे बहुत सकारात्मक लगता है.

लंबे समय तक विदेश में रहने के दौरान कोरिया के बदलावों को देखते हुए, रोज़मर्रा की ज़िंदगी और पूरे उद्योग जगत में अंग्रेज़ी का ज़रूरत से ज़्यादा घुसपैठ करना हमेशा खलता रहा है। Pangyo dialect, मुश्किल apartment नाम, MSGR जैसे विकृत menu, और अंग्रेज़ी से भरे signboard हमारी भाषा की स्वाभाविक जीवंतता को नुकसान पहुँचाते हुए लगते हैं। भले ही शुरुआती शिक्षा के कारण अंग्रेज़ी की बाधा कम हुई हो, लेकिन मातृभाषा से मिलने वाली सहजता का कोई विकल्प नहीं है। जैसे विदेश में Korean signboard तुरंत नज़र खींच लेते हैं, वैसे ही हमारा दिमाग मातृभाषा को प्रोसेस करते समय सबसे कम ऊर्जा खर्च करता है।

print("Hello, world!");

आउटपुट "नमस्ते!"

इनमें से कौन-सा ज़्यादा सहज और असरदार लगता है?

AI भाषा की दीवारें तोड़ रहा है, लेकिन Korean-language programming language पर शोध हमारे सोचने के ढाँचे में मौजूद अनावश्यक 'translation layer' को हटाकर दिमागी दक्षता को अधिकतम करने का काम है। print की तुलना में output के लिए Korean शब्द का अधिक सहज लगना स्वाभाविक है। सार्वभौमिक उपयोगिता या नौकरी बाज़ार के तर्कों के कारण यह तुरंत मुख्यधारा में आना मुश्किल हो सकता है, लेकिन उम्मीद है कि भविष्य में और अधिक परिपक्व तथा विविध Korean-language भाषाएँ सामने आएँगी और इस ecosystem को समृद्ध बनाएँगी।

 
mhcoma 2026-03-16

हंगुल है... मैं 밯망히질 को रोक नहीं सकता।

 
coremaker 2026-03-16

मुझे Seed प्रोजेक्ट याद आ रहा है।

 
crawler 2026-03-17

लगता है कि यह व्यक्ति लंबे समय से डेवलपमेंट नहीं बल्कि अकाउंटिंग का काम करते रहे हैं, लेकिन फिर भी इन्होंने एक compiler बना दिया और GitHub पर 100 से ज़्यादा स्टार्स भी हासिल कर लिए..
सचमुच AI का युग आ गया है

 
savvykang 2026-03-17

async-await की जगह 비동기-대기 लिखकर कोडिंग करने के बारे में सोचूँ तो, यह काफ़ी सहज लगता है।

 
github88 2026-03-16

लेकिन प्रोग्रामिंग भाषा में सामान्य उपयोगिता ज़्यादा महत्वपूर्ण होती है..

 
m00nlygreat 2026-03-16

हैकर न्यूज़ की प्रतिक्रिया का इतना दोस्ताना होना मज़ेदार है lol

 
nottiger 2026-03-16

वाह, कमाल है।

 
bichi 2026-03-16

नमस्ते, ताकतवर और शानदार सुबह!

 
sea715 2026-03-16

वाह

 
xguru 2026-03-16

वाह, Hacker News पर ऐसा कुछ देखना भी अच्छा है। राजा सेजोंग का धन्यवाद।

 
GN⁺ 2026-03-16
Hacker News की राय
  • अगर आपको कोरियाई प्रोग्रामिंग भाषा में रुचि है, तो मैं functional language ‘Nuri’ की सिफारिश करूंगा
    Nuri GitHub लिंक
    यह सिर्फ keywords का अनुवाद करने तक सीमित नहीं है, बल्कि वास्तविक कोरियाई व्याकरणिक संरचना को कोड में दर्शा सकती है
    उदाहरण के लिए, अगर आप लिखें “10 को 5 से भाग देकर print karna”, तो परिणामस्वरूप “2” प्रिंट होता है
    एक और उदाहरण के तौर पर ‘Yaksok’ नाम की भाषा भी है। 2048 गेम उदाहरण कोड पूरी तरह कोरियाई में लिखा गया है

    • फ़ीडबैक के लिए धन्यवाद। मुझे लगता है कि ‘Nuri’ और ‘Yaksok’ दोनों तार्किक और अच्छी तरह डिज़ाइन की गई भाषाएँ हैं, लेकिन मैं फिलहाल इस पर ध्यान दे रहा हूँ कि English users Rust में अनूदित संस्करण का उपयोग कर सकें। मुझे लगता है कि इससे बड़ा user base बन सकता है
    • मुझे कोरियाई शब्द लगभग नहीं आते, लेकिन मैं सोच रहा हूँ कि क्या ‘Yaksok’ की व्युत्पत्ति जापानी 約束(やくそく) वाले शब्द से मिलती है
  • मुझे यह सचमुच बहुत शानदार विचार लगता है। Hangul एक तार्किक रूप से डिज़ाइन की गई लिपि प्रणाली है, इसलिए इसे आधे दिन में सीखा जा सकता है
    Hangul सीखने के लिए StackExchange उत्तर

    • ऐसे mnemonics वाकई बहुत उपयोगी हैं। मैं इन्हें अपने कोरियाई सीखने के गाइड(tolearnkorean.com) में भी जोड़ने वाला हूँ
      Hangul में अक्षरों की संख्या English alphabet जैसी ही है, इसलिए इसे जल्दी सीखा जा सकता है, लेकिन शब्द याद करना थोड़ा कठिन है। इसलिए मैं Anki और अपने बनाए गेम-आधारित learning app का साथ में उपयोग कर रहा हूँ
    • यह इतनी गहरी जानकारी है कि शायद बहुत से कोरियाई लोग भी इसे न जानते हों। मैं इस साइट को GitHub reference material में जोड़ने वाला हूँ। ऐसे contributor पाकर खुशी हुई
    • मैंने उस लिंक को README के “Beauty of Hangul” सेक्शन में तुरंत जोड़ दिया है
  • एक native Korean speaker के रूप में मैं संक्षेप में अपनी राय साझा करना चाहता हूँ
    संज्ञाएँ तो स्वाभाविक रूप से अनूदित हो जाती हैं, लेकिन English imperative verbs को कोरियाई में ले जाते समय सावधानी चाहिए। उदाहरण के लिए “find” को ‘chatda’, ‘chatgi’, ‘chajeum’ आदि में बदला जा सकता है, लेकिन संदर्भ के अनुसार यह अटपटा लग सकता है
    एक और समस्या plural form की है। English में singular और plural स्पष्ट रूप से अलग होते हैं, लेकिन कोरियाई में ऐसा नहीं है। “daneodeul” की तरह plural को स्पष्ट करना कई बार उल्टा अस्वाभाविक लगता है
    अगर सिर्फ keyword replacement के बजाय English और कोरियाई के संरचनात्मक अंतर को ध्यान में रखा जाए, तो यह कहीं अधिक शक्तिशाली project बन सकता है

  • जब मैं विश्वविद्यालय में computer science पढ़ रहा था, तब मुझे लगा कि programming languages का English-आधारित होना English speakers के लिए बहुत बड़ा फ़ायदा है
    international student दोस्त, जिन्हें English की आदत नहीं थी, सीखने में ज़्यादा कठिनाई झेलते थे। इसलिए यह मज़ाक कि programming को foreign language credit मिलना चाहिए, काफ़ी मज़ेदार लगता था

    • मैं उल्टा सोचता हूँ। जब मुझे English अच्छी तरह नहीं आती थी, तब भी मैंने self-study से programming सीखी थी। आखिरकार language keywords बहुत कम होते हैं, और ‘int’ कि integer का संक्षेप है यह न जानने पर भी कोई दिक्कत नहीं होती
      असली कठिनाई programming खुद सीखना है। लेकिन advanced topics या documentation का सिर्फ English में होना ESL learners के लिए बड़ा barrier है
    • भारत में भी English IT industry की growth का बड़ा कारण थी। जिन दोस्तों ने regional language में पढ़ाई की, उन्हें विश्वविद्यालय में English textbooks के साथ चलने के लिए दोगुनी मेहनत करनी पड़ी। भाषाई बाधा से talent की बर्बादी होना दुखद है
    • मेरे non-English-speaking दोस्तों का भी कहना है कि keywords programming की कठिनाई का 1% भी नहीं हैं। variable या class names तो वैसे भी Unicode में लिखे जा सकते हैं, इसलिए उन्हें अनुवाद करने की लगभग ज़रूरत नहीं है
    • English का global standard बन जाना तर्कसंगत है। कई projects में English का उपयोग स्वाभाविक है
    • असली समस्या keywords नहीं, बल्कि यह है कि textbooks, papers, और documentation सब English में हैं। कुछ keywords याद करने में तो 30 मिनट ही लगते हैं
  • मुझे कोरियाई नहीं आती, लेकिन इस thread की वजह से मैंने बहुत सी भाषावैज्ञानिक अंतर्दृष्टियाँ सीखी हैं
    Hangul की phonological design(लिंक),
    कोरियाई plural forms की विशेषताएँ(लिंक),
    LLM tokenizer और कोरियाई की token compression समस्या(लिंक),
    और व्यंजनों व स्वरों के हाथ की पोज़िशन के अनुसार बँटी Hangul keyboard की rhythm(लिंक) विशेष रूप से दिलचस्प लगी

  • मुझे लगता है कि ऐसी कोशिशें भाषाई fragmentation पैदा कर सकती हैं।
    अगर हर कोई अपनी-अपनी भाषा में programming language बनाने लगे, तो collaboration या hiring कठिन हो जाएगी, और तकनीकी ज्ञान साझा करना भी मुश्किल होगा
    व्यक्तिगत रूप से मुझे लगता है कि अगर पूरी दुनिया एक ही भाषा इस्तेमाल करे, तो युद्ध और ग़लतफ़हमियाँ कम हो सकती हैं। बेशक cultural diversity कम होगी, लेकिन communication efficiency बढ़ेगी

    • सृजन और प्रयोग कभी मूर्खतापूर्ण नहीं होते। लेखक ने भाषा को एक कलात्मक प्रयास के रूप में बनाया है, और उसे politics या business के नज़रिए से आलोचना करना मूल बात को चूकना है
    • तो क्या आपका मतलब Esperanto में नई programming language बनाना है?
  • सिर्फ keywords का अनुवाद करने वाला दृष्टिकोण दिलचस्प है
    उदाहरण कोड की तरह

    peongkeu tuseom(araei: moknok[jeongsu], tageuteu: jeongsu) -> moknok[jeongsu]:
    dongan sijak < kkeut:
    

    इस तरह लिखने पर कोड और अधिक संक्षिप्त हो सकता है। हालांकि, uppercase/lowercase distinction का लाभ खो जाएगा
    मैंने सुना है कि language density चाहे जो हो, information processing speed लगभग समान रहती है

    • 2000 के दशक की शुरुआत में Chinese Python translation की कोशिश हुई थी
      संबंधित ब्लॉग पोस्ट
      लेकिन वह सफल नहीं हुई। क्योंकि ज़्यादातर computer environments पहले से ही Latin character input की माँग करते हैं, और कुछ keywords याद करना मुश्किल नहीं है
    • अच्छा point है। ‘Han’ में वास्तव में कोरियाई शब्द(hamsu, manyak आदि) उपयोग होते हैं, लेकिन उदाहरण के ‘peongkeu’, ‘araei’ जैसे लिप्यंतरण कोरियाई उपयोगकर्ताओं को अटपटे लग सकते हैं
    • Scratch JSON-आधारित है, इसलिए multi-language switching आसान है। लेकिन ज़्यादातर programmers English keywords बनाए रखते हैं क्योंकि documentation, libraries, और collaboration environment सब English-केंद्रित हैं
      LLM के युग में भी, training data का अधिकांश हिस्सा English code है, इसलिए English code अब भी अधिक efficient रहने की संभावना है
    • जापानी में input mode switching झंझटभरा होने के कारण programming के लिए अप्रभावी है। Hangul में भी ऐसी ही समस्या हो सकती है
    • उदाहरण मज़ेदार है
  • शानदार project है। लगभग 190 साल पहले(!) मैंने कोरिया की एक university में पढ़ाई की थी, और अब मेरी कोरियाई बहुत बुनियादी रह गई है, लेकिन sample code देखते हुए ऐसा लगता है जैसे मैं नए शब्द सीख रहा हूँ

  • मुझे यह project सच में बहुत पसंद आया। code samples देखते हुए मैं कुछ भी समझ नहीं पाया, फिर भी मुझे एहसास हुआ कि non-English-speaking developers जब पहली बार English-आधारित language देखते होंगे तो कैसा महसूस करते होंगे
    Lisp अब भी parentheses का स्वर्ग है :-)

    • असली barrier keywords नहीं, बल्कि यह है कि ज़्यादातर documentation और discussion सिर्फ English में हैं
    • कई दशकों तक English का उपयोग तर्कसंगत रहा है। टिप्पणी के लिए धन्यवाद
  • इससे चीन की Easy Programming Language याद आ गई
    EPL wiki लिंक
    लगभग 15 साल पहले चीन के बहुत से बच्चों ने पहली बार programming इसी भाषा से सीखी थी