したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |
レス数が900を超えています。1000を超えると投稿できなくなるよ。

ヒッキープログラミングスレ 2

1(-_-)さん:2013/06/20(木) 03:58:01 ID:???
プログラミングの話題のスレ

質問・相談
初心者からプロまで
プログラミングに関することなら何でもOK

ヒッキーのプログラミングするスレ
http://ikura.2ch.net/test/read.cgi/hikky/1362050172/

プログラミングできる奴、一緒にアプリ作ろうぜ!!
http://ikura.2ch.net/test/read.cgi/hikky/1360671157/

ヒキ板情報技術部
http://ikura.2ch.net/test/read.cgi/hikky/1348106094/



前スレ
ヒッキープログラミングスレ
http://jbbs.livedoor.jp/bbs/read.cgi/internet/17286/1361821799/

135(-_-)さん:2013/06/26(水) 17:42:02 ID:???
まだスコープの勘違いがあったとは・・・自分の愚かさに情けないと思うよ・・・うう・・・
>>117の純LISPは完成はしてないってことだな・・・静的スコープの実装ミスが解消されてないんだから・・・

136(-_-)さん:2013/06/26(水) 17:44:43 ID:???
まさかCommon Lispが静的と動的を共存させてたなんて・・・
動的スコープの説明のとこで動的スコープ使うのは古典LISPだけだと勝手に思ってたわ・・・

137(-_-)さん:2013/06/26(水) 17:45:31 ID:???
もう一つ思い至ったが
よくよく考えたら>>117は動的スコープに設定してあるから静的スコープの設計ミスは一応は影響無かったわ

138(-_-)さん:2013/06/26(水) 17:46:35 ID:???
プロセッサ全体を動的スコープにするか静的スコープにするかの切り替え機能を入れてるだけだから
Common Lispとはまた違うわな

139(-_-)さん:2013/06/26(水) 17:48:29 ID:???
defvarで宣言した変数は、宣言したその変数だけ動的スコープな振る舞いをするのな・・・異なるスコープ概念の共存とかプログラマは混乱したりいないのか・・・

140(-_-)さん:2013/06/26(水) 17:50:27 ID:???
あきらかにWikipediaの静的スコープのところを読み間違えてたというか勘違いしてたというか、本当恥ずかしいわ・・・ああ・・・俺ってばセンスのかけらもないって感じ・・・うう・・・

141(-_-)さん:2013/06/26(水) 17:51:33 ID:???
何事においても理解力が悪すぎる・・・
理解力の悪さは本当致命的だわ・・・

142(-_-)さん:2013/06/26(水) 17:54:55 ID:???
静的と動的の共存とか考えただけで混乱してくるわ、ってことは俺の理解がまだ足りないから混乱するってことだよな・・・Common Lisp使いはすげえわ・・・

143(-_-)さん:2013/06/26(水) 17:55:35 ID:???
もし俺がCommon Lispなんかでプログラム組んだらバグだらけの最悪のコードに仕上がりそう・・・

144(-_-)さん:2013/06/26(水) 18:05:34 ID:???
現在実装したlambdaの処理で考えると
(A)動的スコープの変数コンテナ
(B)静的スコープの変数コンテナ
(C)lambda関数で作られたスコープの変数コンテナ
の3種を作って

変数への参照が発生した場合は
(C) → (A) → (B) の順番で変数の有無をチェックする

そのlambda関数内で別のlambda関数を呼び出したときのスコープの変化は・・・
(A)と(C)は親子関係になって子である(C)が新たな(A)となり
(B)はそのlambda関数が捕らえてるスコープの変数コンテナに置き換わって
(C)は新たに変数コンテナが生成される

という具合か

145(-_-)さん:2013/06/26(水) 18:18:37 ID:???
じゃあlambda関数宣言時のクロージャはどのスコープを捕縛すればいいのか
変数単位で捕縛を決めるとなると
lambda関数宣言時にlambda関数のボディ部を精査する必要があるが、ボディ部内で宣言される変数とかも考慮しないといけないし、それは面倒
となると現在のスコープの変数コンテナを捕縛する必要があるが
ボディ内で宣言されている静的スコープの変数は(C)と(B)を辿るわけだが
うーむ、親子関係で父と母がいるみたいに親が2人いるという関係を作ればいいのか?
(C)は(A)とも親子関係だが(B)とも親子関係、なので変数探索は(C)を通して行えばいいという感じか
じゃあ現在のスコープである(C)をlambdaが捕縛したとして
変数検索はどうするんだ・・・?
スコープを抜けるたびに(C)と(A)が親子関係を切っていけばいいのかな
(B)としてロードされたとき(B)は静的な親とは親子関係を継続してるから探索ルートとして有効で
動的な親とは親子関係を切ってるからそちらからの探索はできない、

146(-_-)さん:2013/06/26(水) 18:23:24 ID:???
それとも
existDynamicVaialbe(name)
existLexicalVaiable(name)
という二つのメソッドでも作るか?そのほうがいいか
入口の(C)はexistVariable(name)でメソッドで
(C)が動的親(A)にexistDynamicVariable(name)で問い合わせをして、自身になければそのさらに上の動的親にexistDynamicVariable(name)で再帰的に問い合わせ続けてグローバルまで
静的親(B)にexistLexicalVariabel(name)で問い合わせをして、自身になければさらにその上の静的親にexistLexicalVariable(name)で再帰的に問い合わせ続けてグローバルまで
をすればいいのかな

なんか違うな

147(-_-)さん:2013/06/26(水) 18:27:03 ID:???
ひとまず2度探索することになるから
C.existVariable(name) としたならまず自身の現在スコープ内で変数検索をかけて
DynamicVariables.existName(name) とか動的スコープ変数の名前をリストから問い合わせて
あれば動的親にexistDynamicVariable(name)、無ければ静的親にexistLexicalVariable(name)で問い合わせる
という感じかな・・・?

148(-_-)さん:2013/06/26(水) 18:34:44 ID:???
(C)の現在スコープ内で
lambda関数の宣言が入ったら、(C)はlambda関数呼び出し時に親になる契約をするという感じか
また別のlambda関数の呼び出しが入った場合は(C)はそのタイミングで(C)自身は次の動的親になり、関数から抜けたら子が親を切る
ネストはどうする?
ネストに入ると(C)はそのネストの動的親子・静的親子関係を結ぶけど、ネストから抜けたら動的親子だけ関係を切るという感じか

親子関係は常に子が親を識別する関係で、親側が子を把握するわけではない、
親は子が何人いるかは不明、子からすれば親の人数は動的親と静的親の2人いることになり、
動的親とはすぐに関係を切る、静的親の方はご先祖さまで把握できる、ということか

149(-_-)さん:2013/06/26(水) 18:40:55 ID:???
動的親は常に新しいスコープ直前のスコープと親子関係を結び
静的親はネストか関数かで親の取り方が異なり、ネストなら直前のスコープ、関数なら関数が捕縛するスコープ

150(-_-)さん:2013/06/26(水) 18:43:55 ID:???
そして親なしのスコープはグローバルスコープさんだけ
他はグローバルスコープさんをご先祖様に持つ静的親が常に存在し
グローバルスコープさんをご先祖様に持つ動的親が自身の活動中だけいる

うーむ、うまくまとまらんな

151(-_-)さん:2013/06/26(水) 18:47:18 ID:???
ひとまずCommon Lispのスコープを真似るとしたらこんな感じか

152(-_-)さん:2013/06/26(水) 19:02:07 ID:???

リスト 動的変数名一覧 = new リスト();
スタック 現在のスコープ保持 = new スタック();
変数コンテナ グローバルスコープ = new 変数コンテナ();
変数コンテナ 現在のスコープ = グローバルスコープ;

class 変数コンテナ {
リスト 変数リスト = new リスト();
変数コンテナ 静的親 = null;
変数コンテナ 動的親 = null;
method get(変数名) {
if (変数リスト.exist(変数名)) {
return 変数リスト.get(変数名);
} else if (動的変数名一覧.exist(変数名)) {
return 動的親.get(変数名);
} else {
return 静的親.get(変数名);
}
}
}

method intoNestScope() {
現在のスコープ保持.push(現在のスコープ);
変数コンテナ 新しいスコープ = new 変数コンテナ();
新しいスコープ.静的親 = 現在のスコープ;
新しいスコープ.動的親 = 現在のスコープ;
現在のスコープ = 新しいスコープ
}

method intoFunctionScope(関数) {
現在のスコープ保持.push(現在のスコープ);
変数コンテナ 新しいスコープ = new 変数コンテナ();
新しいスコープ.静的親 = 関数.捕縛スコープ;
新しいスコープ.動的親 = 現在のスコープ
現在のスコープ = 新しいスコープ;
}

mothod outofNestScope() {
現在のスコープ.動的親 = null;
現在のスコープ = 現在のスコープ保持.pop();
}

method outofFunctionScope() {
現在のスコープ.動的親 = null;
現在のスコープ = 現在のスコープ保持.pop();
}


イメージ的にはこんな感じか?

153(-_-)さん:2013/06/26(水) 19:03:30 ID:???
インデントが死んでた


リスト 動的変数名一覧 = new リスト();
スタック 現在のスコープ保持 = new スタック();
変数コンテナ グローバルスコープ = new 変数コンテナ();
変数コンテナ 現在のスコープ = グローバルスコープ;

class 変数コンテナ {
 リスト 変数リスト = new リスト();
 変数コンテナ 静的親 = null;
 変数コンテナ 動的親 = null;
 method get(変数名) {
  if (変数リスト.exist(変数名)) {
   return 変数リスト.get(変数名);
  } else if (動的変数名一覧.exist(変数名)) {
   return 動的親.get(変数名);
  } else {
   return 静的親.get(変数名);
  }
 }
}

method intoNestScope() {
 現在のスコープ保持.push(現在のスコープ);
 変数コンテナ 新しいスコープ = new 変数コンテナ();
 新しいスコープ.静的親 = 現在のスコープ;
 新しいスコープ.動的親 = 現在のスコープ;
 現在のスコープ = 新しいスコープ
}

method intoFunctionScope(関数) {
 現在のスコープ保持.push(現在のスコープ);
 変数コンテナ 新しいスコープ = new 変数コンテナ();
 新しいスコープ.静的親 = 関数.捕縛スコープ;
 新しいスコープ.動的親 = 現在のスコープ
 現在のスコープ = 新しいスコープ;
}

mothod outofNestScope() {
 現在のスコープ.動的親 = null;
 現在のスコープ = 現在のスコープ保持.pop();
}

method outofFunctionScope() {
 現在のスコープ.動的親 = null;
 現在のスコープ = 現在のスコープ保持.pop();
}

154(-_-)さん:2013/06/26(水) 19:04:53 ID:???
あーこれだとグローバルスコープさんで変数を検索する際に ぬるぽ しますねえ

155(-_-)さん:2013/06/26(水) 19:07:25 ID:???
インデント入れても全角文字のコードは読みづらいな・・・日本語プログラミング言語が流行らないわけだわ

156(-_-)さん:2013/06/26(水) 19:13:18 ID:???
コンストラクタのオーバーロードを使えば
変数コンテナのnewのときに関数かネストかを区別できそう
あとはスコープ抜けたときのメソッドも変数コンテナ側につけて
グローバル位置に宣言してる一覧とかグローバルさんを変数コンテナclassのstaticなメンバとして使えばOKな感じか
まぁjavascriptでは無理だろうが

157(-_-)さん:2013/06/26(水) 22:05:26 ID:???
un

158(-_-)さん:2013/06/27(木) 01:02:54 ID:???
あるテキストデータのP文字目からQ文字目において

1byte半角がM種類で総文字数がU文字 (0 <= M <= 256, 0 <= U)
2byte全角がN種類で総文字数がV文字 (0 <= N <= 256, 0 <= V)

0 < (M + N) <= 256
0 < M ⇔ 0 < U
0 = M ⇔ 0 = U
0 < N ⇔ 0 < V
0 = N ⇔ 0 = V
0 < (U + V)

TABLE_SIZE := (M + N) + (M + (N * 2)) > 0
BYTE_SIZE := U + (V * 2) > 0

(BYTE_SIZE - V) + TABLE_SIZE < BYTE_SIZE
→ TABLE_SIZE < V
→ 1 < V / TABLE_SIZE

R := V / TABLE_SIZE

P文字目から数えてRを最大にするQ文字目を探す

159(-_-)さん:2013/06/27(木) 03:19:07 ID:???
The Java? Tutorials
http://docs.oracle.com/javase/tutorial/

JAVA覚えようぜ

160(-_-)さん:2013/06/27(木) 20:03:57 ID:???
ごめん「プログラミング言語を勉強する」という道は既に通ったんだ
新しい言語を覚えるときは既に知ってる知識との差分で済ませられるから3日もあれば出来るようになるし

161(-_-)さん:2013/06/28(金) 17:10:57 ID:???
規制されちった

162(-_-)さん:2013/06/28(金) 19:54:48 ID:???
てひひ

163(-_-)さん:2013/06/28(金) 22:14:15 ID:???
一般的に新聞や雑誌やコンテストに作品(文章や詩歌や絵や音楽やプログラム)を投稿したりするときって、
著作権の一部を新聞社や出版社や主催者側に移譲するなりの約束事項や契約みたいなもんあるじゃん
それで投稿・応募した作品を著作権者の自由にできないこと(自分で頒布や販売とか)多いじゃん、(ひこにゃんなんかいい例)
ideoneとかcodepadやsourceforgeとかgithubとかってそういう事項あったりしないの?

164(-_-)さん:2013/06/28(金) 22:27:28 ID:???
知らんがな
ggrks

165(-_-)さん:2013/06/28(金) 22:31:19 ID:???
避難所まで荒らす気か

166(-_-)さん:2013/06/29(土) 15:51:57 ID:???
コーディング規約って何だ?

167(-_-)さん:2013/06/29(土) 16:00:24 ID:???
分からない用語はググりましょう

168(-_-)さん:2013/06/29(土) 16:14:07 ID:???
コールスタックを遡って例外を投げる

169(-_-)さん:2013/06/29(土) 16:30:35 ID:???
実際に問題が起こったことはあるよ
だから大事なソースはライセンスをきっちり決めて書いといたほうが後々面倒なことが起こらずに済む

170(-_-)さん:2013/06/29(土) 20:00:17 ID:???
404 名前:デフォルトの名無しさん[sage] 投稿日:2013/06/29(土) 18:59:40.27
命名規則に話が集中しているのはそこがあまりにタコだと実装のレビューをしようにも読む方が
無駄な努力を強いられて嫌になるから。Tableクラスだけでもなかなかの忍耐が必要。

一人で書き捨てするコードならともかく、人に読んで貰うなら命名規則や慣用は要尊重。
無知を言い訳したオリジナリティーの発揮は単に有害。初心者こそ模倣から始めるべき。

・適切なクラス名やメソッド名が解らないのであれば既存のライブラリのAPIから似たような
 ことをしているクラスやメソッドの名前を探して真似をする。
・適切なコメントの付け方が解らないのであれば既存のライブラリのソースコードを調べて
 (クラス名に.javaとつけてググればいくらでもヒットする)真似をする。JavaにはJavaDoc
 形式というコメントの付け方が定義されていて、これ以外の独自コメント形式は単に迷惑。
・適切な変数名が解らなければ既存のライブラリのソースコードを調べて(以下略)

解らなければまず調べよう。
初学者ほど何故か調べない、真似をしない、コンパイル時のエラーメッセージも読まない不思議。

171(-_-)さん:2013/07/01(月) 00:07:07 ID:???
phpにbuilt-inのウェブサーバがあるなんて知らなかった!
ウェブサーバーなんてインストールいらなかったんや!

172(-_-)さん:2013/07/01(月) 00:12:16 ID:???
PHP -S localhost:8000


http://localhost:8000/index.php
とかで見られたお!

173(-_-)さん:2013/07/01(月) 00:15:08 ID:???
あのLISPで2chブラウザとか作っちゃうのかい?

174(-_-)さん:2013/07/01(月) 00:24:57 ID:???
流石にあれで2chブラウザは㍉
LISPのコードをpythonに変換してバイトコンパイルとか考えたけど('A`)マンドクセ

175(-_-)さん:2013/07/01(月) 00:47:57 ID:???
そっか、どうせなら全国公開できるLISPを作っちゃえばいいのにと思ったけど
既存のプログラミング言語って1人で作りあげてるもんって中々ないもんね
そりゃ無理か

176(-_-)さん:2013/07/01(月) 00:50:00 ID:???
やっぱプロジェクトでたくさんの人で共同開発しないと面倒すぎるもんね
俺なんてたった5つの関数と4つの特殊形式のあわせて9つの機能しかないLISP作るのにひぃひぃ言ってるのに
世の中そううまくいかないもんだね

177(-_-)さん:2013/07/01(月) 00:58:27 ID:???
2chブラウザ自体は作ったことあるんだけどGUIにTk使ってて見た目ダサいしなんか詰めが甘かったな

178(-_-)さん:2013/07/01(月) 01:30:37 ID:???
作ったことあんのか、そりゃすげえな・・・
俺も作ってみたいとは常々思ってはいるんだが
いかんせん色々と難しそうで後回しだぜ

179(-_-)さん:2013/07/01(月) 01:54:21 ID:???
C#かVB.NETでテキストブラウザとか作ってみたいんよねえ
どうやって作りゃいいのか勉強しないといけんけど

180(-_-)さん:2013/07/01(月) 19:21:43 ID:???
<tag>...</tag>に従って色つけたり字の大きさを変えたりすればいいんでない?

181(-_-)さん:2013/07/01(月) 23:01:45 ID:???
うーん分からん、勉強まだ開始してないしまだ全くの無知レベルだから想像もつかんわ

182(-_-)さん:2013/07/01(月) 23:03:39 ID:???
テキストブラウザはw3mを使ったことあるけど、あれよりはも少しレイアウトがどうにかなるような感じのがいいけど
w3mとか偉大すぎるテキストブラウザを超えたいとかちょっと無謀すぎる目標だけどね(笑)

183(-_-)さん:2013/07/01(月) 23:08:04 ID:???
w3mを使ったのはFreeBSD上でだけなんだけど
PCが悪かったのかインストールの仕方が悪かったのか
まともなGUI環境を作れなかったから普通のブラウザが何一つ起動しなかったので
やむなしにktermだったか忘れたけどGUIターミナルからw3mを使ってた
普通にマウスも使えたし、画像も表示できるし、あれすごかったわ

184(-_-)さん:2013/07/01(月) 23:10:40 ID:???
ktermじゃなくてrxvtとかいうやつだったかな?
とにかく日本語に対応してるターミナルを使ってた

185(-_-)さん:2013/07/02(火) 02:36:33 ID:???
せっかくインストールしたことだし
PHPかPerlあたりで便利そうなスクリプトでも考えて書いてこうかな
VBScriptやJScript(JavaScript)でやるのはちょい不便に感じるし
コマンドプロンプトのバッチコマンドだけでやるのは限界が大きいし
JavaやCで作るという方法もあるんだろうけど
Cで色々処理するのは(プログラミングが)難しそうだし
Javaでもいいんだけど、色々と面倒が増えるし
PHPは使い慣れてていいんだけど
Perlはどうだろう、この際覚えてみるかなあ
まぁただPHPにしろPerlにしろ使うときは毎度環境変数のPATHを通さないといけんけどね
インストールフォルダ名にバージョン名とか入れちゃってるからシステムに登録するとバージョン上げるときに面倒だし
いっそJDKをインストールしたときみたいにフォルダ名からバージョン番号を潰すか?
いやいや、それは無理だ、PHPとPerlはバージョン番号を把握しきれんからな
JavaだとVMのアップデートで広く告知されるからいいけど
PHPやPerlとか一般人が直接扱わないもんなんか自分でチェックせなあかんし
RSSとかいう機能はウザいから使いたくないし、バックグラウンドジョブは増やしたくないからタスクやクローラーとか使いたくないし

186(-_-)さん:2013/07/02(火) 03:00:39 ID:???
PHP、Perl
 インストールフォルダにバージョン番号を入れてるので更新のたびにシステム環境変数の書き換えは面倒(管理者権限昇格作業は面倒)
 手動インストールなのでスクリプトファイルとして登録されてない(手動でやるのはかなり面倒なのでする気もない)のでクリックでは実行できない
 バッチファイルにスクリプトを起動する記述を入れればクリック実行も可能ではある
 ライブラリが強く、かなり色んな作業ができる

VBScript、JavaScript(JScript)
 Windowsに最初から入ってる、wsfというファイル形式を使えばVBScriptとJavaScriptを混合した柔軟なスクリプトが書ける
 制限も多く出来る作業に限界があるように感じる、またHTML上で使うのとは仕様がやや異なるらしく別途勉強が必要
 エクスプローラ側のエラーメッセージが具合悪くデバグしにくい、引数がいらなければクリックで実行することも可能

コマンドプロンプトバッチ
 出来る事は少なく使い勝手悪い反面、比較的シンプルな記述で作業はできる、各種スクリプト使うよりファイル操作は速い気がする
 引数がいらなければクリックで実行することも可能

Java
 CUIアプリは作れるものの、クリックで実行はできない、がバッチファイルにJavaを起動する記述を入れればクリック実行も可能
 各スクリプトやCみたいに平らに書いてくことが出来ず、いちいちクラス作ってかなきゃならん、非常に面倒
 ライブラリは豊富ではあるが、テキスト処理系にやや難あり(UTF-8のBOMが扱えない等)なので作業処理用に向いてないかも
 修正のたびにコンパイル作業が必要

C、C++
 なんでも出来るスーパー言語ではあるが、それを組み上げるのは至難極まる
 コンパイルが必要で手間、ライブラリは探せばあるかもしれんが使うには調整が必要な場合もあり
 面倒や手間が多すぎて手軽気軽に使えるもんじゃない、動的メモリやポインタが一番怖い、最悪パソコンがぶっ壊れる?

VB.NET C#
 未修得の言語な上にIDEが糞重くてあまり使う気しない、いずれ勉強するつもりではあるが
 手軽気軽に作業スクリプト書くのには向いてない

VB6
 どうもCUIアプリは作れないぽい、対応文字コードの問題でテキスト処理には不向き、時代遅れ言語である

187(-_-)さん:2013/07/02(火) 03:07:50 ID:???
PHPはサイト用にはちょいとだけ使ったが
ファイル操作系はUnix系が準拠でWindowsのスクリプト処理にはあまり向いてないんじゃないかと感じた

しかしPerlは全然使ったことないのでゼロベースからの勉強になる、非常に手間である

VBSとJSがHTMLとWSで仕様が違うのが慣れの問題で使い勝手が悪く感じる、
何ができて何ができないのか仕様の違いをさらうのは非常に手間、ゼロベースからの勉強のほうがマシなくらい
特にVB6とVBSの違いなども壁となっている、些細な違いを意識しながらコードを書くのはキツイ
英国英語と米国英語を使い分けるようなもん、混乱しやすいのでむしろ危険

188(-_-)さん:2013/07/02(火) 03:10:54 ID:???
忘れてたがWindows PowerShell とかいうのもあるが
まず糞重い、スクリプトファイルには証明書発行が必要、 コマンドプロンプトのバッチコマンドやUnixのシェルとはまた仕様が異なり使い勝手も悪い
何のメリットも感じられない

189(-_-)さん:2013/07/02(火) 03:31:09 ID:???
ひとまず作りたい作業スクリプトがありそれを実現するのに俺が把握してる範囲ではPHPが最適そうなのでPHPでやってみるは

190(-_-)さん:2013/07/02(火) 12:58:15 ID:???
Cとxlibでプログラミング楽しいよ
なにか作りたいものを作るのにはもっといい物があるけどそれ自体が目的なら結構良い

191(-_-)さん:2013/07/02(火) 13:55:03 ID:???
xlibとは古風な...
ルートに描画する壁アプリ位しか使い道思いつかん

192(-_-)さん:2013/07/02(火) 15:14:32 ID:???
やっぱりxlibは不便すぎるな
車輪の再発名のオンパレードだし荷が重い
unixというかlinuxでC/C++でGUIプログラミングするならgtkなのかな

193(-_-)さん:2013/07/02(火) 15:56:11 ID:???
やっぱりしんどいんだ
GtkとQtが主流だよね
入ってるのだと他はxfeがFOXを、dilloがFLTKを使ってる位か
後はwxWidgetsとかGNUSTEPとかかな

俺はfreepascalのLCLでGUIいじってたけど、
ScrollBoxやIMのバグが気になって他のGUIライブラリ探してる最中

194(-_-)さん:2013/07/02(火) 15:58:23 ID:???
なんかマイナーなものばかり使ってるね

195(-_-)さん:2013/07/02(火) 16:18:59 ID:???
入れてるだけで、たまにしか使わないよ ->xfe,dillo
freepascalはポインタに変なもの入れてもコンパイルエラーで弾いてくれてCより親切だしlazarusは便利だった

196(-_-)さん:2013/07/02(火) 19:23:11 ID:???
GtkインターフェースからQtインターフェースに変えたらバグ回避できた
これからもLCLでいいや

197(-_-)さん:2013/07/02(火) 19:26:08 ID:???
GUIプログラミングってつまらなくてなかなか身につかない
もうjavaのswingで妥協しようかな

198(-_-)さん:2013/07/02(火) 19:36:32 ID:???
freepascalってなんか魅力的だな
しかし需要も供給もない少ない気がするけど大丈夫なのかな

199(-_-)さん:2013/07/02(火) 20:19:31 ID:???
最新版には及ばないけどdelphi(VCL)との互換性のおかげで結構情報は落ちてるよ。
embarcaderoが日本語でAPIドキュメントとか書いてくれてるし

200(-_-)さん:2013/07/02(火) 21:08:18 ID:???
今は新しいこと覚える気分じゃないというか慢性的な肩こりで体がダルい
LISPインタプリタを一応完成させてから脱力感でやる気が出ない

201(-_-)さん:2013/07/03(水) 00:44:58 ID:???
俺は今、純LISPが一区切りしたということにしてPHPでのサイト作りのほうやってるぜい

202(-_-)さん:2013/07/03(水) 17:25:17 ID:???
なんだかんだでtcl/tk

203(-_-)さん:2013/07/09(火) 01:48:40 ID:???
Mozilla、C/C++に似た新たなプログラミング言語「Rust 0.7」をリリース | SourceForge.JP Magazine
ttp://sourceforge.jp/magazine/13/07/08/143000

どんなもんなんだろね

204(-_-)さん:2013/07/09(火) 02:01:57 ID:???
Sleipnir166に替わるブラウザが欲しいがOperaがWebkit使うとかで期待できなくなった
自前でブラウザ作るのって難しいのかな
マイナーなブラウザとかならたくさんありそうだが、どうなんだろうな

205(-_-)さん:2013/07/09(火) 13:39:19 ID:???
俺も真新しいものを開発して世間から注目されたい

206(-_-)さん:2013/07/13(土) 04:24:56 ID:???
PHPでのサイト作りサボりすぎ・・・まーた中途で止まってしまった

つかレン鯖のほうがPHPのバージョンが古いままなのに気づいた
どうもセーフモードを使いたいらしい
セーフモードはPHP5.4で非推奨でPHP5.5で完全に削除されてるからどうもアップデートしないようだ
俺が問題視してたmysql関連はphp5.5で削除のメソッドだからアップデートされないのならmysqliかpdoに書き換えるとかしなくていいかなって
面倒だし

207(-_-)さん:2013/07/13(土) 04:25:42 ID:???
ちなみに手元のWindowsとLinuxにインストールしたのがPHP5.5だからセーフモードとか再現できなかったりもする・・・

208(-_-)さん:2013/07/13(土) 04:26:23 ID:???
まー古いバージョンをダウンロードしてインストールしなおせばいいんだけどね

209(-_-)さん:2013/07/14(日) 03:34:38 ID:???
親がそろそろブチ切れそう・・・早いとこPHPのサイト完成させないと、完成させる前に家を追い出されるかパソコン没収されそう

210(-_-)さん:2013/07/14(日) 22:49:10 ID:???
その言い方ならPHPのサイトを完成させれば追い出されていいのか

211(-_-)さん:2013/07/14(日) 23:19:51 ID:???
まー追い出されたら死ぬしかないが
そのPHPのサイトを利用してるみんなの役に立てれば
もう思い残すことはないかなーって感じかな

212(-_-)さん:2013/07/14(日) 23:22:13 ID:???
さめがめのゲームの歴史を知っておどろいた
日本人が作ったゲームなんだな
今までさめがめってどんなゲームか知らんかったけど
ハンゲームのセイムパズルとかその他別名で遊んだことあったルールだった
すんげえ驚いた

いつか自分でも作ってみたいなさめがめ

213(-_-)さん:2013/07/14(日) 23:29:44 ID:???
今から作れば明日の早朝には完成してるだろ

214(-_-)さん:2013/07/14(日) 23:39:04 ID:???
何年か前にぷよぷよぽいの作ったけど
連結したのを消す処理って難しい
ペイントの塗りつぶし系のアルゴリズムと同じなんだろうけど
その手のアルゴリズムをちゃんと調べて実装したことないからなあ

215(-_-)さん:2013/07/14(日) 23:40:08 ID:???
塗りつぶしはそれはそれで作ったことあるけど作り方悪くて処理時間かかるし、領域が大きいとすぐスタックオーバーフローしたなあ(笑)

216(-_-)さん:2013/07/14(日) 23:41:31 ID:???
まーぷよぷよとかさめがめはそう広い領域じゃないからスタックオーバーフローを気にする必要ないし、ヘボい自前アルゴリズムでも処理時間は少ないからダイジョウブっちゃそうだけど

217(-_-)さん:2013/07/14(日) 23:44:34 ID:???
ぷよぷよ程度なら4方向を見て再帰的に調べていけば簡単に実装できた気がする
再帰呼び出しの回数も数回で済むし

218(-_-)さん:2013/07/14(日) 23:44:42 ID:???
今んとこグラフィック処理系のゲームですぐ作れるのはVB6くらいかな・・・
他の言語ではN88-BASICやQBASICならコード起こせるかもしれんけど、環境はもう無いし

219(-_-)さん:2013/07/14(日) 23:46:28 ID:???
>>218
freebasicって言うのがQBASICと互換性があるらしい

220(-_-)さん:2013/07/14(日) 23:47:39 ID:???
>>219
あまりごちゃごちゃインストールしたくなかったから
古いBASICライクの言語が色々あるのは知ってるんだけど
入れてないんだよ・・・

221(-_-)さん:2013/07/14(日) 23:50:41 ID:???
JAVAやVisual Studio2010も入れてるし、Borland C++コンパイラやOpen Watcom C++も入れてるから
VB6以外でもグラフィックス処理系を作る環境はあるっちゃあるんだが、これらでのGUI開発が無いから一晩では到底無理だし、1か月はかかるわ
VB6で作るなら徹夜もすれば1週間もかからずに出来ると思うけど

222(-_-)さん:2013/07/14(日) 23:53:53 ID:???
HTML上でもJavaScript系も手の込んだことはしたことないからHTML5のCanvasも含めてかなりの勉強が必要だし
まー醜くTABLEタグとIMGタグの大量配置で作ることも可能かもしれんが、こないだうpったライフゲームみたいに文字コードでやる手もあるかもしらんが

223(-_-)さん:2013/07/15(月) 00:13:09 ID:???
>>217
そこが一番難しいポイントだわ
得点とかつけずにシンプルにただ消してくだけなら簡単だろうけど
得点つけたり、消えるのに演出つけたりするんなら色々考えなけりゃならんし・・・

224(-_-)さん:2013/07/15(月) 02:51:14 ID:???
1時間20分で即席のさめがめは一応でけた・・・

225(-_-)さん:2013/07/15(月) 02:52:42 ID:???
JavaScriptで昔作ったライフゲームと同じ■の文字で構成
得点もなけりゃゲームオーバー判定もないし
再挑戦するならページリロードという
めちゃくちゃ手抜きだがな

226(-_-)さん:2013/07/15(月) 02:53:54 ID:???
しかもこれ、ちょっと古めのPCやヘボJSエンジンだと酷くなりそうなくらい処理方法が悪い

227(-_-)さん:2013/07/15(月) 03:00:26 ID:???
Operaだと気にならないがIE9だと少々もたつく
そしてFireFoxだと謎のテキスト整形がなされてゲームができない・・・

228(-_-)さん:2013/07/15(月) 03:01:48 ID:???
原因わかった・・・FireFoxだとHTMLのエンコードがShift_JISだと認識されなかったせいぽい・・・
metaタグで指定しないとダメか

229(-_-)さん:2013/07/15(月) 03:03:05 ID:???
おー、FireFoxはOperaよりも軽快に動いた

230(-_-)さん:2013/07/15(月) 03:04:47 ID:???
しかし酷いコードだな
即席で設計もなしに作ったから全部平らに書いてて本当酷いわ

まぁ、ただ作ってみて分かったのは
さめがめ というゲームは仕組み的には結構シンプルなのな

231(-_-)さん:2013/07/15(月) 03:09:19 ID:???
多少の手直しすれば得点とゲームオーバー判定とリロードなしでの再スタートも簡単に入れらるかな・・・それやるとさらに1時間かかりそうだが

232(-_-)さん:2013/07/15(月) 03:48:03 ID:???
おk、ゲームオーバー、得点、再スタート実装した

233(-_-)さん:2013/07/15(月) 04:08:12 ID:???
プレイして出るバグがあるな
ダブルクリックというか超連続クリックするとエラー出るけど
これはJavaScriptの仕様をちゃんと理解してない俺の問題か

234(-_-)さん:2013/07/15(月) 04:12:03 ID:???
ダメだわ、この作業ゲー
ひたすらやり続けてしまう、中毒性高杉
ハイスコアとか作ってないしスコアも気になるわけじゃなく
ただただひたすらこの単調な作業ぽい行為をやり続けてしまう
危ない


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板