SYNTAX
ในวิทยาการคอมพิวเตอร์ คำว่า syntax ของภาษาคอมพิวเตอร์หมายถึงชุดของกฎที่กำหนดการรวมกันของสัญลักษณ์ที่ถือว่าเป็นส่วนย่อยหรือเอกสารที่มีโครงสร้างอย่างถูกต้องในภาษานั้น สิ่งนี้ใช้ได้กับทั้งภาษามาร์กอัป โดยที่เอกสารแสดงข้อมูลและภาษาโปรแกรม โดยที่เอกสารแสดงซอร์สโค้ด ไวยากรณ์ของภาษากำหนดรูปแบบพื้นผิวของมัน ภาษาคอมพิวเตอร์ที่ใช้ข้อความจะขึ้นอยู่กับลำดับของอักขระ ภาษาการเขียนโปรแกรมเชิงภาพนั้นขึ้นอยู่กับการเชื่อมต่อระหว่างสัญลักษณ์ (ซึ่งอาจเป็นแบบกราฟิกหรือข้อความ) และเค้าโครงเชิงพื้นที่ เอกสารที่เกิดขึ้นไม่ถูกต้องทางวากยสัมพันธ์มีข้อผิดพลาดทางไวยากรณ์
วากยสัมพันธ์ - แบบฟอร์ม - ตรงกันข้ามกับความหมาย - ความหมาย ในการประมวลผลภาษาคอมพิวเตอร์ การประมวลผลเชิงความหมายมักเกิดขึ้นหลังจากการประมวลผลทางวากยสัมพันธ์ อย่างไรก็ตาม ในบางกรณีการประมวลผลเชิงความหมายมีความสำคัญสำหรับการวิเคราะห์วากยสัมพันธ์ที่สมบูรณ์ ดังนั้นจึงทำพร้อมกันหรือร่วมกัน ในคอมไพเลอร์ การวิเคราะห์วากยสัมพันธ์ประกอบด้วยส่วนหน้า ในขณะที่การวิเคราะห์เชิงความหมายประกอบด้วยส่วนหลัง (และปลายตรงกลางในกรณีที่แยกเฟส)
ระดับของไวยากรณ์
ไวยากรณ์ภาษาคอมพิวเตอร์โดยปกติแบ่งออกเป็นสามระดับที่แตกต่างกัน:
การแยกแยะในลักษณะดังกล่าวทำให้เกิดโมดูลาร์ทำให้ทุกระดับสามารถอธิบายและประมวลผลแยกจากกัน และมักจะแยกจากกัน มันเริ่มต้นโดย lexer เปลี่ยนลำดับเชิงเส้นของอักขระให้เป็นลำดับเชิงเส้นของโทเค็น: สิ่งนี้เรียกว่า การวิเคราะห์คำศัพท์ หรือ lexing
ประการที่สอง parser จะเปลี่ยนลำดับเชิงเส้นของโทเค็นเป็นสิ่งที่เรียกว่าแผนผังไวยากรณ์แบบลำดับชั้น สิ่งนี้เรียกว่าการ แยกวิเคราะห์
ประการที่สาม การวิเคราะห์ตามบริบทจะแก้ไขการตรวจสอบและประเภทชื่อ ขั้นตอนการแยกวิเคราะห์นั้นสามารถแบ่งออกเป็นสองส่วน: ต้นไม้ไวยากรณ์ที่เป็นรูปธรรม หรือ แผนผังการแยกวิเคราะห์ ซึ่งกำหนดโดยไวยากรณ์ แต่มีรายละเอียดมากเกินไปสำหรับการใช้งานจริง และ ต้นไม้ไวยากรณ์นามธรรม (AST) ซึ่งทำให้สิ่งนี้ง่ายขึ้นในรูปแบบ ที่ใช้งานได้
ไวยากรณ์กับความหมาย
ไวยากรณ์ของภาษาอธิบายรูปแบบของโปรแกรมที่ถูกต้อง แต่ไม่ได้ให้ข้อมูลใดๆ เกี่ยวกับความหมายของโปรแกรมหรือผลลัพธ์ที่มาพร้อมกับการเรียกใช้โปรแกรมนั้น ความหมายที่มอบให้กับสัญลักษณ์ต่างๆ รวมกันนั้นได้รับการจัดการโดยความหมาย (ไม่ว่าจะเป็นแบบตายตัวหรือเป็นทางการในการใช้งานอ้างอิง) ไม่ใช่ทุกโปรแกรมที่ถูกต้องตามหลักไวยากรณ์ที่ถูกต้องตามความหมาย โปรแกรมที่ถูกต้องตามวากยสัมพันธ์จำนวนมากมีรูปแบบไม่ดีตามกฎของภาษา และอาจ (เกี่ยวกับข้อกำหนดภาษาและความถูกต้องของการใช้งาน) ส่งผลให้เกิดข้อผิดพลาดในการดำเนินการหรือการแปล ในบางกรณี โปรแกรมดังกล่าวอาจแสดงพฤติกรรมที่ไม่ได้กำหนดไว้ แม้ในบางครั้งที่โปรแกรมถูกกำหนดไว้อย่างดีในภาษา ก็ยังสามารถมีความหมายที่ผู้เขียนไม่ได้กำหนดไว้ได้
ในตัวอย่างภาษาธรรมชาติ อาจเป็นไปไม่ได้ที่จะให้ความหมายกับประโยคที่ถูกต้องตามหลักไวยากรณ์ ตัวอย่างเช่น,