12 คะแนน โดย jaypark 2026-03-17 | 12 ความคิดเห็น | แชร์ทาง WhatsApp

ภาษาโปรแกรมเชิงทดลองที่ใช้คำชี้บทบาทและภาคแสดงของภาษาเกาหลีเป็นองค์ประกอบทางไวยากรณ์
ไม่ได้ใช้วิธีแปลคีย์เวิร์ดของภาษาเดิมให้เป็นฮันกึล แต่ตั้งเป้าไปที่ไวยากรณ์ผิวหน้าที่ใกล้กับลำดับการอ่านและการเขียนของผู้พูดภาษาเกาหลี
พัฒนาด้วย Rust และมี WebAssembly browser playground รวมอยู่ด้วย

เป็นสิ่งที่เคยนึกจินตนาการไว้ตั้งแต่ตอนเริ่มเรียนเขียนโค้ด แล้วก็ได้อาศัยความช่วยเหลือจาก Codex จนทำออกมาแบบนี้ได้
คงไม่น่าจะมีความใช้งานจริงเท่าไรนัก.. ตอนนี้กำลังทดลองไวยากรณ์หลายแบบอยู่

หัวใจสำคัญไม่ใช่ "การแทนคีย์เวิร์ดฮันกึล" แต่คือการคงลำดับประโยคภาษาเกาหลีเอาไว้
ตัวอย่างเช่น โค้ดจะออกมาประมาณนี้:

이름은 "철수"이다.  
나이는 20이다.  
  
나이 > 19이면  
  "성인이다"를 출력한다.  
아니면  
  "미성년자이다"를 출력한다.  

คำชี้บทบาทมีความหมายในเชิงไวยากรณ์
은/는 ใช้สำหรับ binding, 을/를 คือเป้าหมาย, คือการเข้าถึงพร็อพเพอร์ตี, 으로 คือเฟรมการแปลงค่า
ดังนั้นจึงเขียนอย่าง 합은 7 더하기 8이다 หรือ 결과는 5의 제곱이다 ได้ด้วย

ฟังก์ชันก็ถูกนิยามและเรียกใช้ในรูปประโยคภาษาเกาหลีเช่นกัน:

인사만들기 함수는 이름을 받아  
  "안녕, " + 이름 + "!"을 돌려준다.  
  
인사문장은 "지음"으로 인사만들기이다.  

รองรับกราฟิกบน canvas ด้วย:

그림판에 { 배경색: "#f6efe2" }으로 지우기.  
그림판에 { x: 120, y: 80, 색: 빨강 }으로 점찍기.  

ภายในใช้โมเดลการส่งข้อความแบบ Smalltalk ดังนั้นแม้ผิวหน้าจะเป็นภาษาเกาหลี แต่โครงสร้างเชิงความหมายค่อนข้างเข้มงวด

สร้างด้วย Rust และ browser playground ก็รันได้ด้วย wasm-pack
ตอนนี้ไปถึงขั้นมีเดโม canvas ของหอคอยฮานอยแล้ว

ยังเป็น v0.1 เลยยังมีหลายอย่างที่ขาดอยู่ แต่ถ้าให้ฟีดแบ็กได้ก็จะขอบคุณมาก

12 ความคิดเห็น

 
picopress 2026-03-22

โอ...

 
wiring 2026-03-21

ถ้าเป็น 나이 > 19이면 ก็น่าจะทำให้เป็น 나이가 19보다 크면 ได้ไม่ใช่หรือครับ/คะ ถ้าตีความส่วนหน้าของ 이/가 และส่วนหน้าของ 보다 เป็นด้านซ้ายและด้านขวาตามลำดับก็น่าจะได้อยู่ ก็คือ 크거나 같으면 หรือ 이상이면 (แต่ในกรณีนี้จะไม่ใช้ 보다 กล่าวคือควรเขียนเป็น 나이가 19 이상이면 ในลักษณะนี้สินะครับ/คะ ถ้าอย่างนั้นก็ต้องแยกซ้ายขวาโดยยึด 이/가 เป็นเกณฑ์ ทำให้ความซับซ้อนในการตีความเพิ่มขึ้นนิดหน่อยนะครับ/คะ)

 
runableapp 2026-03-20

ดีมากจริง ๆ!

เมื่อไม่นานมานี้ตอนที่มีการโพสต์เกี่ยวกับภาษา ก็มีการกล่าวถึงการแนะนำภาษาที่ชื่อว่า Nuri นี้ด้วย
https://github.com/suhdonghwi/nuri/
ดูเหมือนว่าภาษาที่ชื่อว่า Nuri เองก็ใช้ลำดับคำแบบเดียวกับภาษาเกาหลีอย่างเป็นธรรมชาติ

ภาษา Ziium เองก็เป็นประโยคที่เป็นธรรมชาติ ทำให้อ่านได้ง่ายเช่นกัน และถ้าก้าวไปได้อีกขั้น:

อายุ > 19 ถ้าเป็นจริง
พิมพ์ "เป็นผู้ใหญ่"
ไม่เช่นนั้น
พิมพ์ "เป็นผู้เยาว์"

=> ถ้าอายุตั้งแต่ 19 ปีขึ้นไป ก็พิมพ์ว่า 'เป็นผู้ใหญ่' ถ้าไม่ใช่ก็พิมพ์ว่า 'เป็นผู้เยาว์'

ถ้าทำได้แบบนี้ก็คงจะเป็นภาษาเกาหลีที่สมบูรณ์แบบเลยครับ

 
youknowone 2026-03-19

ในบรรดาภาษาโปรแกรมภาษาเกาหลีที่เคยเห็นมาจนถึงตอนนี้ อันนี้น่าสนใจที่สุดในเชิงไวยากรณ์ครับ สนุกดีนะ

 
kairess 2026-03-18

นี่ก็เป็นสิ่งที่ผมเคยได้แต่จินตนาการมาตั้งนานเหมือนกัน แต่ได้มาเห็นว่ามันถูกสร้างขึ้นจริงในช่วงชีวิตนี้ก็น่าทึ่งนะครับ เป็นกำลังใจให้ครับ! ผมจะลองใช้อย่างตั้งใจเลยครับ

 
coremaker 2026-03-18

โอ้ เป็นกำลังใจให้นะ!!!!! รอโปรเจ็กต์แบบนี้มานานแล้ว~

 
backgwa 2026-03-18

ไวยากรณ์คล้ายกับโปรเจกต์ที่ผมเคยทำไว้ก่อนหน้านี้เลย น่าสนใจดี!

 
ahiou 2026-03-18

ถ้าสร้างพรอมต์ตามไวยากรณ์นั้นตรง ๆ ก็น่าจะกลายเป็นสเปกที่ดีมากเลยนะ

 
remin1994 2026-03-18

ว้าว ดูน่าสนุกมากเลยนะ ???

 
oneune 2026-03-17

โอ น่าสนใจจัง! ไวยากรณ์ภาษาเกาหลีต้องใช้แบบเคร่งครัดไหม? หรือว่ามีความยืดหยุ่นได้พอสมควร?

 
joyfui 2026-03-17

ว้าว ภาษาโปรแกรมภาษาแรกของผมคือ Changjo...!

 
nottiger 2026-03-17

ว้าว เป็นโปรเจกต์ที่ยอดเยี่ยมมาก...