ใน chapter 8 เราเห็นว่าโน้ตเพลง “Over the Rainbow” เป็น algorithm ที่นักดนตรีสามารถนำไปปฏิบัติให้เกิดเป็นดนตรีได้ อัลกอริทึมนี้ถูกเขียน (คือ ถูกคิดขึ้นและจดไว้) โดยคอมโพสเซอร์ Harold Arlen ในภาษาของ staff notation. ไวยากรณ์ (grammar) ของภาษานี้สามารถกำหนดได้ ซึ่งบอกรูปลักษณ์ของประโยคในฐานะสกอร์ และโครงสร้างภายในเป็น abstract syntax tree (ต้นไม้โครงสร้างเชิงนามธรรม).
เรายังเห็นด้วยว่า ภาษาหนึ่งอาจถูกกำหนดโดย grammars ที่ต่างกันได้ ซึ่งในตอนแรกอาจดูแปลก แต่ความแตกต่างของ grammar นำไปสู่ความแตกต่างของ abstract syntax และนำเสนอมุมมองต่อโครงสร้างของดนตรีที่ต่างกัน เรื่องนี้สำคัญเพราะเมื่อ Judy Garland จะขับร้อง “Over the Rainbow” เธอต้องแยกวิเคราะห์ (parse) โน้ตเพื่อค้นหาโครงสร้างของเพลง กล่าวคือ ความหมายของภาษาเกิดขึ้นบนพื้นฐานของ abstract syntax ของมัน
นี่จึงเป็นเหตุผลที่ความกำกวม (ambiguity) เป็นปัญหาสำหรับภาษาใด ๆ หากประโยคสามารถมีมากกว่าหนึ่ง abstract syntax tree ก็ไม่ชัดเจนว่าจะต้องใช้โครงสร้างแบบไหนเมื่อนำไปใช้กับกฎความหมาย (semantics) ด้วยเหตุนี้ ประโยคที่กำกวมจึงอาจมีความหมายได้มากกว่าหนึ่ง ซึ่งเป็นคำนิยามปกติของคำว่า ambiguous.
บทนี้จะพิจารณาปัญหาความกำกวมอย่างละเอียดขึ้นและตอบคำถามว่าประโยคได้รับความหมายอย่างไร ข้อสังเกตสำคัญคือการนิยามความหมายของภาษาอย่างเป็นระบบขึ้นอยู่กับแนวคิดเรื่อง compositionality ซึ่งกล่าวว่า semantics ของประโยคได้มาจากการรวม semantics ของส่วนประกอบตามโครงสร้างของประโยค วิธีนี้ชี้ให้เห็นว่าโครงสร้างของภาษาเป็นปัจจัยสำคัญในการกำหนดความหมาย
That Doesn’t Sound Right (นั่นฟังดูไม่ถูกต้อง)
ภาษาโน้ตดนตรีสามารถกำหนดได้ด้วย grammar ที่ค่อนข้างเรียบง่าย แต่แม้สำหรับภาษาที่เรียบง่ายแบบนี้ก็ยังไม่ชัดเจนว่าจะใช้กฎ grammar อะไร ปัญหาหนึ่งที่อาจเกิดขึ้นกับภาษาได้คือ ambiguity ซึ่งหมายความว่าประโยคหนึ่งอาจมีได้มากกว่าหนึ่งความหมาย ความกำกวมสามารถแทรกซึมเข้ามาในประโยคได้สองวิธี ประการแรก คำหรือสัญลักษณ์พื้นฐานของภาษานั้นอาจกำกวม เรียกว่า lexical ambiguity (ดู chapter 3) ประการที่สอง การผสมคำบางอย่างในประโยคอาจกำกวม แม้ว่าคำแต่ละคำจะไม่กำกวมก็ตาม เรียกว่า grammatical ambiguity ยกตัวอย่างประโยค “Bob knows more girls than Alice.” ซึ่งอาจหมายได้ว่า Bob รู้จักผู้หญิงหลายคน หรืออาจหมายว่าเขารู้จักผู้หญิงมากกว่า Alice รู้จักก็ได้
ความกำกวมทางไวยากรณ์เกิดขึ้นเมื่อ grammar สามารถสร้างได้มากกว่าหนึ่ง syntax tree สำหรับประโยคหนึ่ง ๆ เพื่อยกตัวอย่างต่อจากดนตรี ให้พิจารณาส่วนหนึ่งของ “Over the Rainbow” น่าสนใจที่สกอร์ ไม่มี bar เลย ซึ่งทำให้ประโยคนี้กำกวม เพราะไม่ชัดเจนว่าโน้ตตัวแรกหรือโน้ตตัวที่สองควรถูกเน้นเมื่อเล่น
ถ้าคุณรู้จักเพลงและลองร้องตามสกอร์ คุณจะสังเกตได้ว่าควรเน้นที่โน้ตตัวที่สอง การเน้นที่โน้ตตัวแรกคงร้องได้ยากกว่า โดยปกติแล้วจะเป็นโน้ตตัวแรกของแต่ละบาร์ที่ถูกเน้น ดังนั้นถ้า Judy Garland ได้สกอร์เวอร์ชันก่อนหน้าที่ให้มาแทนเวอร์ชันต้นฉบับ เธอคงจะสมมติผิด ๆ ว่าควรเน้นที่โน้ตตัวแรก ทั้งสองการตีความนี้สะท้อนในสอง abstract syntax trees ที่ต่างกัน ดังที่เห็นใน figure 9.1: การตีความแรกจัดกลุ่มแปดโน้ตแรกเป็น measure แรกและโน้ตสุดท้ายเป็น measure ที่สอง การตีความที่สองจัดกลุ่มโน้ตตัวแรกเป็น measure แรกและอีกแปดโน้ตที่เหลือเป็น measure ที่สอง
ต้นไม้ไวยากรณ์ทั้งสองสามารถได้มาถ้าเราแก้ grammar เพื่อไม่ให้รวมสัญลักษณ์ bar ความแตกต่างของสอง abstract syntax trees เกิดจากการตัดสินใจต่างกันว่าจะใช้กฎไหนในการขยาย nonterminal ของ measure แรก ต้นไม้ทางซ้ายของรูปเกิดขึ้นเมื่อเราขยายเป็น eight note nonterminals ขณะที่ต้นไม้ทางขวาเกิดขึ้นถ้าเราขยายเป็นหนึ่ง note nonterminal ทั้งสองต้นแทนลำดับโน้ตเดียวกัน แต่โครงสร้างภายในต่างกัน ต้นซ้ายเน้นคำว่า “Some” ขณะที่ต้นขวาเน้นคำว่า “day” ลำดับโน้ตชุดนี้จริง ๆ ไม่สามารถ parse ได้อย่างถูกต้อง เพราะเวลารวมของเก้าโน้ตรวมเป็น 1⅛ ซึ่งมากกว่าเวลาที่ใส่ลงไปใน measure เดียว
Figure 9.1 ความกำกวมใน grammar อาจทำให้ประโยคมี abstract syntax trees ที่ต่างกัน ต้นไม้เหล่านี้นำเสนอโครงสร้างลำดับชั้นที่ต่างกันสำหรับประโยคเดียวกัน โดยทั่วไปไม่สามารถกำหนดความหมายของประโยคเช่นนี้ได้ เพราะโครงสร้างมีผลต่อความหมาย
เพื่อแสดงประโยคอย่างถูกต้อง ต้องใส่ bar บางจุดเพื่อแยกโน้ตออกเป็นสอง measures ตำแหน่งที่ถูกต้องคือหลังโน้ตตัวแรก ซึ่งจะทำให้การเน้นอยู่ที่โน้ตตัวที่สอง
The Wizard of Oz มีตัวอย่างความกำกวมอีกอันในภาษาอังกฤษ เมื่อ Wicked Witch เขียนบนท้องฟ้าว่า “Surrender Dorothy” ด้วยไม้กวาดของเธอ ข้อความนี้อาจหมายได้สองอย่าง: เรียกร้องให้ชาวเมืองของ Emerald City ส่งมอบ Dorothy หรือเรียกร้องให้ Dorothy ยอมจำนนตัวเอง ในกรณีหลังควรมีจุลภาคระหว่าง “Surrender” และ “Dorothy” เช่นเดียวกับที่บาร์ในโน้ตช่วยชี้โครงสร้างและการเน้นของเมโลดี้ เครื่องหมายวรรคตอนและคีย์เวิร์ดก็ทำหน้าที่เดียวกันในภาษาธรรมชาติและใน programming languages
บางครั้งภาษามี construct ที่ให้ทางเลือกกับผู้ตีความของ algorithm ว่าควรทำขั้นตอนไหน เช่น notation สำหรับ improvisation ที่นี่เปิดทางให้นักดนตรีเลือก pitch ของโน้ตที่สอง สาม และสี่ อัลกอริทึมที่ใช้ construct แบบนี้เรียกว่า nondeterministic. ใน notation ดนตรี การมี nondeterminism บางครั้งช่วยให้มีที่ว่างสำหรับการ improvisation ให้ความยืดหยุ่นในการตีความและการแสดง แต่ไม่ควรสับสนระหว่าง nondeterminism กับ ambiguity ในมุมมองเชิงอัลกอริทึม สกอร์ให้คำสั่งแก่นักดนตรีเพื่อผลิตลำดับเสียง แต่ละเสียงมี pitch และ duration ที่แน่นอน ตรงกันข้าม notation ที่กำกวมจะทิ้งให้ผู้เล่นสงสัยว่าควรทำอะไร ดังนั้นในขณะที่ nondeterminism เป็น feature ของภาษา ความกำกวมเป็น bug ในการนิยาม syntax ของภาษา อาจทำให้แปลกใจ แต่ algorithm ที่ปล่อยให้มีทางเลือกยังพบได้บ่อย ตัวอย่างเช่น ในอัลกอริทึมการหาเส้นทางของ Hansel and Gretel ก้อนกรวดถัดไปที่ต้องเลือกไม่ได้ถูกกำหนดอย่างเฉพาะเจาะจง
ความกำกวมเป็นปรากฏการณ์ที่แพร่หลายในภาษา มันเตือนให้เรารู้ว่าภาษาไม่ใช่แค่ชุดของประโยคที่ถูกต้องเท่านั้น แต่ยังแมปประโยคเหล่านี้ไปสู่โครงสร้างในรูปของ abstract syntax trees ความกำกวมบางครั้งก็น่าสนุกและถูกนำมาใช้ในดนตรีเพื่อสร้างลูกเล่น เช่นการเริ่มทำนองที่ผู้ฟังตีความในทางหนึ่งแล้วเพิ่มจังหวะต่างออกไปจนเกิดความประหลาดใจและบังคับให้ผู้ฟังเปลี่ยนการตีความ
ในตัวอย่างของเราคุณสามารถจำลองสถานการณ์นี้ได้ดังนี้ (วิธีนี้ทำได้ดีที่สุดกับสองคน หากมีคีย์บอร์ดคนเดียวก็พอทำได้แต่ผลจะไม่ชัดเท่า) คนหนึ่งเริ่มฮัมหรือเล่น (แต่ไม่ร้อง—น่าจะยากเกินไป) โน้ตยกสลับ G และ E เป็น eighth notes โดยเน้นผิดที่ที่ G หลังจากผ่านไปสักพัก คนที่สองเริ่มฮัม quarter notes (เช่น C) ที่เริ่มพร้อมกับแต่ละ E ที่คนแรกฮัม หลังจากทำซ้ำไม่กี่ครั้ง คุณจะรับรู้การเปลี่ยนแปลงจังหวะและเพลงจะฟังเหมือนท่อนที่คุ้นเคยจาก “Over the Rainbow.”
ความกำกวมเกิดขึ้นในสัญลักษณ์อื่น ๆ ด้วย คุณน่าจะเคยเห็น Necker cube ถ้าคุณมองภาพนานพอ การรับรู้ของคุณจะสลับไปมาระหว่างมองลงมาที่ลูกบาศก์จากด้านขวาและมองขึ้นมาที่ลูกบาศก์จากด้านซ้าย อีกครั้งมีการแทนภาพเดียวที่มีการตีความโครงสร้างสองแบบ ความกำกวมนี้มีผล หากคุณต้องการสัมผัสมุมบนขวาด้านหน้า (top right front corner) ของลูกบาศก์ ตำแหน่งที่คุณยื่นมือไปขึ้นอยู่กับการตีความของภาพนั้น
รูปที่เกี่ยวข้องอย่างเช่น Penrose triangle (ได้แรงบันดาลใจจากภาพวาดของ M. C. Escher) ปัญหาของรูปเหล่านี้ไม่ใช่การมีการตีความหลายแบบ แต่เป็นการที่ ไม่มี การตีความใด ๆ ที่สอดคล้องกับความเป็นจริงทางกายภาพตามที่ผู้คนรับรู้ (ดู chapter 12).
ความกำกวมเป็นแนวคิดที่น่าสนใจและเป็นแหล่งมุกตลกในภาษาธรรมชาติ เช่นการเล่นมุกระหว่าง “Let’s eat, grandma” กับ “Let’s eat grandma.” อย่างไรก็ตาม ความกำกวมเป็นปัญหาจริงจังสำหรับภาษาเชิงอัลกอริทึม เพราะมันอาจทำให้ไม่สามารถแทนความหมายที่ตั้งใจไว้ได้อย่างชัดเจน มีปฏิสัมพันธ์ละเอียดอ่อนระหว่าง syntax ของภาษาและความหมาย ในด้านหนึ่งต้องพิจารณา syntax ของภาษาอย่างรอบคอบเพื่อจะกำหนดความหมายได้ แต่ในอีกด้านหนึ่งก็ต้องเข้าใจความหมายก่อนจึงจะกำหนด syntax ได้อย่างถูกต้อง
Take on Meaning (การพิจารณาเรื่องความหมาย)
ตัวอย่างความกำกวมแสดงให้เห็นว่าโดยไม่มีความรู้เรื่องโครงสร้างของประโยค เราไม่สามารถเข้าใจความหมายที่ถูกต้องของมันได้ แต่แท้จริงแล้ว "ความหมาย" ของประโยคคืออะไร?
เนื่องจากภาษาธรรมชาติเช่น English ใช้พูดถึงทุกสิ่งทุกอย่าง จึงยากมากที่จะจำกัดขอบเขตความหมายของมัน นอกจากจะบอกว่า “everything that can be talked about.” สำหรับภาษาดนตรีเรื่องนี้ง่ายกว่ามาก: ความหมายของประโยค นั่นคือ ชิ้นดนตรี คือเสียงที่คุณได้ยินเมื่อชิ้นนั้นถูกบรรเลง ก่อนจะลงลึกในคำถามเรื่องความหมายของภาษาและวิธีนิยามมัน ผู้เขียนอยากชี้ให้เห็นความหมายของคำ meaning สองความหมาย ด้านหนึ่งคือความหมายของประโยคเดี่ยว ๆ อีกด้านหนึ่งคือความหมายของภาษา เพื่อแยกความหมายทั้งสอง ผู้เขียนมักใช้คำว่า semantics เมื่อพูดถึงภาษา และคำว่า "meaning" เมื่อหมายถึงประโยครายประโยค
ภาพรวมว่าประโยค ภาษา และความหมายเกี่ยวข้องกันอย่างไรแสดงใน figure 9.2 โดยสรุป semantics ของภาษาได้มาจากความหมายของทุกประโยคของมัน และความหมายของประโยคหนึ่ง ๆ ได้มาจากการจับคู่กับค่าหนึ่งในโดเมนที่ภาษานั้นพูดถึง
ความหมายของประโยคหนึ่งในภาษาดนตรีคือดนตรีที่คุณได้ยินเมื่อมีคนบรรเลงมัน อย่างไรก็ตาม เนื่องจากนักดนตรีแต่ละคนจะตีความเพลงต่างกัน—บางคนร้อง บางคนเล่นเครื่องดนตรี บางคนปรับ harmonization หรือความเร็ว—จึงดูเหมือนว่าจะไม่มีเสียงเดียวที่เป็นความหมายเฉพาะของเพลง ปัญหานี้อาจแก้ได้โดยสมมติการแสดงด้วยเครื่องมือหนึ่งเครื่องโดยนักดนตรีคนหนึ่ง หรือใช้การแสดงโดย MIDI synthesizer เป็นมาตรฐาน อีกทางคือบอกว่า ความหมายของ “Over the Rainbow” คือชุดของเสียงทั้งหมดที่เกิดจากการแสดงที่ถูกต้องของเพลง แน่นอนว่าสิ่งนี้ยกคำถามต่อไปว่าการแสดงแบบไหนนับว่าเป็นการแสดงที่ถูกต้อง เพื่อหลีกเลี่ยงการถกเถียงเชิงปรัชญาที่ซับซ้อน ผู้เขียนขออ้างคำพูดของอดีตผู้พิพากษาศาลสูงสหรัฐ Potter Stewart ผู้ซึ่งเมื่อถูกถามว่ามาตรฐานของเขาสำหรับสิ่งลามกคืออะไร ตอบอย่างมีชื่อเสียงว่า “I know it when I see it.” ดังนั้น ถ้าคุณเคยได้ยินเวอร์ชันต้นฉบับของ “Over the Rainbow” ใน The Wizard of Oz คุณจะรู้จักการแสดงที่ถูกต้องเมื่อได้ยินมัน ในท้ายที่สุด ดนตรีคือศิลปะ และเราไม่ควรแปลกใจหรือตกใจที่มันไม่สามารถจับได้อย่างสมบูรณ์ด้วยคำนิยามเชิงรูปแบบ ประเด็นสำคัญคือ ความหมายของสกอร์ “Over the Rainbow” คือเสียงที่ใครสักคนที่รู้จักเพลงดีจะจำได้ว่าเป็นการแสดงของเพลงนั้น
Figure 9.2 semantics ของภาษาได้มาจากการแมปที่เชื่อมโครงสร้างของแต่ละประโยค (แสดงโดย abstract syntax tree) เข้ากับองค์ประกอบหนึ่งของ semantic domain. มุมมองของความหมายแบบนี้เรียกว่า denotational semantics เพราะอาศัยการกำหนด denotations ให้กับประโยคของภาษา.
ถ้าเรารวบรวมทุกเสียงที่อาจเกิดขึ้นจากการแสดงสกอร์ดนตรีใด ๆ ก็ตาม เราจะได้ semantic domain หนึ่งสำหรับภาษาอย่างเช่น staff notation หรือ tablature semantic domain คือชุดของความหมายทั้งหมดที่ประโยคใด ๆ ของภาษานั้นสามารถมีได้ แน่นอนว่า semantic domain เป็นชุดขนาดใหญ่ แต่มีหลายอย่างที่มัน ไม่มี เช่น รถ สัตว์ ความคิด ภาพยนตร์ กฎจราจร เป็นต้น ดังนั้นชุดนี้ยังคงมีประโยชน์ในการบ่งลักษณะของภาษา โดยอธิบายว่าผู้ใช้ภาษาคาดหวังให้ประโยคของภาษานั้นสื่อถึงอะไร
การรวบรวมประโยคแต่ละประโยคของภาษาและความหมายที่สัมพันธ์กันทั้งหมดคือ semantics ของภาษา ถ้าภาษาไม่มีความกำกวม (nonambiguous) ประโยคแต่ละประโยคจะมีเพียงความหมายเดียว และการเลือกประโยคใด ๆ จากภาษาจะนำไปสู่ความหมายนั้น ในภาษาที่กำกวม ความที่ประโยคหนึ่งอาจมีมากกว่าหนึ่งความหมายสะท้อนโดยการที่มันมีหลาย syntax trees ซึ่งแต่ละอันอาจให้ความหมายต่างกัน มุมมองนี้ของความหมายเรียกว่า denotational semantics ซึ่งอิงแนวคิดการกำหนดความหมายให้กับประโยค มีแนวทางอื่นอีกหลายวิธีในวิทยาการคอมพิวเตอร์สำหรับการกำหนด semantics ของภาษา แต่ denotational semantics น่าจะใกล้เคียงกับสัญชาตญาณของเรามากที่สุดและเข้าใจได้ง่ายกว่าทางเลือกบางอย่าง
เป้าหมายหลักของภาษาคือการสื่อความหมาย แต่ภาษาที่ถูกประดิษฐ์ขึ้นไม่มี semantics ที่ชัดเจนโดยอัตโนมัติ ดังนั้นเพื่อให้ภาษามีประโยชน์ จึงจำเป็นต้องกำหนด semantics ให้กับมัน เพราะภาษาส่วนใหญ่ประกอบด้วยประโยคจำนวนอนันต์ เราจึงไม่สามารถแค่ระบุรายการประโยคทั้งหมดและความหมายของมันได้ ต้องมีวิธีการเชิงระบบอื่นในการกำหนด semantics ของภาษา คำถามนี้สุดท้ายก็กลับไปสู่การหาวิธีแบบอัลกอริทึมสำหรับการกำหนดความหมายของประโยคแต่ละประโยค การนิยาม denotational semantics แบบอัลกอริทึมสำหรับภาษาแบ่งเป็นสองส่วน ส่วนแรกเป็นการแมป terminal symbols ไปยังองค์ประกอบพื้นฐานของ semantic domain ในกรณีนี้หมายถึงการแมปโน้ตแต่ละตัวไปยังเสียงที่มี pitch และ duration ที่กำหนดไว้ ส่วนที่สองเป็นกฎที่บอกว่าแต่ละ nonterminal จะสร้างความหมายของมันจากความหมายของลูก ๆ ใน syntax tree อย่างไร ในตัวอย่างนี้มีสาม nonterminals กฎสำหรับ note ง่ายมาก เพราะแต่ละ note nonterminal มีลูกเพียงหนึ่งตัว ซึ่งหมายความว่าเสียงของมันควรจะเหมือนกับเสียงของลูกนั้น ความหมายของ measure ได้มาจากการต่อเสียงของลูกตามลำดับที่ปรากฏ สุดท้าย ความหมายของ melody ได้มาดังเดียวกับ measure คือจากการต่อเสียงที่ได้มาเป็นความหมายของ measures ของเมโลดี้
ตัวอย่างนี้สาธิตว่าความหมายของประโยคถูกสร้างอย่างเป็นระบบผ่าน abstract syntax tree โดยการนำความหมายของใบไม้ (leaves) มาประกอบเป็นความหมายของพ่อแม่ และนำความหมายเหล่านั้นมาประกอบต่อ ๆ กันจนได้ความหมายสำหรับรากของต้นไม้ การนิยาม semantics ที่มีรูปแบบนี้เรียกว่า compositional การนิยามแบบ compositional น่าสนใจเพราะสะท้อนวิธีที่ grammar นิยาม syntax ของภาษาที่มีประโยคไม่จำกัดผ่านชุดกฎที่จำกัด ภาษาที่ semantics สามารถนิยามในแบบ compositional เรียกว่า compositional หลักการ compositionality ถูกระบุโดย Gottlob Frege ระหว่างการศึกษาภาษาและวิธีการนิยาม semantics อย่างเป็นรูปแบบ ระดับหนึ่งของ compositionality ถือเป็นสิ่งจำเป็นเพื่อให้ได้คำอธิบายที่จำกัดสำหรับความหมายของจำนวนประโยคที่เป็นอนันต์ตามที่ grammar ให้ไว้ ถ้าภาษาไม่มี compositionality โดยทั่วไปจะเป็นปัญหาในการกำหนด semantics เพราะความหมายของประโยคใด ๆ จะไม่ได้มาจากการประกอบความหมายของส่วนประกอบ แต่ต้องอธิบายแยกเป็นข้อยกเว้น ซึ่งเป็นการยกเลิกกฎทั่วไปสำหรับการกำหนดความหมาย
ภาษาดนตรีที่เรียบง่ายซึ่งอธิบายที่นี่เป็นแบบ compositional แต่ภาษาทั่วไปหลายภาษาไม่ใช่หรือเพียงบางส่วนเท่านั้น English เป็นตัวอย่างหนึ่ง (เช่นเดียวกับภาษาธรรมชาติอื่น ๆ ส่วนใหญ่) ตัวอย่างง่าย ๆ ของความไม่เป็น compositional ดูได้จากคำประกอบ: ในขณะที่ "firefighter" คือคนที่ดับไฟ แต่ "hot dog" ไม่ได้หมายถึงสุนัขที่ร้อนจัด และ "red herring" ไม่ได้หมายถึงปลาที่มีสีแดงเฉพาะ นอกจากนี้ยังมีสำนวน idiomatic เช่น “kicking the bucket” หรือ “spilling the beans” ซึ่งความหมายของพวกมันไม่ได้ได้มาจากการรวมความหมายของคำแต่ละคำ
Staff notation ยังมีองค์ประกอบที่ไม่เป็น compositional เช่น tie ซึ่งเป็นสัญลักษณ์ที่เชื่อมโน้ตสองตัวติดต่อกันที่มี pitch เดียวกัน โดยทั่วไปเชื่อมโน้ตสุดท้ายของ measure หนึ่งกับโน้ตแรกของ measure ถัดไป เรื่องนี้เกิดขึ้นใน “Over the Rainbow” ตอนท้ายสุดของเพลงในวลี “why oh why can’t I?” ที่คำ “I” ถูกร้องเป็นโน้ตเดียวที่ยาวตลอดสอง measures ตามกฎการหาความหมายของเมโลดี้ เราต้องหาความหมายของแต่ละ measure แล้วต่อกัน ซึ่งจะได้เป็นสองเสียงความยาวหนึ่ง measure แทนที่จะเป็นเสียงเดียวที่ยาวสอง measures ดังนั้นเพื่อให้ได้ความหมายที่ถูกต้องของโน้ตที่ถูกผูก (tied) ข้ามสอง measure (หรือมากกว่า) กฎการหาความหมายของเมโลดี้ต้องถูกเขียนทับด้วยกฎที่ปฏิบัติกับกลุ่ม measures ที่โน้ตถูกผูกให้เป็นหน่วยเดียว
กฎในการกำหนดความหมายของประโยคมีความคล้ายคลึงอย่างมากกับกฎที่นักดนตรีปฏิบัติตามเมื่อตีความ notation ดนตรี นี่ไม่ใช่เรื่องบังเอิญ เพราะ denotational semantics สำหรับภาษาคืออัลกอริทึมที่คำนวณความหมายของประโยคหนึ่ง ๆ จากภาษานั้น คอมพิวเตอร์ที่เข้าใจภาษาที่ denotational semantics ถูกกำหนดไว้สามารถรัน semantics และคำนวณความหมายของประโยคได้ อัลกอริทึมหรือคอมพิวเตอร์ที่สามารถรัน semantics เรียกว่า interpreter. แม้จะฟังแปลกที่มอง Hansel และ Gretel เป็น interpreters ของคำสั่งตามก้อนกรวด แต่การเรียก Judy Garland เป็น interpreter ของดนตรีของ Harold Arlen คงไม่ก่อให้เกิดข้อโต้แย้ง เช่นเดียวกับที่อัลกอริทึมทำให้การคำนวณทำซ้ำได้ การนิยามภาษาเองสามารถใช้สร้างคอมพิวเตอร์เพื่อรันประโยคของภาษานั้นและทำให้การรันภาษาทำซ้ำได้ ในกรณีของ notation ดนตรี ใครก็ตามที่เข้าใจ semantics ของ notation นั้นสามารถเรียนรู้ที่จะตีความ notation ได้ด้วยตนเอง กล่าวคือ semantics สามารถใช้สอนนักดนตรีโดยไม่ต้องมีครู; ช่วยให้คนสอนตัวเองได้
คำถามที่เกี่ยวกับ interpreters คือจะเกิดอะไรขึ้นถ้าเราสร้างการบันทึกเสียงของการแสดงดนตรี การบันทึกเสียงสะท้อนความหมายของชิ้นดนตรีได้ไหม คำตอบคือไม่จริง ๆ สิ่งที่เกิดขึ้นคือการบันทึกเพียงผลิตตัวแทนอีกแบบของดนตรี การบันทึกครั้งแรกของ “Over the Rainbow” ถูกผลิตบนแผ่นเสียงอะนาล็อก ซึ่งมีร่องที่เข็มของเครื่องเล่นแผ่นเสียงตีความและเปลี่ยนเป็นคลื่นเสียง ต่อมาคลื่นเสียงถูกเข้ารหัสเป็นดิจิทัลบน CD เป็นลำดับบิต (ศูนย์และหนึ่ง) ที่ถูกอ่านด้วยเลเซอร์แล้วตีความโดยตัวแปลงดิจิทัลเป็นอะนาล็อกเพื่อสร้างคลื่นเสียงขึ้นมาใหม่ ปัจจุบัน ดนตรีส่วนใหญ่ถูกแทนด้วยฟอร์แมตซอฟต์แวร์ เช่น MP3 ซึ่งออกแบบมาเพื่อรองรับการสตรีมเพลงทางอินเทอร์เน็ต ไม่ว่าจะเป็นตัวแทนรูปแบบใด มันก็ยังเป็นตัวแทนของดนตรีในฟอร์แมตหรือภาษาใดภาษาหนึ่งที่ต้องการผู้แสดงหรือคอมพิวเตอร์ในการรันคำสั่งของภาษานั้นเพื่อสร้างเอฟเฟกต์เสียงที่ตั้งใจไว้ ดังนั้น การเล่นและบันทึกชิ้นดนตรีจึงเป็นรูปแบบหนึ่งของการแปลจากภาษาหนึ่ง เช่น staff notation ไปยังภาษาอีกแบบหนึ่ง เช่น การแทนเป็นบิตของคลื่นเสียง