Với những người học lập trình, ngôn ngữ Pascal và người sáng tạo ra nó Niklaus Wirth chẳng phải cái tên xa lạ. Song ít người biết rằng ngoài thành tựu nổi bật này, Wirth còn là người đã đưa những tiến bộ khoa học máy tính từ Mỹ, lúc đó là đất nước đi đầu phát triển máy tính, về quê hương và giúp thành lập ngành khoa học này trong nước.

Niklaus Wirth (1934-2024) bên cạnh Lilith, một trong những trạm máy tính đầu tiên trên thế giới có màn hình đồ họa với độ phân giải cao và chuột. Nguồn: Niklaus Wirth
Niklaus Wirth (1934-2024) bên cạnh Lilith, một trong những trạm máy tính đầu tiên trên thế giới có màn hình đồ họa với độ phân giải cao và chuột. Nguồn: Niklaus Wirth

Đam mê công nghệ

Ra đời tại Winterthur, vào ngày 15/2/1934, Niklaus Wirth đã thể hiện lòng yêu thích công nghệ từ khi còn nhỏ. Wirth vô cùng hứng thú với việc chế tạo máy bay, lắp ráp được những chiếc đài radio và amly (thiết bị giúp tiếp nhận âm thanh và khuếch đại tín hiệu). Lòng đam mê này đã tiếp sức cho ông trở thành sinh viên tại Viện Công nghệ Liên bang Thụy Sĩ (ETH Zurich), nơi ông học bằng kỹ sư điện và nhận bằng tốt nghiệp chuyên nghiệp cấp cao của liên bang về bộ môn này. Wirth hoàn thành bằng thạc sĩ tại Đại học Laval ở Canada vào năm 1960. Và khi tới Đại học California ở Berkeley, ông mới lần đầu tiếp xúc với máy tính, ngôn ngữ lập trình và trình biên dịch.

Tại đây, ông bắt đầu tìm hiểu về phần mềm; năm 1963, ông hoàn thành bằng tiến sĩ tại Berkeley dưới sự hướng dẫn của Harry Huskey, nhà tiên phong thiết kế máy tính người Mỹ, về khái quát hóa ngôn ngữ lập trình Algol 60. Sau khi làm phó giáo sư tại Đại học Stanford và Đại học Zurich, ông quay lại ETH Zurich vào năm 1968 để đảm nhận chức giáo sư Khoa học Máy tính, dạy học và nghiên cứu tại đây cho tới năm 1999. Trong các giai đoạn 1976–1977 và 1984–1985, ông dành thời gian làm nghiên cứu tại Trung tâm Nghiên cứu Palo Alto của Xerox (PARC), một nơi nổi tiếng với những đóng góp cho công nghệ thông tin và hệ thống phần cứng.

Trong 31 năm công tác tại ETH Zurich, Wirth đã phát triển nhiều ngôn ngữ lập trình mới như Euler, PL360, Algol W, Pascal, Modula, Modula 2, Oberon và LoLa. Ông cũng dựng được những chiếc máy tính cá nhân đầu tiên của Thụy Sĩ (PC) và đào tạo thế hệ nhà khoa học máy tính đầu tiên của nước này. Chưa hết, ông còn là tác giả của nhiều tài liệu tham khảo tiêu chuẩn được chuyển ngữ trên toàn thế giới.

Ông được trao rất nhiều giải thưởng cho đóng góp của mình, bao gồm giải Turing ACM danh giá vào năm 1984, ông là người đầu tiên và cho đến nay là nhà khoa học máy tính nói tiếng Đức duy nhất chiến thắng giải thưởng này. Năm 1988, ông nhận được giải Tiên phong Máy tính IEEE. Định luật “Tốc độ tiến hóa của phần cứng không bằng tốc độ thoái hóa của phần mềm” mà Wirth đưa ra được đặt theo tên ông.

Pascal – và cuộc truy tìm ngôn ngữ đơn giản, mạnh mẽ

Đối với Wirth, và cả giới IT cùng sự lan tỏa của máy tính cá nhân, 1984 là một năm đặc biệt: Apple cho ra mắt Macintosh PC, IBM giới thiệu Máy tính Cá nhân IBM /AT và Wirth thắng giải Turing – giải thưởng cao quý nhất trong ngành khoa học máy tính, có thể so với giải Nobel trong các ngành khoa học tự nhiên hay Huy chương Fields trong ngành toán học. Wirth được trao giải thưởng này vì đã phát triển một số ngôn ngữ lập trình, bao gồm Euler, Algol W, Modula và đặc biệt là Pascal.

Thành tựu nổi tiếng nhất của Wirth là ngôn ngữ lập trình Pascal. Ưu điểm chính của nó là tính giản đơn và rành mạch. Pascal được dựa trên những nguyên tắc lập trình cấu trúc rõ ràng do nhà khoa học máy tính Edsger W. Dijkstra đề xướng, cơ sở toán học mà nhà khoa học máy tính Tony Hoare xác định, và việc triển khai có tính kiến trúc những ý tưởng Algol-​W của chính Wirth.

Ngôn ngữ hiệu quả này kết hợp hoạt động lập trình tốt với lập trình có cấu trúc và cấu trúc dữ liệu, những điều này là yếu tố khiến Pascal nhanh chóng trở thành ngôn ngữ giảng dạy phổ biến. Nhiều thế hệ sinh viên tại các trường đại học trên toàn thế giới đã có trải nghiệm lập trình ban đầu bằng Pascal.

Những thành tích vang dội chẳng hề khiến Wirth ngủ quên trên vinh quang. Có thể Pascal là thành tựu được biết tới nhiều nhất của ông, song công trình của Wirth còn tiến xa hơn nữa: từ ngôn ngữ kế thừa Modula-2, cho đến hệ thống Oberon và máy trạm “Lilith”, tiền thân của máy tính cá nhân sau này. Phát triển và cải thiện hơn nữa các ngôn ngữ lập trình của mình là dự án cả đời đối với Wirth.

Thứ bắt đầu với Euler cuối cùng kết thúc với Oberon, một ngôn ngữ giới thiệu khái niệm hướng đối tượng và cây dữ liệu, nó vừa mạnh mẽ lại vừa đơn giản nhất có thể. Wirth muốn phát minh ra một thứ vừa kinh tế vừa dễ hiểu cho công chúng.

Oberon không chỉ là một thứ ngôn ngữ. Nó trở thành một hệ thống hoàn chỉnh, và trong phần cuối của cuốn sách Project Oberon, Wirth đã thể hiện lòng tự hào và niềm vui của mình qua câu chữ: “Trong suốt đời mình, tôi đã theo đuổi mục tiêu phát triển một ngôn ngữ mạnh mẽ nhất có thể, nhưng lại đơn giản nhất có thể. Oberon là mắt xích liên kết cuối cùng trong chuỗi phát triển này”.

Lilith – và nỗ lực thành lập khoa học máy tính ở Thụy Sĩ

Ngày nay, Thụy Sĩ đóng một vai trò quan trọng trong lĩnh vực khoa học máy tính trên toàn thế giới, đất nước này có nhiều đóng góp nền tảng cho cả các nguyên tắc cơ sở và ứng dụng của ngành này. Nhưng trước những năm 1970, tình hình của Thụy Sĩ hoàn toàn khác: trong khi máy trạm đầu tiên đã được phát triển tại Hoa Kỳ và khoa học máy tính được nghiên cứu phổ biến tại đó, Thụy Sĩ lại tụt hậu trong cả về đào tạo lẫn ứng dụng. Một ví dụ của điều này là máy trạm Lilith của Wirth, mãi tới nhiều năm sau thì nó mới gợi lên mối quan tâm tới ngành này.

Lilith là một trong những trạm máy tính đầu tiên có màn hình đồ họa với độ phân giải cao và chuột, đây là tiền thân của máy tính cá nhân ngày nay. Wirth đã phát triển nó tại ETH vào năm 1980 làm nền tảng cho vô số dự án phần mềm được nghiên cứu. Bắt đầu từ năm 1982, các nhà nghiên cứu ETH đã cố gắng thương mại hóa hệ thống này, song đều thất bại. Sự phát triển công nghiệp máy tính cá nhân cuối cùng lại diễn ra tại Mỹ. Tuy nhiên, Lilith đã gây ảnh hưởng tới toàn bộ một thế hệ nhà khoa học máy tính. Tiếp bước Lilith, Niklaus Wirth phát triển Ceres vào năm 1986, một hệ thống máy tính khác bao gồm hệ điều hành Oberon và ngôn ngữ lập trình Oberon. Các máy tính Ceres được dùng để đào tạo sinh viên khoa học máy tính tại ETH Zurich cho tới năm 2003.

Tương tự, con đường thiết lập ngành khoa học máy tính tại ETH và Thụy Sĩ không hề dễ dàng: Wirth và các đồng nghiệp ban đầu phải vượt qua vô vàn trở ngại. Hồi đầu những năm 1970, họ phát động một sáng kiến để giới thiệu khoa học máy tính là một ngành riêng biệt, song nỗ lực này đã thất bại, những cố gắng sau đó cũng gặp số phận tương tự. Tuy nhiên, khi chuyện Thụy Sĩ thiếu các nhà khoa học máy tính trở nên rõ như ban ngày, thì ETH Zurich cuối cùng mới đưa khoa học máy tính thành một khoa và có chương trình học riêng vào năm 1981. Lòng tận tụy của Wirth và những người dẫn đầu phong trào đã đặt viên đá nền tảng đầu tiên cho sự trỗi dậy của khoa học máy tính tại đất nước này.

Nguồn: ethz.ch

Bài đăng số 1281 (số 9/2024) KH&PT