Niklaus Wirth ได้สร้างภาษาโปรแกรม Pascal Niklaus Wirth เป็นผู้เฒ่าแห่งการเขียนโปรแกรมที่เชื่อถือได้ กิจกรรมการสอนและสังคม

เนื้อหาจากวิกิพีเดีย - สารานุกรมเสรี

(ชาวเยอรมัน Niklaus Wirth เกิดเมื่อวันที่ 15 กุมภาพันธ์ พ.ศ. 2477) - นักวิทยาศาสตร์ชาวสวิส ผู้เชี่ยวชาญด้านวิทยาการคอมพิวเตอร์ หนึ่งในนักทฤษฎีที่มีชื่อเสียงที่สุดในด้านการพัฒนาภาษาโปรแกรม ศาสตราจารย์ด้านวิทยาการคอมพิวเตอร์ (ETH) ผู้ชนะทัวริง พ.ศ. 2527 รางวัล. ผู้พัฒนาชั้นนำของภาษา Pascal, Modula-2, Oberon

ชีวประวัติ

Niklaus Wirth เกิดเมื่อวันที่ 15 กุมภาพันธ์ พ.ศ. 2477 ในเมือง Winterthur ชานเมืองซูริก (สวิตเซอร์แลนด์) พ่อแม่: วอลเตอร์ และ เฮ็ดวิก เวิร์ธ พ่อของนิคลอสเป็นครูในโรงเรียน

ในวัยเด็ก Niklaus Wirth สนใจการสร้างแบบจำลองเครื่องบินและสร้างจรวด ความหลงใหลในระบบอิเล็กทรอนิกส์และระบบควบคุมโปรแกรมเริ่มต้นจากการพัฒนาอุปกรณ์ควบคุมระยะไกลสำหรับโมเดลต่างๆ ในปี 1954 เขาเข้าเรียนที่คณะอิเล็กทรอนิกส์ที่ Swiss Federal Institute of Technology (ETH) ในเมืองซูริก ซึ่งเขาได้รับปริญญาตรีสาขาวิศวกรรมไฟฟ้าในเวลาสี่ปี เขาศึกษาต่อที่มหาวิทยาลัยลาวาล (ควิเบก แคนาดา) และได้รับปริญญาโทในปี 2503 จากนั้นเขาได้รับเชิญให้ไปที่มหาวิทยาลัยแคลิฟอร์เนียที่เบิร์กลีย์ (สหรัฐอเมริกา) ซึ่งในปี 1963 ภายใต้การแนะนำของศาสตราจารย์ฮัสกี้ เขาได้ปกป้องวิทยานิพนธ์ของเขา ซึ่งมีหัวข้อคือภาษาโปรแกรมออยเลอร์ ซึ่งเป็นส่วนขยายของ Algol โดยใช้ภาษา Lisp

วิทยานิพนธ์ของ Wirth ได้รับการสังเกตจากชุมชนนักพัฒนาภาษาโปรแกรม และในปี 1963 เดียวกันนั้น เขาได้รับเชิญให้เข้าร่วมคณะกรรมการมาตรฐาน Algol ของ IFIP (สหพันธ์สารสนเทศระหว่างประเทศ) ซึ่งกำลังพัฒนามาตรฐานใหม่สำหรับภาษา Algol ซึ่งต่อมากลายเป็น ALGOL-68 . Wirth ร่วมกับ Charles Hoare สนับสนุนในคณะกรรมการในการพัฒนาเวอร์ชันดัดแปลงของ Algol ในระดับปานกลาง โดยปราศจากข้อบกพร่องของภาษาต้นฉบับ และเสริมด้วยเครื่องมือที่จำเป็นอย่างแท้จริงขั้นต่ำ Wirth และ Hoar นำเสนอภาษา Algol-W (W สำหรับ Wirth) ซึ่งเป็นเพียงการปรับปรุงใหม่ของ Algol แก่คณะกรรมการ แต่ไม่ได้รับการสนับสนุน ในช่วงท้ายของการทำงานของคณะกรรมการในปี พ.ศ. 2511 Wirth เป็นหนึ่งในผู้ที่วิพากษ์วิจารณ์ ALGOL-68 โดยพูดถึงการขาดความน่าเชื่อถือและความซ้ำซ้อนอย่างมาก ควบคู่ไปกับระหว่างปี 1963 ถึง 1967 Wirth ทำงานเป็นผู้ช่วยที่มหาวิทยาลัยสแตนฟอร์ด สหรัฐอเมริกา เขาได้พัฒนาและใช้งานภาษา PL/360 ร่วมกับจิม เวลส์ ซึ่งมีจุดมุ่งหมายสำหรับการเขียนโปรแกรมบนแพลตฟอร์ม IBM/360 ซึ่งเป็นภาษาที่มีลักษณะคล้ายอัลกอลซึ่งมีการนำคุณลักษณะหลายอย่างที่ขึ้นอยู่กับระบบที่เกี่ยวข้องกับสถาปัตยกรรม IBM/360 มาใช้

ในปี 1967 เขากลับมาพร้อมกับตำแหน่งรองศาสตราจารย์ที่มหาวิทยาลัยซูริก และในปี 1968 เขาได้รับตำแหน่งศาสตราจารย์ด้านวิทยาการคอมพิวเตอร์ที่ ETH เขาทำงานที่ ETH มาเป็นเวลา 31 ปี เขามีส่วนร่วมในกิจกรรมขององค์กรมากมาย เพื่อปรับปรุงระบบการสอนของมหาวิทยาลัยของเขา

ในปี 1970 เขาได้สร้างภาษาโปรแกรม Pascal ในปี 1970 เขาได้พัฒนาเทคโนโลยีการเขียนโปรแกรมแบบมีโครงสร้างร่วมกับ C. Hoare และ E. Dijkstra บทความของ Wirth ในปี 1971 เรื่อง “การพัฒนาโปรแกรมโดยการปรับแต่งเพิ่มเติม” อธิบายและยืนยันวิธีการพัฒนาซอฟต์แวร์จากบนลงล่างแบบคลาสสิกในปัจจุบัน เพื่อถ่ายโอนระบบ Pascal ไปยังแพลตฟอร์มคอมพิวเตอร์ต่างๆ ในปี 1973 โดยการมีส่วนร่วมของ Wirth ต้นแบบของเครื่องเสมือนได้รับการพัฒนาขึ้นซึ่งจะรัน "pi-code" ระดับกลางบนแพลตฟอร์มใดๆ ก็ตาม ซึ่งโปรแกรมทั้งหมดควรจะถูกรวบรวม .

ในปี 1975 เขาได้พัฒนาภาษา Modula ซึ่งเขาได้นำแนวคิดในการพัฒนาโปรแกรมโมดูลาร์มาใช้ด้วยอินเทอร์เฟซระหว่างโมดูลที่มีการกำหนดไว้อย่างดีและการเขียนโปรแกรมแบบขนาน นอกจากนี้ ไวยากรณ์ของภาษายังเปลี่ยนไปในโมดูล - Wirth ทำให้ไม่จำเป็นต้องใช้ตัวดำเนินการผสมในโครงสร้างการแตกแขนงและลูปที่สืบทอดมาจาก Algol-60 โมดูลนี้ไม่เป็นที่รู้จักอย่างกว้างขวางและมีเพียงการทดลองเดียวเท่านั้น แต่เป็นเวอร์ชันดัดแปลง - Modula-2 ซึ่งการพัฒนาเริ่มขึ้นในปี 1977 และสิ้นสุดในปี 1980 โดยมีวัตถุประสงค์เพื่อใช้ซอฟต์แวร์ระบบของระบบ Lilith ที่พัฒนาที่ ETH - 16 -bit คอมพิวเตอร์ส่วนบุคคล กลายเป็นที่รู้จักและได้รับความนิยมอย่างมาก แม้ว่าจะยังไม่ได้รับความนิยมแซงหน้า Pascal [แหล่งที่มาไม่ระบุ 1,091 วัน] โดยเฉพาะการใช้งานเชิงพาณิชย์ ระบบ Lilith นำหน้ากระแสในอุตสาหกรรมคอมพิวเตอร์มาหลายปีแล้ว Wirth รู้สึกเสียใจในภายหลังว่าการไม่ตระหนักถึงศักยภาพของระบบนี้ทำให้อุตสาหกรรมคอมพิวเตอร์ของสวิสพลาดโอกาสในอดีต การพัฒนา Modula-2 คือภาษา Modula-3 ซึ่งพัฒนาร่วมกันโดย DEC และ Olivetti Wirth ไม่ได้มีส่วนร่วมในการสร้างมัน

ในช่วงครึ่งหลังของปี 1970 Wirth เข้าร่วมการแข่งขันของกระทรวงกลาโหมสหรัฐฯ เพื่อพัฒนาภาษาใหม่สำหรับการเขียนโปรแกรมระบบฝังตัว ซึ่งส่งผลให้เกิดการสร้างภาษา Ada เรื่องราวของ ALGOL-68 เกิดขึ้นซ้ำแล้วซ้ำเล่า - โครงการของกลุ่มที่ Wirth และ Hoare ทำงานไม่ได้รับการอนุมัติจากคณะกรรมการภาษา เป็นผลให้โครงการที่อิงจาก Pascal ชนะการแข่งขัน แต่ซับซ้อนและใหญ่โตกว่ามาก

ตั้งแต่ปี 1982 ถึง 1984 และตั้งแต่ปี 1988 ถึง 1990 Wirth เป็นหัวหน้าคณะวิทยาการคอมพิวเตอร์ที่ ETH และตั้งแต่ปี 1990 ก็เป็นสถาบันระบบคอมพิวเตอร์ที่ ETH

ในปี 1988 Wirth ได้พัฒนาภาษาโปรแกรม Oberon โดยร่วมมือกับ Jurg Gutknecht เป้าหมายของการพัฒนาคือการสร้างภาษาสำหรับการใช้งานซอฟต์แวร์ระบบของเวิร์กสเตชันใหม่ที่ได้รับการออกแบบ พื้นฐานสำหรับ Oberon คือ Modula-2 ซึ่งทำให้ง่ายขึ้นอย่างมาก แต่ในขณะเดียวกันก็เสริมด้วยความสามารถใหม่

ในปี 1992 Wirth และ Mössenböck เผยแพร่รายงานเกี่ยวกับภาษาการเขียนโปรแกรมใหม่ Oberon 2 ซึ่งเป็น Oberon เวอร์ชันที่ขยายน้อยที่สุด ในปีเดียวกันนั้น Oberon microsystems ซึ่งเป็นบริษัทในเครือของ ETH ได้ก่อตั้งขึ้น ซึ่งเริ่มพัฒนาระบบของ Oberon Wirth ได้กลายเป็นหนึ่งในสมาชิกของคณะกรรมการบริหาร ในปี 1999 บริษัท นี้ได้เปิดตัว Oberon - Component Pascal เวอร์ชันถัดไปซึ่งเหมาะสำหรับการเขียนโปรแกรมส่วนประกอบมากกว่า ในปี 1996 Wirth ได้พัฒนาภาษาการเขียนโปรแกรมต้นฉบับอีกภาษาหนึ่ง นั่นคือ Lola ซึ่งเป็นภาษาการเรียนรู้อย่างง่ายสำหรับการอธิบายและจำลองวงจรไฟฟ้าดิจิทัลอย่างเป็นทางการ

เมื่อวันที่ 1 เมษายน 1999 Wirth เกษียณอายุ โดยเมื่อถึงขีดจำกัดอายุสำหรับข้าราชการในสวิตเซอร์แลนด์ (ETH เป็นมหาวิทยาลัยของรัฐ พนักงานเป็นข้าราชการ และงานของพวกเขาอยู่ภายใต้กฎหมายที่เกี่ยวข้อง)

เมื่อวันที่ 19 มิถุนายน พ.ศ. 2550 ตามมติของรัฐสภาของ Russian Academy of Sciences หมายเลข 141 Virt ได้รับปริญญาทางวิชาการของ Doctor Honoris causa (ตามคำแนะนำของ Department of Information Technologies and Computer Systems) ผู้ริเริ่มการนำเสนอคือนักวิทยาศาสตร์ชาวรัสเซียในสาขาเทคโนโลยีไอที Igor Shagaev ศาสตราจารย์ที่ London Metropolitan University ซึ่งร่วมมือกับ Niklaus Wirth ในปี 2548-2551 ในโครงการ European ONBASS

สมาชิกของสถาบันการศึกษาระดับชาติ: Swiss Academy of Engineering (Switzerland), U.S. Academy of Engineering (สหรัฐอเมริกา), Berlin-Brandenburg Academy (เยอรมนี)
[แก้] รางวัลและรางวัล
รางวัล IEEE Emanuel Piore (1983)
รางวัล ACM ทัวริง (1984)
รางวัล ACM สำหรับผลงานดีเด่นด้านการศึกษาวิทยาศาสตร์คอมพิวเตอร์ (1987, 1989)
ผู้บุกเบิกคอมพิวเตอร์ IEEE (1988)
กรังปรีซ์ แม็กซ์ เปอติปิแยร์ (1989)
รางวัลวิทยาศาสตร์และเทคโนโลยีของ IBM Europe (1989)
รางวัลมาร์เซล เบอนัวต์ (1990)
ออร์เดน ปูร์ เลอ เมอริต (1996)
เหรียญเลโอนาร์โดดาวินชี (1999)
ACM รางวัลงานวิจัยดีเด่นสาขาวิศวกรรมซอฟต์แวร์ (1999)

ความสำเร็จ

Wirth พัฒนาหรือมีส่วนร่วมในการพัฒนาภาษาโปรแกรม: Euler, Algol-W, PL/360, Pascal, Modula-2, Oberon, Oberon-2, Component Pascal การพัฒนาที่มีชื่อเสียงที่สุดของเขาคือภาษาโปรแกรม Pascal ซึ่งมีอิทธิพลอย่างมากต่อโปรแกรมเมอร์หลายรุ่นและกลายเป็นพื้นฐานสำหรับการสร้างภาษาโปรแกรมจำนวนมาก งานพื้นฐานอีกงานหนึ่งที่ Wirth เข้ามามีส่วนร่วมคือการพัฒนาเทคโนโลยีการเขียนโปรแกรมแบบมีโครงสร้าง ซึ่งแน่นอนว่ากลายเป็นรูปแบบทางการโปรแกรมที่ทรงพลังที่สุดในการเขียนโปรแกรมอย่างน้อยในช่วงปี 1970 - 1980 เทคโนโลยีนี้ได้รับการพัฒนา ตรวจสอบ และนำไปใช้โดยบุคลากรที่โดดเด่นเพียงสามคน ได้แก่ Wirth, Dijkstra และ Hoare

นักวิจารณ์ตั้งข้อสังเกตซ้ำแล้วซ้ำอีกว่าแนวคิดของ With มักจะนำหน้าการพัฒนาอุตสาหกรรมคอมพิวเตอร์หลายปี หรือบางครั้งก็หลายสิบปี ระบบ Pascal-P ได้รับการพัฒนาในช่วงต้นทศวรรษ 1970 เกี่ยวข้องกับการรวบรวมโปรแกรม Pascal ให้เป็น "pi-code" สากลและการใช้งานล่าม pi-code บนแพลตฟอร์มใด ๆ (หนึ่งในการใช้งานที่มีชื่อเสียงคือ UCSD-Pascal ของ มหาวิทยาลัยซานดิเอโก) ซึ่งอนุญาตให้พอร์ตระบบ Pascal ไปยังแพลตฟอร์มฮาร์ดแวร์ใหม่ด้วยต้นทุนที่ต่ำที่สุด นั้นเหนือกว่าแนวคิดเรื่องล่ามโค้ดระดับกลางที่นำไปใช้ในระบบที่สนับสนุนการทำงานของโปรแกรมในภาษา Java และใน แพลตฟอร์ม .NET แนวคิดในการรวมระบบการเขียนโปรแกรมเข้ากับตัวรวบรวมขยะทำให้โปรแกรมเมอร์ไม่ต้องติดตามอายุการใช้งานของวัตถุที่จัดสรรแบบไดนามิกในหน่วยความจำถูกนำมาใช้ในปี 1988 ในภาษาและระบบปฏิบัติการ Oberon แนวคิดทั้งสองนี้ถูกใช้โดยนักพัฒนา Java และ .NET ในช่วงครึ่งหลังของปี 1990
[แก้] หลักการทางวิทยาศาสตร์

บางทีหนึ่งในการแสดงออกที่แม่นยำที่สุดของหลักการที่ Wirth ยึดถือในการพัฒนาโครงการทั้งหมดของเขาก็คือวลีของ Einstein ในบท "ข้อความเกี่ยวกับภาษา Oberon": "ทำให้มันง่ายที่สุดเท่าที่จะทำได้ แต่ไม่ง่ายกว่านั้น ” ในงานทั้งหมดของเขา เราสามารถติดตามจุดเริ่มต้นของเขาไปที่การนำวิธีแก้ปัญหาที่มีประสิทธิภาพสูงสุดไปใช้กับปัญหาทางวิศวกรรมเฉพาะเจาะจงบนพื้นฐานของการทำงานที่รับประกัน เครื่องมือทางคณิตศาสตร์ Wirth เชื่อมั่นว่าการเขียนโปรแกรมควรเป็นวินัยทางวิศวกรรมปกติที่รับประกันความน่าเชื่อถือในการพัฒนาที่เพียงพอ Wirth กล่าวว่าการบรรลุความน่าเชื่อถือนั้นเป็นไปได้ด้วยวิธีเดียว: โดยการเพิ่มความซับซ้อนสูงสุดของทั้งระบบและเครื่องมือที่ใช้ในการสร้าง ตามหลักการนี้ ภาษาและระบบการเขียนโปรแกรมที่พัฒนาโดย Wirth นั้นเป็นตัวอย่างของ "ความเพียงพอที่สมเหตุสมผล" มาโดยตลอด แม้แต่การบำเพ็ญตบะแบบหนึ่ง - พวกเขาจัดเตรียมไว้เฉพาะสิ่งที่ไม่สามารถทำได้หากไม่มี

แม้แต่การขยายตัวของภาษาและระบบที่มีอยู่ก็ยังมาพร้อมกับการทำให้เข้าใจง่ายอยู่เสมอ ตามการคำนวณที่ตีพิมพ์ในบทความของ Sergei Sverdlov เรื่อง "เลขคณิตของไวยากรณ์" "เส้น Wirth" ในขณะที่เขาเรียกมันว่า - บรรทัดของภาษารวมถึง Pascal, Modula-2, Oberon และ Oberon2 - เป็นเพียงตัวอย่างเดียวของ "พันธุกรรม บรรทัด” ของภาษาลูกหลานของ Algol-60 ซึ่งความซับซ้อนของภาษาซึ่งกำหนดเป็นจำนวนคำศัพท์ในคำอธิบายนั้นลดลงอย่างต่อเนื่องและปัจจุบันต่ำกว่าของ "ต้นกำเนิด" ทั่วไป - ALGOL-60 ทุกภาษาของ "เส้น Wirth" นั้นง่ายกว่า Algol-60 และแต่ละภาษาที่ตามมาในบรรทัดนี้จะง่ายกว่าภาษาก่อนหน้า ในเวลาเดียวกัน Ada นั้นซับซ้อนกว่ารุ่นก่อนมากกว่าสองเท่า - Pascal, C++ นั้นซับซ้อนกว่า C ประมาณ 1.7 เท่าและในบรรทัด Pascal - Turbo Pascal ของเวอร์ชันต่าง ๆ - Object Pascal ความซับซ้อนจะเพิ่มขึ้นอย่างต่อเนื่องจากเวอร์ชัน เป็นเวอร์ชัน

Wirth มักจะวิพากษ์วิจารณ์ "แนวทางแบบอเมริกัน" ในการพัฒนาเครื่องมือการเขียนโปรแกรม ซึ่งการพิจารณาทางการตลาดมีชัยเหนือข้อกำหนดของความสอดคล้องทางคณิตศาสตร์และความน่าเชื่อถือที่รับประกัน และแฟชั่นใหม่แต่ละแฟชั่นจะมาพร้อมกับการแนะนำองค์ประกอบทางวากยสัมพันธ์ใหม่อย่างไม่มีวิพากษ์วิจารณ์ในภาษาโปรแกรม สิ่งนี้นำไปสู่การประเมินบทบาทของแนวคิดบางอย่างที่ไม่ถูกต้อง และท้ายที่สุดคือการจัดลำดับความสำคัญในการพัฒนาซอฟต์แวร์ที่ไม่ถูกต้อง โดยเฉพาะอย่างยิ่งเมื่อพูดถึง OOP Wirth ตั้งข้อสังเกตซ้ำ ๆ ว่าเป็นส่วนขยายที่ค่อนข้างเล็กน้อยของแนวทางโครงสร้างเดียวกัน ปรุงแต่งด้วยคำศัพท์ใหม่ และแทบจะไม่สามารถอ้างชื่อของ "วิธีการเขียนโปรแกรมเชิงปฏิวัติ" ได้ Wirth ได้กล่าวอย่างมีชื่อเสียงเกี่ยวกับนิสัยแบบมานุษยวิทยาแบบอเมริกันในคำศัพท์: "พวกเขาเรียกส่วนขยายประเภท 'มรดก' แต่ในความเป็นจริงแล้ว มรดกมักจะส่งต่อไปยังผู้สืบสันดานเฉพาะเมื่อบรรพบุรุษเสียชีวิตเท่านั้น”

หลักการอีกประการหนึ่งที่ With ชี้แนะเสมอสามารถกำหนดได้ดังนี้: “เครื่องมือจะต้องตรงกับงาน หากเครื่องมือไม่เหมาะกับงาน คุณจะต้องหาเครื่องมือใหม่ที่เหมาะกับงานนั้น แทนที่จะพยายามปรับเปลี่ยนเครื่องมือที่มีอยู่” เขาไม่ยินดีกับการพัฒนาของ “ภาษาที่เป็นสากลโดยทั่วไป” แต่ละระบบที่พัฒนาโดย Wirth มีวัตถุประสงค์และขอบเขตที่กำหนดไว้อย่างชัดเจน และเขาก็แยกทุกสิ่งที่ไม่จำเป็นสำหรับจุดประสงค์เฉพาะนี้ออกจากการพัฒนาโดยไม่ลังเลเสมอ อย่างไรก็ตาม มีความจำเป็นต้องชี้แจงในที่นี้: "วัตถุประสงค์เฉพาะ" ของ Oberon เช่น เพื่อให้แน่ใจว่าระบบสามารถขยายได้ง่ายและปลอดภัยอย่างยิ่ง ดังนั้นแม้ว่าจะไม่ใช่ "ภาษาสากลโดยทั่วไป" แต่นั่นไม่ใช่ รวมถึงเครื่องมือที่เป็นไปได้ทั้งหมดสำหรับการใช้งานที่เป็นไปได้ทั้งหมด Oberon ยังคงเป็นสากล - “เป็นสากลผ่านความสามารถในการขยาย”

มอสโก: สำนักพิมพ์ DMK, 2553 - 192 น.
หนังสือของนักวิทยาศาสตร์คอมพิวเตอร์ชื่อดัง Niklaus Wirth อิงจากการบรรยายของเขาในหลักสูตรเบื้องต้นเกี่ยวกับการออกแบบคอมไพเลอร์ การใช้ภาษา Oberon-0 แบบธรรมดาเป็นตัวอย่าง องค์ประกอบทั้งหมดของนักแปลจะได้รับการพิจารณา รวมถึงการเพิ่มประสิทธิภาพและการสร้างโค้ด ข้อความทั้งหมดของคอมไพเลอร์ในภาษาการเขียนโปรแกรม Oberon มอบให้ สำหรับโปรแกรมเมอร์ ครู และนักเรียนที่กำลังศึกษาการเขียนโปรแกรมระบบและวิธีการแปล
เนื้อหา
การแนะนำ
ภาษาและไวยากรณ์
แบบฝึกหัด
ภาษาปกติ
ออกกำลังกาย
การวิเคราะห์ภาษาที่ไม่มีบริบท
วิธีการสืบเชื้อสายแบบเรียกซ้ำ
การแยกวิเคราะห์จากบนลงล่างที่ขับเคลื่อนด้วยตาราง
การแยกวิเคราะห์จากล่างขึ้นบน
แบบฝึกหัด
แอตทริบิวต์ไวยากรณ์และความหมาย
ประเภทกฎ
กฎการคำนวณ
กฎการออกอากาศ
ออกกำลังกาย
ภาษาโปรแกรม Oberon-0
ออกกำลังกาย
Parser สำหรับ Oberon-0
เครื่องวิเคราะห์คำศัพท์
พาร์เซอร์
การแก้ไขปัญหาข้อผิดพลาดทางไวยากรณ์
แบบฝึกหัด
โดยคำนึงถึงบริบทที่กำหนดโดยการประกาศ
โฆษณา
รายการประเภทข้อมูล
การนำเสนอข้อมูลขณะรันไทม์
แบบฝึกหัด
สถาปัตยกรรม RISC เป็นเป้าหมาย
ทรัพยากรและการลงทะเบียน
การแสดงออกและการมอบหมาย
การสร้างโค้ดโดยตรงตามหลักการสแต็ก
การสร้างรหัสล่าช้า
ตัวแปรที่จัดทำดัชนีและฟิลด์บันทึก
แบบฝึกหัด
คำสั่งแบบมีเงื่อนไขและแบบวนรอบและนิพจน์เชิงตรรกะ
การเปรียบเทียบและการเปลี่ยนภาพ
คำสั่งแบบมีเงื่อนไขและแบบวนรอบ
การดำเนินการเชิงตรรกะ
การกำหนดตัวแปรบูลีน
แบบฝึกหัด
ขั้นตอนและแนวคิดการแปลเป็นภาษาท้องถิ่น
การจัดระเบียบหน่วยความจำ ณ รันไทม์
การกำหนดตัวแปรที่อยู่
ตัวเลือก
การประกาศและการเรียกขั้นตอน
ขั้นตอนมาตรฐาน
ขั้นตอนการทำงาน
แบบฝึกหัด
ชนิดข้อมูลเบื้องต้น
ประเภท REAL และ LONGREAL
ความเข้ากันได้ระหว่างชนิดข้อมูลตัวเลข
ประเภทข้อมูล SET
แบบฝึกหัด
อาร์เรย์สาธารณะ ชนิดตัวชี้ และขั้นตอน
เปิดอาร์เรย์
โครงสร้างข้อมูลและพอยน์เตอร์แบบไดนามิก
ประเภทขั้นตอน
แบบฝึกหัด
โมดูลและการคอมไพล์แยกกัน
หลักการปกปิดข้อมูล
แยกการรวบรวม
การนำไฟล์สัญลักษณ์ไปใช้
กล่าวถึงวัตถุภายนอก
กำลังตรวจสอบความเข้ากันได้ของการกำหนดค่า
แบบฝึกหัด
การเพิ่มประสิทธิภาพและโครงสร้างของตัวประมวลผลก่อน/หลัง
ข้อควรพิจารณาทั่วไป
การเพิ่มประสิทธิภาพอย่างง่าย
หลีกเลี่ยงการคำนวณที่ซ้ำกัน
ลงทะเบียนการจัดสรร
โครงสร้างของคอมไพเลอร์ตัวประมวลผลก่อน/หลัง
แบบฝึกหัด
ภาคผนวก ก.
ไวยากรณ์
โอเบรอน-0
โอเบรอน
ไฟล์ตัวละคร
ภาคผนวก ข
ชุดอักขระ ASCII
ภาคผนวก ค.
คอมไพเลอร์ Oberon-0
เครื่องวิเคราะห์คำศัพท์
พาร์เซอร์
เครื่องกำเนิดรหัส
วรรณกรรม

ดาวน์โหลดไฟล์

  • 2.16 ลบ
  • เพิ่มเมื่อวันที่ 19/09/2552

หนังสือของนักเขียนชาวอังกฤษผู้มีชื่อเสียง เจาะลึกปัญหาในการออกแบบและสร้างคอมไพเลอร์สำหรับภาษาโปรแกรมระดับสูง โดยเฉพาะ ALGOL 60, PL/1, ALGOL 68, Pascal และ Ada จุดเน้นอยู่ที่เป้าหมายของการออกแบบคอมไพเลอร์ที่เชื่อถือได้และวิธีการเพื่อให้บรรลุเป้าหมาย อธิบายคำถามเชิงปฏิบัติ...

  • 1.57 ลบ
  • เพิ่มเมื่อวันที่ 12/17/2551

บรรยายเรื่องการสร้างคอมไพเลอร์ในภาษาปาสคาล 255 หน้า
บทความชุดนี้เป็นแนวทางเกี่ยวกับทฤษฎีและการปฏิบัติในการพัฒนาพาร์เซอร์และคอมไพเลอร์สำหรับภาษาการเขียนโปรแกรม ก่อนที่คุณจะอ่านหนังสือเล่มนี้จบ เราจะครอบคลุมทุกแง่มุมของการออกแบบคอมไพเลอร์ การสร้างภาษาการเขียนโปรแกรมใหม่ และ...

  • 1.25 ลบ
  • เพิ่มเมื่อ 16/05/2552

บทความชุดนี้เป็นแนวทางเกี่ยวกับทฤษฎีและการปฏิบัติในการพัฒนาพาร์เซอร์และคอมไพเลอร์สำหรับภาษาการเขียนโปรแกรม ก่อนคุณ
เมื่อคุณอ่านหนังสือเล่มนี้จบ เราจะครอบคลุมทุกแง่มุมของการออกแบบคอมไพเลอร์ การสร้างภาษาการเขียนโปรแกรมใหม่ และสร้างคอมไพเลอร์ที่ใช้งานได้

  • 5.49 ลบ
  • เพิ่มเมื่อ 10/10/2550

อ.: สำนักพิมพ์วิลเลียมส์, 2546. - 768 หน้า: ป่วย

ใครก็ตามที่สนใจในการพัฒนาคอมไพเลอร์คงเคยได้ยินเกี่ยวกับ Dragon Book อันโด่งดัง, Aho และ Ullmann's classic Principles of Compiler Design อย่างไม่ต้องสงสัย การพัฒนาอย่างรวดเร็วของเทคโนโลยีการรวบรวมนำไปสู่การกำเนิดของมังกรตัวใหม่ - หนังสือ "K...

  • 1.22 ลบ
  • เพิ่มเมื่อ 16/05/2552

วิชา: การวิเคราะห์คำศัพท์และวากยสัมพันธ์ การจัดระเบียบหน่วยความจำ การสร้างโค้ด ตลอดการนำเสนอทั้งหมด มีการพยายามรักษามุมมอง "คุณลักษณะ" เดียวในกระบวนการพัฒนาคอมไพลเลอร์ หนังสือเล่มนี้ไม่ได้กล่าวถึงประเด็นที่สำคัญอย่างยิ่งของการเพิ่มประสิทธิภาพระดับโลกและการพัฒนาคอมไพเลอร์สำหรับเครื่องจักรที่มีระบบขนาน...

  • 59.93 ลบ
  • เพิ่มเมื่อ 12/07/2010

หนังสือเล่มเล็กแต่ครอบคลุมเล่มนี้เป็นการแนะนำทฤษฎีการสร้างคอมไพเลอร์รวมถึงคำอธิบายสั้น ๆ เกี่ยวกับหลักการทำงาน เนื้อหานี้นำเสนอแก่ผู้อ่านที่ไม่คุ้นเคยกับหัวข้อนี้ ข้อความนี้เสนอคำแนะนำสำหรับวรรณกรรมเพิ่มเติมและให้คำแนะนำเกี่ยวกับการสนับสนุนด้านเครื่องมือ

Niklaus Wirth เกิดเมื่อวันที่ 15 กุมภาพันธ์ พ.ศ. 2477 ในเมืองเล็ก ๆ แห่ง Winterthur ชานเมืองซูริก (สวิตเซอร์แลนด์) Niklaus เกิดในครอบครัวของ Walter และ Hedwig Wirth เขาอาศัยอยู่ใกล้โรงเรียนที่พ่อของเขาสอน บ้านของพวกเขามีห้องสมุดดีๆ ซึ่งเวิร์ธพบหนังสือที่น่าสนใจมากมายเกี่ยวกับทางรถไฟ กังหัน และโทรเลข

วินเทอร์ทูร์ เมืองเล็กๆ มีประวัติศาสตร์อันยาวนานและมีชื่อเสียงในด้านวิศวกรรมเครื่องกล ที่นั่นมีการผลิตตู้รถไฟและเครื่องยนต์ดีเซล With มีความสนใจในเทคโนโลยีตั้งแต่วัยเด็ก โดยเฉพาะการสร้างแบบจำลองเครื่องบิน เขาฝันถึงท้องฟ้าอย่างแท้จริง แต่การจะปล่อยจรวดจำเป็นต้องได้รับเชื้อเพลิง ดังนั้นเขาจึงต้องศึกษาเคมี Young Wirt ได้ก่อตั้งห้องทดลอง "ลับ" ขึ้นที่ชั้นใต้ดินของโรงเรียน

ความหลงใหลในระบบอิเล็กทรอนิกส์และระบบควบคุมโปรแกรมของเขาเริ่มต้นจากการพัฒนาอุปกรณ์ควบคุมระยะไกลสำหรับโมเดลต่างๆ ในปี 1954 เขาเข้าเรียนที่คณะอิเล็กทรอนิกส์ที่ Swiss Federal Institute of Technology (ETH) ในเมืองซูริก ซึ่งเขาได้รับปริญญาตรีสาขาวิศวกรรมไฟฟ้าในเวลาสี่ปี เขาศึกษาต่อที่มหาวิทยาลัยลาวาล (ควิเบก แคนาดา) และได้รับปริญญาโทในปี 2503 จากนั้นเขาได้รับเชิญให้ไปที่มหาวิทยาลัยแคลิฟอร์เนียที่เบิร์กลีย์ (สหรัฐอเมริกา) ซึ่งในปี 1963 ภายใต้การแนะนำของศาสตราจารย์ฮัสกี้ เขาได้ปกป้องวิทยานิพนธ์ของเขา ซึ่งมีหัวข้อคือภาษาโปรแกรมออยเลอร์ ซึ่งเป็นส่วนขยายของ Algol โดยใช้ภาษา Lisp

วิทยานิพนธ์ของ Wirth ได้รับการสังเกตจากชุมชนนักพัฒนาภาษาโปรแกรม และในปี 1963 เดียวกันนั้น เขาได้รับเชิญให้เข้าร่วมคณะกรรมการมาตรฐาน Algol ของ IFIP (สหพันธ์สารสนเทศระหว่างประเทศ) ซึ่งกำลังพัฒนามาตรฐานใหม่สำหรับภาษา Algol ซึ่งต่อมากลายเป็น ALGOL-68 . Wirth ร่วมกับ Charles Hoare สนับสนุนในคณะกรรมการในการพัฒนาเวอร์ชันดัดแปลงของ Algol ในระดับปานกลาง โดยปราศจากข้อบกพร่องของภาษาต้นฉบับ และเสริมด้วยเครื่องมือที่จำเป็นอย่างแท้จริงขั้นต่ำ Wirth และ Hoare นำเสนอคณะกรรมการด้วยภาษา Algol-W (W สำหรับ Wirth) ซึ่งเป็นเพียงการนำ Algol มาใช้ใหม่ แต่ไม่ได้รับการสนับสนุน ในช่วงท้ายของการทำงานของคณะกรรมการในปี พ.ศ. 2511 Wirth เป็นหนึ่งในผู้ที่วิพากษ์วิจารณ์ ALGOL-68 โดยพูดถึงการขาดความน่าเชื่อถือและความซ้ำซ้อนอย่างมาก ในเวลาเดียวกันตั้งแต่ปีพ. ศ. 2506 ถึง พ.ศ. 2510 Wirth ทำงานเป็นผู้ช่วยที่มหาวิทยาลัยสแตนฟอร์ด (สหรัฐอเมริกา) เขาได้พัฒนาและใช้งานภาษา PL/360 ร่วมกับจิม เวลส์ ซึ่งมีจุดมุ่งหมายสำหรับการเขียนโปรแกรมบนแพลตฟอร์ม IBM/360 ซึ่งเป็นภาษาคล้ายอัลกอลที่แนะนำคุณลักษณะที่ขึ้นอยู่กับระบบจำนวนหนึ่งที่เกี่ยวข้องกับสถาปัตยกรรม IBM/360

ในปี 1967 เขากลับมาพร้อมกับตำแหน่งรองศาสตราจารย์ที่มหาวิทยาลัยซูริก และในปี 1968 เขาได้รับตำแหน่งศาสตราจารย์ด้านวิทยาการคอมพิวเตอร์ เขาทำงานที่ ETH มาเป็นเวลา 31 ปี เขามีส่วนร่วมในกิจกรรมขององค์กรมากมาย เพื่อปรับปรุงระบบการสอนของมหาวิทยาลัยของเขา

ในปี 1970 เขาได้สร้างภาษาโปรแกรม Pascal ในปี 1970 เขาได้พัฒนาเทคโนโลยีการเขียนโปรแกรมแบบมีโครงสร้างร่วมกับ Hoare และ Dijkstra บทความของ Wirth ในปี 1971 เรื่อง “การพัฒนาโปรแกรมโดยการปรับแต่งเพิ่มเติม” อธิบายและยืนยันวิธีการพัฒนาซอฟต์แวร์จากบนลงล่างแบบคลาสสิกในปัจจุบัน เพื่อถ่ายโอนระบบ Pascal ไปยังแพลตฟอร์มคอมพิวเตอร์ต่างๆ ในปี 1973 โดยการมีส่วนร่วมของ Wirth ต้นแบบของเครื่องเสมือนได้รับการพัฒนาขึ้นซึ่งจะประมวลผล "P-code" ระดับกลาง (P สำหรับ Pascal) บนแพลตฟอร์มใดๆ ซึ่งมีโปรแกรมทั้งหมดอยู่ น่าจะเรียบเรียง..

ในปี 1975 เขาได้พัฒนาภาษา Modula ซึ่งเขาได้นำแนวคิดในการพัฒนาโปรแกรมโมดูลาร์มาใช้ด้วยอินเทอร์เฟซระหว่างโมดูลที่มีการกำหนดไว้อย่างดีและการเขียนโปรแกรมแบบขนาน นอกจากนี้ ไวยากรณ์ของภาษามีการเปลี่ยนแปลงในโมดูล - Wirth ทำให้ไม่จำเป็นต้องใช้ตัวดำเนินการผสมในโครงสร้างการแตกแขนงและลูป โมดูลนี้ไม่เป็นที่รู้จักอย่างกว้างขวางและมีเพียงการทดลองเดียวเท่านั้น แต่เป็นเวอร์ชันดัดแปลง - Modula-2 ซึ่งการพัฒนาเริ่มขึ้นในปี 1977 และสิ้นสุดในปี 1980 โดยตั้งใจที่จะใช้ซอฟต์แวร์ระบบของระบบ Lilith ที่ได้รับการพัฒนาที่ ETH - คอมพิวเตอร์ส่วนบุคคลแบบ 16 บิต กลายเป็นที่รู้จักและค่อนข้างได้รับความนิยม แม้ว่าจะได้รับความนิยมไม่แพ้ Pascal โดยเฉพาะการใช้งานเชิงพาณิชย์ ระบบ Lilith นำหน้ากระแสในอุตสาหกรรมคอมพิวเตอร์มาหลายปีแล้ว Wirth กล่าวในภายหลังด้วยความเสียใจว่าการไม่ตระหนักถึงศักยภาพของระบบนี้ทำให้อุตสาหกรรมคอมพิวเตอร์ของสวิสพลาดโอกาสในอดีต

สำหรับโครงการ Lilith และภาษา Modula-2 นั้น Wirth ได้รับรางวัล Alan Turing Award ในปี 1984 รางวัล Alan Turing Award เปรียบเสมือนรางวัลโนเบลสาขาวิทยาการคอมพิวเตอร์ ซึ่งก่อตั้งขึ้นเมื่อปี 1966 และมอบให้เป็นประจำทุกปีโดย Association for Computing Machinery สำหรับความสำเร็จที่โดดเด่นในสาขาวิทยาการคอมพิวเตอร์

ในช่วงครึ่งหลังของปี 1970 Wirth เข้าร่วมการแข่งขันของกระทรวงกลาโหมสหรัฐฯ เพื่อพัฒนาภาษาใหม่สำหรับการเขียนโปรแกรมระบบฝังตัว ซึ่งส่งผลให้เกิดการสร้างภาษา Ada เรื่องราวเกิดขึ้นซ้ำกับ ALGOL-68 - โครงการของกลุ่มที่ Wirth และ Hoare ทำงานไม่ได้รับการอนุมัติจากคณะกรรมการภาษา เป็นผลให้โครงการที่อิงจาก Pascal ชนะการแข่งขัน แต่ซับซ้อนและใหญ่โตกว่ามาก

ตั้งแต่ปี 1982 ถึง 1984 และตั้งแต่ปี 1988 ถึง 1990 Wirth เป็นหัวหน้าคณะวิทยาการคอมพิวเตอร์ที่ ETH และตั้งแต่ปี 1990 ก็เป็นสถาบันระบบคอมพิวเตอร์ที่ ETH

ในปี 1988 Wirth ได้พัฒนาภาษาโปรแกรม Oberon โดยร่วมมือกับ Jürg Gutknecht เป้าหมายของการพัฒนาคือการสร้างภาษาสำหรับการใช้งานซอฟต์แวร์ระบบของเวิร์กสเตชันใหม่ที่ได้รับการออกแบบ พื้นฐานสำหรับ Oberon คือ Modula-2 ซึ่งทำให้ง่ายขึ้นอย่างมาก แต่ในขณะเดียวกันก็เสริมด้วยความสามารถใหม่

ในปี 1992 Wirth และ Mössenböck เผยแพร่รายงานเกี่ยวกับภาษาการเขียนโปรแกรมใหม่ Oberon 2 ซึ่งเป็น Oberon เวอร์ชันที่ขยายน้อยที่สุด ในปีเดียวกันนั้น Oberonmicrosystems ซึ่งเป็นบริษัทในเครือของ ETH ได้ก่อตั้งขึ้น ซึ่งเริ่มพัฒนาระบบของ Oberon

Wirth ได้กลายเป็นหนึ่งในสมาชิกของคณะกรรมการบริหาร ในปี 1999 บริษัท นี้ได้เปิดตัว Oberon - Component Pascal เวอร์ชันถัดไปซึ่งเหมาะสำหรับการเขียนโปรแกรมส่วนประกอบมากกว่า ในปี 1996 Wirth ได้พัฒนาภาษาการเขียนโปรแกรมต้นฉบับอีกภาษาหนึ่ง นั่นคือ Lola ซึ่งเป็นภาษาการเรียนรู้อย่างง่ายสำหรับการอธิบายและจำลองวงจรไฟฟ้าดิจิทัลอย่างเป็นทางการ

เมื่อวันที่ 1 เมษายน พ.ศ. 2542 เวิร์ธเกษียณอายุ โดยมีอายุครบ 65 ปีสำหรับข้าราชการในสวิตเซอร์แลนด์

เมื่อวันที่ 19 มิถุนายน พ.ศ. 2550 Wirth ได้รับปริญญาเอกกิตติมศักดิ์จาก Russian Academy of Sciences ผู้ริเริ่มการนำเสนอคือนักวิทยาศาสตร์คอมพิวเตอร์ชาวรัสเซีย Igor Shagaev ศาสตราจารย์ที่ London Metropolitan University ซึ่งเกี่ยวข้องกับ Niklaus Wirth ผ่านการทำงานร่วมกันในปี 2548-2551 ในโครงการ European ONBASS

Niklaus Wirth เป็นสมาชิกของสถาบันการศึกษาระดับชาติ: SwissAcademyofEngineering (สวิตเซอร์แลนด์), U.S. AcademyofEngineering (สหรัฐอเมริกา), Berlin-BrandenburgAcademy (เยอรมนี)

Wirth พยายามอย่างหนักเพื่อความสามัคคีเสมอมา ความสามัคคีตามธรรมชาติของส่วนประกอบฮาร์ดแวร์และซอฟต์แวร์ และความอุตสาหะและพรสวรรค์ของเขามีส่วนช่วยอันล้ำค่าในการพัฒนาวิทยาการคอมพิวเตอร์อย่างไม่ต้องสงสัย

เขาเข้าเรียนคณะอิเล็กทรอนิกส์ที่ Swiss Federal Institute of Technology (ETH) ในเมืองซูริก ซึ่งเขาได้รับปริญญาตรีสาขาวิศวกรรมไฟฟ้าในเวลาสี่ปี เขาศึกษาต่อที่มหาวิทยาลัยลาวาล (ควิเบก แคนาดา) และได้รับปริญญาโทในปี 2503 จากนั้นเขาได้รับเชิญให้ไปที่มหาวิทยาลัยแคลิฟอร์เนียที่เบิร์กลีย์ (สหรัฐอเมริกา) ซึ่งในปี 1963 ภายใต้การแนะนำของศาสตราจารย์ฮัสกี้ เขาได้ปกป้องวิทยานิพนธ์ของเขา ซึ่งมีหัวข้อคือภาษาโปรแกรมออยเลอร์ ซึ่งเป็นส่วนขยายของ Algol โดยใช้ภาษา Lisp

วิทยานิพนธ์ของ Wirth ได้รับการสังเกตจากชุมชนนักพัฒนาภาษาโปรแกรมและในปี 1963 เดียวกันเขาได้รับเชิญให้เป็นคณะกรรมการมาตรฐาน Algol ของ IFIP (สหพันธ์สารสนเทศระหว่างประเทศ) ซึ่งกำลังพัฒนามาตรฐานใหม่สำหรับภาษา Algol ซึ่งต่อมากลายเป็น ALGOL -68. Wirth ร่วมกับ Charles Hoare สนับสนุนในคณะกรรมการในการพัฒนาเวอร์ชันดัดแปลงของ Algol ในระดับปานกลาง โดยปราศจากข้อบกพร่องของภาษาต้นฉบับ และเสริมด้วยเครื่องมือที่จำเป็นอย่างแท้จริงขั้นต่ำ Wirth และ Hoar นำเสนอภาษา Algol-W (W สำหรับ Wirth) ซึ่งเป็นเพียงการปรับปรุงใหม่ของ Algol แก่คณะกรรมการ แต่ไม่ได้รับการสนับสนุน ในช่วงท้ายของการทำงานของคณะกรรมการในปี พ.ศ. 2511 Wirth เป็นหนึ่งในผู้ที่วิพากษ์วิจารณ์ ALGOL-68 โดยพูดถึงการขาดความน่าเชื่อถือและความซ้ำซ้อนอย่างมาก ในช่วงเวลาหลายปีที่ผ่านมา Wirt ทำงานเป็นผู้ช่วยที่มหาวิทยาลัยสแตนฟอร์ด สหรัฐอเมริกา เขาได้พัฒนาและใช้งานภาษา PL/360 ร่วมกับ Jim Wales โดยมีจุดมุ่งหมายสำหรับการเขียนโปรแกรมบนแพลตฟอร์ม IBM/360 ซึ่งเป็นภาษาคล้ายอัลกอริทึมซึ่งมีการแนะนำคุณลักษณะที่ขึ้นอยู่กับระบบจำนวนหนึ่งที่เกี่ยวข้องกับสถาปัตยกรรม IBM/360

รางวัลและรางวัล

  • รางวัล IEEE Emanuel Piore (1983)
  • รางวัล ACM ทัวริง (1984)
  • รางวัล ACM สำหรับผลงานดีเด่นด้านการศึกษาวิทยาศาสตร์คอมพิวเตอร์ (1987, 1989)
  • ผู้บุกเบิกคอมพิวเตอร์ IEEE (1988)
  • กรังปรีซ์ แม็กซ์ เปอติปิแยร์ (1989)
  • รางวัลวิทยาศาสตร์และเทคโนโลยีของ IBM Europe (1989)
  • รางวัลมาร์เซล เบอนัวต์ (1990)
  • ออร์เดน ปูร์ เลอ เมอริต (1996)
  • เหรียญเลโอนาร์โดดาวินชี (1999)
  • ACM รางวัลงานวิจัยดีเด่นสาขาวิศวกรรมซอฟต์แวร์ (1999)

ความสำเร็จ

Wirth พัฒนาหรือมีส่วนร่วมในการพัฒนาภาษาโปรแกรม: Euler, Algol-W, PL/360, Pascal, Modula, Modula-2, Oberon, Oberon-2, Component Pascal การพัฒนาที่มีชื่อเสียงที่สุดของเขาคือภาษาโปรแกรม Pascal ซึ่งมีอิทธิพลอย่างมากต่อโปรแกรมเมอร์หลายรุ่นและกลายเป็นพื้นฐานสำหรับการสร้างภาษาโปรแกรมจำนวนมาก งานพื้นฐานอีกงานหนึ่งที่ Wirth เข้ามามีส่วนร่วมคือการพัฒนาเทคโนโลยีการเขียนโปรแกรมแบบมีโครงสร้าง ซึ่งกลายเป็นรูปแบบทางการโปรแกรมที่ทรงพลังที่สุดในการเขียนโปรแกรมอย่างน้อยในช่วงปี 1970 - 1980 เทคโนโลยีนี้ได้รับการพัฒนา ตรวจสอบ และนำไปใช้โดยบุคลากรที่โดดเด่นเพียงสามคน ได้แก่ Wirth, Dijkstra และ Hoare

นักวิจารณ์ตั้งข้อสังเกตซ้ำแล้วซ้ำอีกว่าแนวคิดของ With มักจะนำหน้าการพัฒนาอุตสาหกรรมคอมพิวเตอร์หลายปี หรือบางครั้งก็หลายสิบปี ระบบ Pascal-P ได้รับการพัฒนาในช่วงต้นทศวรรษ 1970 เกี่ยวข้องกับการรวบรวมโปรแกรม Pascal ให้เป็น "pi-code" สากลและการใช้งานล่าม pi-code บนแพลตฟอร์มใด ๆ (หนึ่งในการใช้งานที่มีชื่อเสียงคือ UCSD-Pascal ของ มหาวิทยาลัยซานดิเอโก) ซึ่งอนุญาตให้พอร์ตระบบ Pascal ไปยังแพลตฟอร์มฮาร์ดแวร์ใหม่ด้วยต้นทุนที่ต่ำที่สุด นั้นเหนือกว่าแนวคิดเรื่องล่ามโค้ดระดับกลางที่ใช้งานในระบบที่รองรับการทำงานของโปรแกรมในภาษา .NET มานานกว่าสองทศวรรษ แนวคิดในการรวมระบบการเขียนโปรแกรมเข้ากับตัวรวบรวมขยะทำให้โปรแกรมเมอร์ไม่ต้องติดตามอายุการใช้งานของวัตถุที่จัดสรรแบบไดนามิกในหน่วยความจำถูกนำมาใช้ในปี 1988 ในภาษาและระบบปฏิบัติการ Oberon แนวคิดทั้งสองนี้ถูกนำมาใช้ (และโฆษณากันอย่างแพร่หลายว่าเป็นคำใหม่ในเทคโนโลยีและเป็นความสำเร็จที่ไม่เคยมีมาก่อน!) โดยนักพัฒนาชาวอเมริกันที่ใช้ Java และ .NET เดียวกันในช่วงครึ่งหลังของปี 1990

หลักการทางวิทยาศาสตร์

บางทีหนึ่งในการแสดงออกที่แม่นยำที่สุดของหลักการที่ Wirth ยึดถือในการพัฒนาโครงการทั้งหมดของเขาก็คือวลีของ Einstein ในบท "ข้อความเกี่ยวกับภาษา Oberon": "ทำให้มันง่ายที่สุดเท่าที่จะทำได้ แต่ไม่ง่ายกว่านั้น ” ในงานทั้งหมดของเขา เราสามารถติดตามจุดเริ่มต้นของเขาไปที่การนำวิธีแก้ปัญหาที่มีประสิทธิภาพสูงสุดไปใช้กับปัญหาทางวิศวกรรมเฉพาะเจาะจงบนพื้นฐานของการทำงานที่รับประกัน เครื่องมือทางคณิตศาสตร์ Wirth เชื่อมั่นว่าการเขียนโปรแกรมควรเป็นวินัยทางวิศวกรรมปกติที่รับประกันความน่าเชื่อถือในการพัฒนาที่เพียงพอ Wirth กล่าวว่าการบรรลุความน่าเชื่อถือนั้นเป็นไปได้ด้วยวิธีเดียว: โดยการเพิ่มความซับซ้อนสูงสุดของทั้งระบบและเครื่องมือที่ใช้ในการสร้าง ตามหลักการนี้ ภาษาและระบบการเขียนโปรแกรมที่พัฒนาโดย Wirth นั้นเป็นตัวอย่างของ "ความเพียงพอที่สมเหตุสมผล" มาโดยตลอด แม้แต่การบำเพ็ญตบะแบบหนึ่ง - พวกเขาจัดเตรียมไว้เฉพาะสิ่งที่ไม่สามารถทำได้หากไม่มี

แม้แต่การขยายตัวของภาษาและระบบที่มีอยู่ก็ยังมาพร้อมกับการทำให้เข้าใจง่ายอยู่เสมอ ตามการคำนวณที่ตีพิมพ์ในบทความของ Sergei Sverdlov เรื่อง "เลขคณิตของไวยากรณ์" "เส้น Wirth" ในขณะที่เขาเรียกมันว่า - บรรทัดของภาษารวมถึง Pascal, Modula-2, Oberon และ Oberon2 - เป็นเพียงตัวอย่างเดียวของ "พันธุกรรม บรรทัด” ของภาษาลูกหลานของ Algol-60 ซึ่งความซับซ้อนของภาษาซึ่งกำหนดเป็นจำนวนคำศัพท์ในคำอธิบายนั้นลดลงอย่างต่อเนื่องและปัจจุบันต่ำกว่าของ "ต้นกำเนิด" ทั่วไป - ALGOL-60 ทุกภาษาของ "เส้น Wirth" นั้นง่ายกว่า Algol-60 และแต่ละภาษาที่ตามมาในบรรทัดนี้จะง่ายกว่าภาษาก่อนหน้า ในเวลาเดียวกัน Ada นั้นซับซ้อนกว่ารุ่นก่อนมากกว่าสองเท่า - Pascal, C++ นั้นซับซ้อนกว่า C ประมาณ 1.7 เท่าและในบรรทัด Pascal - Turbo Pascal ของเวอร์ชันต่าง ๆ - Object Pascal ความซับซ้อนจะเพิ่มขึ้นแบบทวีคูณจากเวอร์ชันสู่ รุ่น

Wirth มักจะวิพากษ์วิจารณ์ "แนวทางแบบอเมริกัน" ในการพัฒนาเครื่องมือการเขียนโปรแกรม ซึ่งการพิจารณาทางการตลาดมีชัยเหนือข้อกำหนดของความสอดคล้องทางคณิตศาสตร์และความน่าเชื่อถือที่รับประกัน และแฟชั่นใหม่แต่ละแฟชั่นจะมาพร้อมกับการแนะนำองค์ประกอบทางวากยสัมพันธ์ใหม่อย่างไม่มีวิพากษ์วิจารณ์ในภาษาโปรแกรม สิ่งนี้นำไปสู่การประเมินบทบาทของแนวคิดบางอย่างที่ไม่ถูกต้อง และท้ายที่สุดคือการจัดลำดับความสำคัญในการพัฒนาซอฟต์แวร์ที่ไม่ถูกต้อง โดยเฉพาะอย่างยิ่งเมื่อพูดถึง OOP Wirth ตั้งข้อสังเกตซ้ำ ๆ ว่าเป็นส่วนขยายที่ค่อนข้างเล็กน้อยของแนวทางโครงสร้างเดียวกัน ปรุงแต่งด้วยคำศัพท์ใหม่ และแทบจะไม่สามารถอ้างชื่อของ "วิธีการเขียนโปรแกรมเชิงปฏิวัติ" ได้ Wirth ได้กล่าวอย่างมีชื่อเสียงเกี่ยวกับนิสัยแบบมานุษยวิทยาแบบอเมริกันในคำศัพท์: "พวกเขาเรียกส่วนขยายประเภท 'มรดก' แต่ในความเป็นจริงแล้ว มรดกมักจะส่งต่อไปยังผู้สืบสันดานเฉพาะเมื่อบรรพบุรุษเสียชีวิตเท่านั้น”

หลักการอีกประการหนึ่งที่ With ชี้แนะเสมอสามารถกำหนดได้ดังนี้: “เครื่องมือจะต้องตรงกับงาน หากเครื่องมือไม่เหมาะกับงาน คุณจะต้องหาเครื่องมือใหม่ที่เหมาะกับงานนั้น แทนที่จะพยายามปรับเปลี่ยนเครื่องมือที่มีอยู่” เขาไม่ยินดีกับการพัฒนาของ “ภาษาที่เป็นสากลโดยทั่วไป” แต่ละระบบที่พัฒนาโดย Wirth มีวัตถุประสงค์และขอบเขตที่กำหนดไว้อย่างชัดเจน และเขาก็แยกทุกสิ่งที่ไม่จำเป็นสำหรับจุดประสงค์เฉพาะนี้ออกจากการพัฒนาโดยไม่ลังเลเสมอ

หนังสือ

เผยแพร่เป็นภาษารัสเซีย:

  • การเขียนโปรแกรมอย่างเป็นระบบ การแนะนำ. อ.: มีร์ 2520;
  • ปาสคาล. คู่มือผู้ใช้และคำอธิบายภาษา อ.: การเงินและสถิติ, 1982 (ร่วมเขียนกับ K. Jensen);
  • อัลกอริทึม + โครงสร้างข้อมูล = โปรแกรม อ.: มีร์ 2528;
  • การเขียนโปรแกรมด้วยภาษา Modula-2 อ.: มีร์ 2530;
  • อัลกอริทึมและโครงสร้างข้อมูล อ.:มีร์, 2532. ISBN 5-03-001045-9 (ฉบับหนังสือในภาษา Modula-2)
  • อัลกอริทึมและโครงสร้างข้อมูล SPb.: ภาษาเนฟสกี้. 2544.

หนังสือแห่งเวิร์ธ “อัลกอริทึม + โครงสร้างข้อมูล = โปรแกรม”ได้รับการตีพิมพ์เป็นภาษารัสเซียหลายครั้งในเวอร์ชันต่าง ๆ และถือเป็นหนังสือเรียนคลาสสิกเล่มแรกในสามเล่มเกี่ยวกับการเขียนโปรแกรมเชิงโครงสร้าง

ปัจจุบันนักเรียนของเขาแปลไตรภาคคลาสสิกทั้งหมดของ Wirth เป็นภาษา Oberon และสามารถดาวน์โหลดได้จากอินเทอร์เน็ตในรูปแบบ

หมายเหตุ

ลิงค์

  • แปลบทความของ N. Virt เรื่อง “ไอเดียดี มุมมองจากกระจกมอง”

Niklaus Emil Wirth เกิดในปี 1934 ในเมือง Winterthur ประเทศสวิตเซอร์แลนด์ เป็นที่ทราบกันดีว่าพ่อของเขาทำงานเป็นครูที่โรงเรียนและ Niklaus เองก็ชอบการสร้างแบบจำลองเครื่องบินมาตั้งแต่เด็ก ความหลงใหลนี้เองที่ทำให้เขาสนใจระบบอิเล็กทรอนิกส์และระบบควบคุมโปรแกรมในเวลาต่อมา

ในปี 1954 Wirth ได้เข้าศึกษาที่คณะอิเล็กทรอนิกส์ที่ Swiss Federal Institute of Technology Zürich ซึ่งเขาได้รับปริญญาตรีสาขาวิศวกรรมไฟฟ้า ตามมาด้วยการศึกษาที่มหาวิทยาลัยลาวาลในควิเบก ประเทศแคนาดา (Université Laval ประเทศแคนาดา) ซึ่งเวิร์ธได้รับปริญญาโทในปี พ.ศ. 2503



Wirth สำเร็จการศึกษาระดับปริญญาเอกสาขาวิศวกรรมไฟฟ้าและวิทยาการคอมพิวเตอร์จากมหาวิทยาลัยแคลิฟอร์เนียที่เบิร์กลีย์ (สหรัฐอเมริกา); ภายในกำแพงของสถาบันการศึกษาแห่งนี้ในปี 2506 เขาได้ปกป้องวิทยานิพนธ์ของเขาซึ่งเขียนภายใต้การแนะนำของศาสตราจารย์ชื่อดัง Harry Huskey ผู้บุกเบิกการออกแบบกราฟิก วิทยานิพนธ์ของเขาเป็นที่รู้จักในโลกที่สนใจ และ Wirth ได้รับเชิญให้เข้าร่วมคณะกรรมการกำหนดมาตรฐาน Algol ของสหพันธ์นานาชาติเพื่อการประมวลผลข้อมูล (IFIP) คณะกรรมการกำลังทำงานเพื่อพัฒนามาตรฐานใหม่สำหรับภาษา ALGOL ซึ่งต่อมากลายเป็นที่รู้จักในชื่อ ALGOL-68 เวอร์ชันของ Wirth เป็นภาษาที่ได้รับการปรับปรุง ซึ่งเรียกว่า Algol-W แต่การพัฒนาของเขาไม่ได้รับการยอมรับ

ตั้งแต่ปีพ.ศ. 2506 ถึง พ.ศ. 2510 นิคลอสทำงานเป็นผู้ช่วยศาสตราจารย์ที่มหาวิทยาลัยสแตนฟอร์ดไปพร้อมๆ กัน ตามมาด้วยงานที่มหาวิทยาลัยซูริก เป็นที่ทราบกันดีว่านอกเหนือจากการวิจัยทางวิทยาศาสตร์แล้ว Wirth ยังพยายามอย่างมากในการปรับปรุงระบบการศึกษาของมหาวิทยาลัย

ในปี 1970 Wirth พัฒนาภาษาโปรแกรม Pascal ในปี 1975 เขาได้พัฒนาภาษา Modula และในช่วงปลายทศวรรษ 1970 Niklaus Wirth ได้เข้าร่วมในการแข่งขันของกระทรวงกลาโหมของสหรัฐอเมริกา และกลายเป็นหนึ่งในผู้พัฒนาภาษาใหม่สำหรับการเขียนโปรแกรมระบบฝังตัว ซึ่งต่อมาได้ชื่อว่าเป็นภาษานรก อย่างไรก็ตาม โครงการของเขาไม่ได้รับการยอมรับ เช่นเดียวกับกรณีของภาษา Algol ในทศวรรษ 1960

ในช่วงทศวรรษ 1980 Wirth เป็นหัวหน้าโรงเรียนมัธยมเทคนิคซูริก (Eidgenössische Technische Hochschule, ETH) และตั้งแต่ปี 1990 เขาทำงานที่สถาบันระบบคอมพิวเตอร์ที่สร้างขึ้นในสถาบันการศึกษาเดียวกัน

ในช่วงทศวรรษ 1990 Wirth ได้มีส่วนร่วมในการพัฒนาภาษา Oberon-2 ซึ่งเป็นเวอร์ชันขยายของ Oberon เล็กน้อย

ในฤดูใบไม้ผลิปี 1999 Niklaus Wirth เกษียณอายุเมื่ออายุ 65 ปี มาถึงตอนนี้ เขาเป็นหนึ่งในนักพัฒนาที่ได้รับความเคารพนับถือของโลก โดยเคยทำงานกับภาษาโปรแกรมมาแล้วอย่างน้อย 8 ภาษา และเขายังเป็นผู้พัฒนาเทคโนโลยีการเขียนโปรแกรมแบบมีโครงสร้างอีกด้วย

ที่สุดของวัน


เข้าชมแล้ว:4919
อิกอร์ คีรียัค. ผู้ชำระบัญชีผิวดำจากอุบัติเหตุเชอร์โนบิล