アカウント名:
パスワード:
Cこそ至高。マクロで言語を拡張してオブジェクト指向を取り入れるんだ
> マクロで言語を拡張してオブジェクト指向を取り入れるんだ
そりゃ、C++ だ!!!
って突っ込んで欲しいのかな?
X11のことでしょ
X11というか、X toolkit(Xt)のことですか?
X Window System の最も基本なライブラリがXlib。Xのプロトコルに直結した描画機能だけを提供するレベルのライブラリで、ボタンなどの部品機能はないからXlibだけを使ってGUIを作るのは非常に手間がかかる。で、X11が最初期から標準で提供している「Xlib を使った GUIコンポーネントライブラリ」が Xt。昔はXのアプリを書くならXtはほぼ必須でしたけど、今時GTK+もQtもXlibベースで作られてるので、そういう今時なX11アプリを作るぶんにはXtの出番はありません。
で、XtはC言語ベースでありながらもオブジェクト指向で作られてますが、データ(構造体)の取り扱いと関数体系がオブジェクト指向なだけです。言語仕様的にはC言語のままで特別なことは何もしてないので、Xtは「マクロで言語を拡張してオブジェクト指向を取り入れ」たものには該当しないでしょう。
オブジェクト指向に基づいてコーディングする(されている)環境があるのならオブジェクト指向を取り入れたと呼んで良いのでは?それいったらC++だってオブジェクト指向ガン無視してコーディングできますし。
コーディングする際の考え方・パラダイムがオブジェクト指向ならばそれはオブジェクト指向ですよ。オブジェクト指向言語では無い環境でオブジェクト指向してるんです。
いや、話がずれてます。Cこそ至高。マクロで言語を拡張してオブジェクト指向を取り入れるんだ [srad.jp]というコメントに対し、X11のことでしょ [srad.jp]ってコメントが付いてたから、Xtは純粋なC言語のライブラリであり「マクロで言語を拡張」なんかしてない、という突っ込みを入れたんです。
XtがC言語ベースでオブジェクト指向なライブラリであることに異存はありません。
言語の範囲内で提供されているマクロでは言語を拡張なんてそもそも不可能という話?
元コメントでは、Cのマクロでオブジェクト指向な言語拡張をしたらどうか、というネタが挙げられていますがXtはマクロで言語を拡張したものではないので、そのコメントに対する回答として不適切である、という話です。
マクロによる言語拡張ができるかどうか、実際にそれをやっちゃった実例があるかどうか、という点については何も言及していません。
マクロでCを別の言語に作り変えて、それを使ってC言語を解説してる本があったような。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
一つのことを行い、またそれをうまくやるプログラムを書け -- Malcolm Douglas McIlroy
Cがいいぞ (スコア:0)
Cこそ至高。
マクロで言語を拡張してオブジェクト指向を取り入れるんだ
Re:Cがいいぞ (スコア:2)
> マクロで言語を拡張してオブジェクト指向を取り入れるんだ
そりゃ、C++ だ!!!
って突っ込んで欲しいのかな?
Re: (スコア:0)
X11のことでしょ
Re:Cがいいぞ (スコア:1)
X11というか、X toolkit(Xt)のことですか?
X Window System の最も基本なライブラリがXlib。Xのプロトコルに直結した描画機能だけを提供するレベルのライブラリで、ボタンなどの部品機能はないからXlibだけを使ってGUIを作るのは非常に手間がかかる。で、X11が最初期から標準で提供している「Xlib を使った GUIコンポーネントライブラリ」が Xt。
昔はXのアプリを書くならXtはほぼ必須でしたけど、今時GTK+もQtもXlibベースで作られてるので、そういう今時なX11アプリを作るぶんにはXtの出番はありません。
で、XtはC言語ベースでありながらもオブジェクト指向で作られてますが、データ(構造体)の取り扱いと関数体系がオブジェクト指向なだけです。言語仕様的にはC言語のままで特別なことは何もしてないので、Xtは「マクロで言語を拡張してオブジェクト指向を取り入れ」たものには該当しないでしょう。
Re: (スコア:0)
オブジェクト指向に基づいてコーディングする(されている)環境があるのならオブジェクト指向を取り入れたと呼んで良いのでは?
それいったらC++だってオブジェクト指向ガン無視してコーディングできますし。
コーディングする際の考え方・パラダイムがオブジェクト指向ならばそれはオブジェクト指向ですよ。
オブジェクト指向言語では無い環境でオブジェクト指向してるんです。
Re:Cがいいぞ (スコア:1)
いや、話がずれてます。
Cこそ至高。マクロで言語を拡張してオブジェクト指向を取り入れるんだ [srad.jp]というコメントに対し、
X11のことでしょ [srad.jp]ってコメントが付いてたから、
Xtは純粋なC言語のライブラリであり「マクロで言語を拡張」なんかしてない、という突っ込みを入れたんです。
XtがC言語ベースでオブジェクト指向なライブラリであることに異存はありません。
Re: (スコア:0)
言語の範囲内で提供されているマクロでは言語を拡張なんてそもそも不可能という話?
Re:Cがいいぞ (スコア:1)
元コメントでは、Cのマクロでオブジェクト指向な言語拡張をしたらどうか、というネタが挙げられていますが
Xtはマクロで言語を拡張したものではないので、そのコメントに対する回答として不適切である、という話です。
マクロによる言語拡張ができるかどうか、
実際にそれをやっちゃった実例があるかどうか、
という点については何も言及していません。
Re: (スコア:0)
マクロでCを別の言語に作り変えて、それを使ってC言語を解説してる本があったような。