奚:王老師,您這一次的文章用到了李未院士的專著《數理邏輯》(以下簡稱《數》)中的一些概念。
王:是的,主要是版本序列和三個語言環境。
奚:您的改革是以辯證唯物主義為指南的,這樣看來,唯物辯證法與版本序列和三個語言環境的概念是有密切聯系的。
王:可以說是高度統一的。
奚:您能結合實際,例如目前程序語言教學中的一些具體問題,談談它們的統一性嗎?
王:現在很多高校都選擇了C++作為主要的程序語言,但是C++的概念龐雜,難以理解,不容易深入。特別是C++新標準的出現,string串類、順序容器和關聯容器(例如vector、list),以及在這些類型上進行操作的一組可擴展的泛型算法,都屬于C++新標準的特性。這使C++和數據結構的學習順序發生矛盾:數據結構的先修課是C++,而C++的新特性中包含數據結構,它們互為前提。
奚:你們把C、C++和數據結構結合在一起,是否可以解決這些問題。
王:是的。我們的主要做法是,先用C語言描述數據結構的順序表、結構串和鏈表,然后將它們轉化為C++代碼,使每一個C++概念都可以用C代碼嚴格描述其產生過程,每一個C++程序都可以用一個對應的C程序嚴格解釋。現在我們分別從唯物辯證法和《數》的版本序列和三個語言環境概念來分析這種做法的合理性。
奚:這就等于是在論述它們的統一性。
王:唯物辯證法認為,作為研究對象的事物不是靜止不變的。辯證法不過是對包含著一連串互相銜接階段的那種發展過程進行闡明。例如,從C到C++是程序語言發展的一段過程?!?br>