เราใช้มันเพื่อสร้างเครื่องมือแยกวิเคราะห์ การทำงานกับ lex / yacc ทำได้ง่ายกว่า
เหตุใดจึงไม่ได้รับการใช้งานอุตสาหกรรมที่ตรวจพบได้?
เรื่องนี้ไม่สามารถตอบได้ "ตรวจจับได้" หมายถึงอะไร ใครจำเป็นต้องได้รับบันทึกตรวจจับ?
http://www.meridiansystems.com/landing/ppc/prolog/getvideo.asp
ถาม Meridian Software เกี่ยวกับการเปิดฉากของพวกเขาหากคุณต้องการข้อเท็จจริง
อย่างไรก็ตามมีอุปสรรคในการเข้าที่ฉันมีประสบการณ์
ประการแรกอารัมภบทอาจช้า เมื่อมีกฎของผู้สมัครจำนวนมากและไม่มีการดำเนินการตัดง่าย ๆ เพื่อ จำกัด พื้นที่การค้นหาอาจใช้เวลาสักครู่กว่าจะเสร็จสิ้น
ประการที่สองอารัมภบทไม่ได้เป็นขั้นตอนหรือการทำงานโปรแกรมเมอร์จำนวนมากหยุดใช้งาน (ที่น่าสนใจคือโปรแกรมเมอร์บางคนใช้ SQL ด้วย) สำหรับเรื่องนั้นโปรแกรมเมอร์บางคนจะใช้ SQL อย่างไม่เต็มใจและทำสิ่งแปลก ๆ เช่นหลีกเลี่ยงการเข้าร่วมการดำเนินการหรืออ้างว่าCOUNT(*)
ไม่มีประสิทธิภาพอย่างน่าอัศจรรย์)
ประการที่สามการเปิดฉากต้องใช้ความคิดที่ชัดเจนเกี่ยวกับกรณีต่าง ๆ การเขียนโปรแกรมขั้นตอนสามารถเลอะเทอะและยังคงทำงานได้อย่างน่าเชื่อถือ คำสั่งที่ไม่สามารถดำเนินการได้เป็นที่ยอมรับ
ต่อไปนี้เป็นที่ยอมรับในแวดวงส่วนใหญ่
b = a + 1
if a > b: # always False
ความคิดที่มืดมนแบบนี้ทำให้คุณมีปัญหาในการเปิดฉาก