機関車牽引列車よりも総合的な高速性に優れ、なおかつ編成運転を行える液体式気動車の出現は国鉄における新たな展開を促し、まもなく優等列車への投入という形で発展した。1953年以降、気動車による快速列車が運転されるようになり、1955年には関西本線と御殿場線で気動車準急列車が運転を開始、1956年には幅広軽量車体の準急形キハ44800形（後のキハ55形）が出現して、客車に比しての居住性の遜色は相当に改善された。気動車準急列車は1960年頃までに日本全国に普及、さらに1958年からは気動車急行列車が出現した。そして1960年には空気バネ台車と空調設備を装備し、食堂車を連結した初の特急形気動車キハ80系が開発され、東北本線特急「はつかり」に投入される。当初は故障が頻発したが後に克服し、キハ82、キシ80形を加えた改良型キハ80系は、1961年以降大量増備され、日本全国に特急網を整備するなど、大きな成功を収めた。1953年から1968年までに5000両を超える国鉄気動車が増備され、イギリスをもしのいで気動車保有世界最多を誇ったのもこの時期である。未電化路線が多かったため、地方路線の高速化・サービス向上に気動車は大量導入され、著しい実績を収めた。その意味から言えば、1960年代は国鉄気動車の最盛期とも言える時代である。
他に代用燃料による気動車として天然ガスを燃料に用いた「ガスカー」がある。これは千葉県、新潟県、山形県、秋田県など天然ガス資源に恵まれた地域で、1940年前後からガソリンカーを改造して出現したもので、ガスボンベ多数を床下搭載して改造ガソリンエンジンを駆動した。ガソリンカーに比べて20%程度の出力低下に留まり、燃焼特性自体は良好でエンジンへの悪影響もなく、走行性能では他の代燃車よりは優れていたが、ガス代が極めて高価であること、ガス充填に時間と手間が掛かり、車載ボンベもかさばること、そして爆発の危険性など特有の問題も多かった。このため、ガス産地至近の一部国鉄路線と私鉄5社で用いられたのみで、他の地域にまで一般化はしなかった。これらの地域では後年までディーゼルカーのことをガスカーと呼ぶ者もあった。1950年6月に、ガスカーを使用していた小湊鐵道において、ディーゼルエンジンに天然ガス混合の空気を吸気させ、圧縮行程で少量の軽油を噴射することで着火させるという、天然ガス使用ディーゼルエンジンの実車試験が行われた。燃費面では、ガソリンエンジン形の火花点火式よりも大幅な改善を実現したものの、同年中に軽油の供給量に問題がなくなると本来のディーゼルエンジンとして用いた方が遙かに経済的な状況となり、本格実用化に至らないままに終わった。
代用燃料（代燃）車 とは、本来想定される正規の石油系燃料の代替として、それ以外の燃料（代用燃料）を用いて走行する車両のことである。戦時体制に入りガソリン等の燃料油が入手できなくなると、内燃機関で走行する鉄道車両や自動車は代用燃料の使用が必須となった。代用燃料では一般に「木炭ガス」といわれる、木炭などの固形燃料をガス発生炉（代燃炉）で不完全燃焼させて発生させた可燃性ガスが知られているが、天然ガス、アセチレンガスもあった。このうち内燃動車には、ガス発生炉によるものと天然ガスが使用された。
1941年に燃料油の民間配給が途絶えて以降、日本国内の気動車の運行は蒸気動車と代用燃料を使用したガソリンカーに限定されることとなった。燃料不足により内燃動車の稼動は大幅に低下し、休車となったり、客車代用、あるいはエンジンを取り外して客車として使用される車両も多かった。国鉄では1945年5月（3月とする文献もある）において内燃動車の運転を取りやめている。ディーゼルカーについては戦時中には代用燃料を使用する手段が実用化されず、ディーゼルエンジン車両は休止を余儀なくされた。
"Hello World"は1970年代から「コンピュータはプログラム言語を使って、こんなにも簡単に動くものですよ」ということを感じさせる課題として好んで使われ、今日では教則本の冒頭にこれを置くことが半ば様式化してしまった。しかしPrologの述語は基本的に真偽値を問うものであって、入出力は副作用として疎ましい存在であり、冒頭にHello World述語を持ってくることには反対意見が強い。そういう事情を理解した上で、ここでは、この課題をPrologプログラミングの導入として利用してみよう。Prologは質問すると、処理系が答えを返す系である。"Hello World!"という表示は処理系が行うのだから、その前に質問がなくてはならない。質問を "hi" とする。hi :-        write('Hello World!\n').writeは引数が一個の組込述語である。引数の内容を表示する。world!の後の"\n"は改行することを意味する。実行例で見てみよう。Prologインタプリタは一般にプロンプトとして "?- "　が表示された後に、ユーザーが質問を入れる。?- hi.Hello World!述語名が hi であっても hi(a) :- や hi(1,2,3) :- の定義もあるかもしれない。Prologではこれらを区別するために、それぞれhi/0 hi/1 hi/3 のようにスラッシュの後に引数の数を書いて区別する。ここでは hi/0 である。質問 hi に対して、定義済みの hi が呼び出されて、その中でさらに write('Hello World!\n') が呼び出された。ここでは "Hello World!\n" は組込述語 write/1 の中に直接記述されたが、一般にはこのような原初的な情報はデータベース述語によって管理され、そこから引き出されて使われる。hi :-        answer(hi,S),        write(S).answer(hi,'Hello World!\n').S は先頭が英大文字だから論理変数である。answer/2はプログラマが定義したデータベース述語である。副目標answer(hi,S)は述語定義 answer/2 と融合され、各引数が単一化される。第一引数はatom同士でしかもhiで完全一致、第二引数はSと'Hello Wolrld!\n'が単一化されて、これは単一化のルールにより無条件に論理変数Sは'Hello World!\n'となる。そのS、乃ち'Hello World!\n'をwrite/1する。さらにこのプログラムに bye を追加してみよう。hi :-        answer(hi,S),        write(S).bye :-        answer(bye,S),        write(S),        halt.answer(hi,'Hello World!\n').answer(bye,'See you again!\n').述語 bye/0 の本体 (:- の右側) の最後にある halt は0引数の組込述語で処理系を終了させる。実行例?- hi.Hello World!?- bye.See you again!#Hello World からの導入はこんなところだろう。