ฉันกำลังพยายามหาตัวอย่างที่ดีของยูทิลิตี้ความแตกต่าง / ผสานความหมาย กระบวนทัศน์ดั้งเดิมของการเปรียบเทียบไฟล์ซอร์สโค้ดทำงานโดยการเปรียบเทียบบรรทัดและตัวอักษร .. แต่มียูทิลิตี้ใดบ้าง (สำหรับภาษาใด ๆ ) ที่พิจารณาโครงสร้างของโค้ดเมื่อเปรียบเทียบไฟล์หรือไม่?
ตัวอย่างเช่นโปรแกรม diff ที่มีอยู่จะรายงาน "พบความแตกต่างที่อักขระ 2 ของบรรทัด 125 ไฟล์ x มีโมฆะโดยที่ไฟล์ y มีบูล" เครื่องมือพิเศษควรสามารถรายงาน "Return type of method doSomething () เปลี่ยนจาก void เป็น bool"
ฉันขอยืนยันว่าข้อมูลเชิงความหมายประเภทนี้เป็นสิ่งที่ผู้ใช้กำลังมองหาเมื่อเปรียบเทียบโค้ดและควรเป็นเป้าหมายของเครื่องมือโปรแกมรุ่นต่อไป มีตัวอย่างในเครื่องมือที่มีอยู่หรือไม่?