ในการสร้างอนุกรมวิธานใด ๆ คุณต้องถามตัวเองก่อน:
- วัตถุที่ฉันจะใส่ลงไปในความสัมพันธ์ใด ๆ ที่ถูกกำหนดไว้อย่างเหมาะสม
- ถ้าเป็นเช่นนั้นจริง ๆ แล้วพวกเขาอยู่?
- ฉัน จำกัด ตัวเองให้มีความสัมพันธ์เฉพาะระหว่างวัตถุหรือมีข้อกำหนดที่กำหนดไว้สำหรับระบบที่จะใช้ความสัมพันธ์ที่ถูกต้องตามกฎหมายเท่านั้นหรือไม่
โดยทั่วไปเมื่อได้ยินคำถามเช่นเดียวกับที่คุณถามคำตอบที่คาดหวังทำให้หลายสมมติฐาน ยกตัวอย่างเช่นมันเป็นเรื่องธรรมดาที่จะสันนิษฐานว่าเนื่องจากทั้งหมดนี้เป็นภาษาที่พวกเขาต้องสร้างลำดับชั้นภายใต้แนวคิดทั่วไปของภาษาที่มากขึ้นหรือว่าพวกเขาแบ่งพื้นที่ของทุกภาษาหรือว่าเป็นส่วนย่อยของกันและกัน
ภาษาโปรแกรม
น่าเสียดายที่ไม่มีการข้างต้นดูเหมือนจะเป็นจริง บางทีภาษาการเขียนโปรแกรมมีคำจำกัดความที่เห็นด้วยมากที่สุด ภาษาการเขียนโปรแกรมเป็นภาษาที่เข้ารหัสโปรแกรม การเข้ารหัสหมายถึงคำในภาษาสามารถตีความได้ว่าเป็นโปรแกรม (ลำดับของการกระทำ) ภาษาโปรแกรมคอมพิวเตอร์เป็นส่วนหนึ่งของสิ่งเหล่านี้ ตัวอย่างของภาษาที่ไม่ใช่คอมพิวเตอร์: รายการขายของชำแปลว่าเส้นทางสำหรับผู้ซื้อในซุปเปอร์มาร์เก็ต DNA ตีความโดยถอดความเปปไทด์บันทึกเสียงดนตรีอะนาล็อกที่ทำหน้าที่เป็นโปรแกรมสำหรับเครื่องบันทึกเทป
ภาษาการเขียนโปรแกรมคอมพิวเตอร์จึงเป็นสิ่งที่คอมพิวเตอร์โปรแกรม
ภาษาสคริปต์
ไม่ได้กำหนดไว้อย่างดี เปิดให้ตีความความหมายของคำนี้ ในอดีตดูเหมือนว่าภาษาการเขียนโปรแกรมซึ่งไม่มีคอมไพเลอร์ในการสร้างรหัสเครื่องถูกเรียกด้วยวิธีนี้ ตามมาตรฐานของทุกวันนี้สิ่งนี้จะทำให้ภาษาการเขียนโปรแกรมยอดนิยมทุกภาษาประกอบไปด้วยหมวดหมู่นี้ แม้แต่ภาษาที่เรียกว่า low-level เช่น C ต้องการรันไทม์พร้อมโพรซีเดอร์ที่มีอยู่ก่อนดังนั้นไบนารีที่ได้จากการคอมไพล์โปรแกรม C นั้นไม่ได้เป็นรหัสเครื่องทั้งหมด แต่ยังเรียกใช้รันไทม์ทุกครั้ง
ภาษามาร์กอัป
ไม่ได้กำหนดไว้อย่างดี เมื่อใดก็ตามที่มีการใช้คำนี้เจตนาจะอธิบายภาษาการเขียนโปรแกรมที่มีคำศัพท์ที่ จำกัด มากซึ่งส่วนใหญ่จะใช้เพื่อสร้างภาพหรือเสียง อาจเป็นเรื่องยากที่จะเห็น XML เป็นการเขียนโปรแกรมบางอย่าง แต่ถ้าคุณดูที่มาร์กอัปของ Man หรือ TexInfo คุณจะเห็นว่าอักขระ "พิเศษ" นั้นเป็นคำแนะนำของล่าม
นอกจากนี้ยังเป็นไปได้ที่จะให้การตีความ "การเขียนโปรแกรม" สำหรับภาษา XML สิ่งที่อาจเป็นดังนี้:
< := put interpreter in the reading node mode
! := if reading node, start CData/Comment mode
else if not in read text mode, signal error
-- := if in start CData/Comment mode, start comment
else if in comment, put in end comment mode
else if in end comment mode, signal error
...
Bottom line: การแบ่งส่วนนี้ ณ วันนี้ดูเหมือนจะไม่มีความหมายมากนักมันสามารถให้สัญชาตญาณบางอย่างแก่คุณเกี่ยวกับภาษาที่คุณเผชิญ แต่มันจะไม่ให้คำจำกัดความที่เข้มงวดกับคุณ