プログラミング言語の進化, 開発環境の進化

@PG_kura さんを起点とした, 開発環境そのものの進化の話. プログラミング言語のおまけみたいに扱われるが, もっと言語の根幹に関わるものとして扱ってもいいのではないか? という話です. たぶん. この会話に参加したかった...
12
Selene @selene_pg

Xamlたけでrss取得→表示なサンプル見たことある RT @PG_kura: @selene_pg 書けたっけ・・・?ごめん、実はよく知らない・・・。

2010-07-26 16:39:57
くっくっkura 🇯🇵🦀 @PG_kura

あ、ビジュアル側に振るとはいえ、「プログラムが .png で書かれてます」では困るので一応文字列ベースのものを標準として決めてしまって、そのプログラムをエディタを介して編集する、という感じだと割と現実的な IDE とかは作れそう。

2010-07-26 16:44:22
@Pota_kamone

@PG_kura 結局コンピュータの事情を人間がなんとかする。という方向なのが問題かと、intとかlongって人間からすれば何の意味もないですからね。

2010-07-26 16:44:39
くっくっkura 🇯🇵🦀 @PG_kura

@Pota_kamone そうですねー。プログラマは値段とか ID というものを表現したいのに、コンピュータからは 32bit の整数型が提供されているわけで、こういうところでも齟齬がありますよね。

2010-07-26 16:47:10
pokarim @pokarim

@PG_kura 個人的にはソースコードの'名前'とグラフ構造を別々に保存しておいて、表示編集するときに一部をシリアライズするといいのかなと思いますがどうでしょうか。

2010-07-26 16:47:36
くっくっkura 🇯🇵🦀 @PG_kura

@selene_pg その Xaml みたいなしくみだけでアプリケーションを作れないかにゃー?

2010-07-26 16:47:53
Selene @selene_pg

@PG_kura Xaml(Blend)かWindows Workflow Foundationのアプローチが近いんじゃないかなぁ、両方ともまだまだだけど

2010-07-26 16:51:17
くっくっkura 🇯🇵🦀 @PG_kura

@pokarim えと・・仰っている内容が把握できてないのですが、グラフに限らず特定の何か、をJava とか Haskell ではないもっと対象を扱うにふさわしい環境で編集する、というやり方は良いと思いますね。

2010-07-26 16:53:31
alwei @aizen76

ゲーム開発だと割りとそんな感じ RT @PG_kura: で、開発環境をビジュアル側に振る、と決定するのであれば、言語そのものの書きやすさ、読みやすさはある程度捨ててもいいんじゃないかと思うんですよ。

2010-07-26 16:54:36
pokarim @pokarim

@PG_kura 識別子にIDを振って、識別子の文字列としての情報と、識別子によって表現されたオブジェクト同士の参照関係のグラフを別々に保存する、くらいの意味ですが、これでもまだわかりにくいですね。。。

2010-07-26 16:59:18
くっくっkura 🇯🇵🦀 @PG_kura

僕が具体的に欲しいモノは、それだけでアプリケーションを記述できる、低レベルな環境。今はまだ、プログラムを書く作業と、アプリケーションを動かすというゴールの間に凄まじく深い谷があるように思う。フレームワークで橋をかけてやっとこさ渡ることしかできず、それは客が望んでいるものでもない。

2010-07-26 16:59:38
くっくっkura 🇯🇵🦀 @PG_kura

@aizen76 ほへぇ~、そうなのですか。ゲームとかはまさに複雑さの極みですしね。

2010-07-26 17:01:23
くっくっkura 🇯🇵🦀 @PG_kura

@pokarim グラフの操作に注力するのなら、専用のアプリケーションを作ってそのアプリケーションが何らかのスクリプトを吐いてくれる、という対応でもいい気がしますねー。

2010-07-26 17:04:27
pokarim @pokarim

@PG_kura 低レベルというのは、Javaよりアセンブラが低レベルといった意味の低レベルですか? となると例えばSqueakのような統合開発環境の方向性とも違う方向ということでしょうか?

2010-07-26 17:04:34
くっくっkura 🇯🇵🦀 @PG_kura

そしてようやく L.J.ピンソン/R.S.ウイナー について調べだすなど。

2010-07-26 17:05:32
くっくっkura 🇯🇵🦀 @PG_kura

いえ、フレームワークより低レベル、という意味です。端的に言えば「プログラミング言語」です。エディタに助けてもらうことを前提としたプログラミング言語です。 RT @pokarim: @PG_kura 低レベルというのは、Javaよりアセンブラが低レベルといった意味の低レベルですか?

2010-07-26 17:09:08
くっくっkura 🇯🇵🦀 @PG_kura

ライブラリの充実によって上がる生産性は大きいんだけども、そのライブラリを記述する言語そのものをもうちょっと何とかしたい。

2010-07-26 17:13:12
pokarim @pokarim

@PG_kura おーそういうことですね。ありがとうございます。僕もフレームワークは大嫌いです。お世話になってはいますが。

2010-07-26 17:13:21
くっくっkura 🇯🇵🦀 @PG_kura

ですね。全部ビジュアルにすると逆効果だと思います。 RT @Pota_kamone: 画面設計を文字で行うような事をしてる限りいつまで経っても生産性が上がるわけがない。ただ、何でもグラフィカルにすれば良いと言うわけでもないと思う。

2010-07-26 17:18:47
pokarim @pokarim

@PG_kura 極端な例ですが、表計算ソフトはDomain-specificである意味その方向性で成功していると思いますがどうおもわれますか? 自己記述やライブラリ作成の面では弱いですが用意された関数だけで大抵のことができます。

2010-07-26 17:23:54
くっくっkura 🇯🇵🦀 @PG_kura

@pokarim はい、成功していると思います。目的が比較的明確ですし、利用者も表計算ソフトはこういうものだ、と認識できていますしね。そういう意味では画像レタッチやtwitterクライアントソフトなども同様かと。

2010-07-26 17:30:42
くっくっkura 🇯🇵🦀 @PG_kura

表計算ソフトは表計算するために十分な機能を備えるようになってきている。画像レタッチソフトも画像を編集するために。プログラム作成もそれぐらいの作りやすさを享受できてしかるべきだと思うがまだまだ未熟、ということを言いたいとですよ。

2010-07-26 17:36:52
pokarim @pokarim

@PG_kura 画像レタッチと違ってロジックを定義できるので、表計算ソフトは見方によっては開発環境だと言えると思ってます。IF関数や数式を入力することと、普通のプログラミングに実はそんなに隔たりはないと思います。

2010-07-26 17:41:29
くっくっkura 🇯🇵🦀 @PG_kura

@pokarim ですね。まさにそのとおりで、それをさらに一般化したり、CASE ツールのようなベクトルを混ぜていけばプログラマの職は社会から消せる、と思っていました。しかし仮にそういう未来へ到達するにしても、道具が Java では心許ないので次の言語が欲しいのです。

2010-07-26 17:45:46
くっくっkura 🇯🇵🦀 @PG_kura

人が要求するものへ近づけることは大切だけども、C++ をやって分かるのはコンピュータが要求するものをちゃんと与えることがいかに重要かということ。両方の要求を文字だけでやるから無理がある。しかし直列に表現されたものはコンピュータにとってたいがい都合がいいのも事実。

2010-07-26 18:10:48