【Lua】組み込み系言語総合 その5【Squirrel】
at TECH
[前50を表示]
250:デフォルトの名無しさん
12/02/12 05:36:04.12
俺の周辺では大人気だよ
251:デフォルトの名無しさん
12/02/12 06:38:23.91
俺の周辺ではまったく人気ないな
252:デフォルトの名無しさん
12/02/12 06:59:58.85
俺の周辺ではたわし
253:デフォルトの名無しさん
12/02/12 07:15:16.82
>>250
大人気はどうでもいいんで人気を教えてください
254:デフォルトの名無しさん
12/02/12 09:14:49.51
イカ臭いよお前
255:デフォルトの名無しさん
12/02/12 12:49:42.96
お前の臭いじゃないの?
256:デフォルトの名無しさん
12/02/12 13:59:43.88
StorokeItもStrokesPlusもLua
257:デフォルトの名無しさん
12/02/13 10:36:27.13
ぅあ臭い
258:デフォルトの名無しさん
12/02/13 13:46:55.63
∩_
〈〈〈 ヽ
〈⊃ }
∩___∩ | |
| ノ ヽ ! !
/ ● ● | /
| ( _●_) ミ/ Lua!!
彡、 |∪| /
/ __ ヽノ /
(___)
259:デフォルトの名無しさん
12/02/13 14:19:23.51
luabindで質問です。
構造体をバインドで、メンバ変数が配列の場合、
変数のバインドはできないのでしょうか?
URLリンク(old.nabble.com)
ここを見る限り、配列のバインドは出来ないような事が書かれており、
class_::property()を使って、ラップ関数でアクセスする方法が載っています。
こうするしかないでしょうか?
260:デフォルトの名無しさん
12/02/14 14:10:54.92
>>259
出来るよ
基本的にはそうでしょうね
struct X { T data[N]; };
で X x; としたときに
インスタンスの&x.data[0]が分からなどうにもなりませんからね。
でも、x.data, T, Nが分かればどうにでもなるでしょ?
261:デフォルトの名無しさん
12/02/14 21:19:58.94
URLリンク(twolivesleft.com)
これ流行ると思う?
262:デフォルトの名無しさん
12/02/14 22:22:49.86
これ、たぶん外部からのスクリプトの import/export ついてないよね?
つけた時点で規約違反でアウトになると思うんだが……
263:デフォルトの名無しさん
12/02/15 11:16:01.50
Lua統合開発環境、スタンドアローン版で登場
URLリンク(news.mynavi.jp)
264:デフォルトの名無しさん
12/02/15 11:56:15.31
まだ使ってないけど
他言語との連携がLuaの肝なのに
スタンドアロンにして大丈夫なのか
265:デフォルトの名無しさん
12/02/15 12:24:35.58
大丈夫だ
266:デフォルトの名無しさん
12/02/15 12:59:47.67
きたああああああ
これとMoai SDKで最強やんけ
267:デフォルトの名無しさん
12/02/15 13:12:57.08
外部からデバッグできる口を作る一般的な方法が確立してるなら問題ないんじゃね?
268:デフォルトの名無しさん
12/02/15 21:55:10.60
エディタとデバッガ分離して別々にインストールできるようにして欲しいとこ。
Eclipseもっさりんこすぎ。 フリーズしてラグいw
269:デフォルトの名無しさん
12/02/15 23:28:51.42
>>260
259です。
class_::property()を使用して出来るという事でしょうか?
わたしの理解が足りてないのですが、
Nを知る手段が分かりません・・・
また、Lua側で x.data[1] = 0 といった事が上手くできませんでした。
その他の手段としてメタメソッドの変更で何とか出来そうな気もするのですが、
こんどはC++側での x.data を知る手段が分からず・・・
270:デフォルトの名無しさん
12/02/16 19:42:12.11
AngelScriptJITキター
でもVS2010持ってねぇーorz
271:デフォルトの名無しさん
12/02/17 16:23:11.90
Express でいいじゃない
コマンドライン版でよければ Windows SDK 入れるだけで入るよ>VC++
272:デフォルトの名無しさん
12/02/17 21:09:44.37
Lua 5.1.5 released
URLリンク(www.lua.org)
273:デフォルトの名無しさん
12/02/18 00:13:28.11
>>271
とりあえずExpressインストールして試してくる。
274:デフォルトの名無しさん
12/02/18 00:22:16.48
5.2 release age
275:デフォルトの名無しさん
12/02/18 01:50:14.07
>>272 見てLuaBinariesに行ったら5.1.5はまだ無かったけど
[08/Jan/2012] Lua 5.2.0 - Release 2があった
276:デフォルトの名無しさん
12/02/18 03:57:30.49
>>269
x.dataに{Type=..., Size=... ,__index=..., __newindex=...}
なメタテーブルをセットする
mt.Type, mt.Sizeがキモいなら
struct TypeInfo { int type; size_t size; };
std::map<void*, TypeInfo>
とかで管理してもいい
mtをセットするタイミングは
local _X = X
function X(...)
x=_X()
-- ここで
return x
end
C側で管理している場合は__gcも設定してmap.eraseするのを忘れずに
277:デフォルトの名無しさん
12/02/18 22:01:57.00
AngelScriptJITはMITライセンスなのか
278:デフォルトの名無しさん
12/02/19 16:48:49.38
とりあえずAngelScriptJITを試してきた。
簡単なFibonacci数の計算をスクリプトでやらせると、通常の時の半分ぐらいの時間で済んでた。
279:デフォルトの名無しさん
12/02/24 11:56:04.97
LuaってやっぱPerl/Ruby/Pythonとかと比べて
簡単にできることが激少ないんですかね?
例えば複数のファイルの名前にnekoって文字を付け足すとか
ファイルに行番号を付与するとかのちょっとしたこと
280:デフォルトの名無しさん
12/02/24 11:59:35.18
用途が異なるんだから当たり前
281:デフォルトの名無しさん
12/02/24 14:08:56.91
>>279
そんなことないと思うよ
標準ライブラリのボリューム、end }, exp stなどの違いで
Golf向きではなかったり苦手な処理もあるけど
出来ない表現ってのはないと思う
とりあえず、仕様がいまいちわからないので
簡単に出来るPerl/Ruby/Pythonという言語で
その2つの例題の解答例をさっくり書いてもらえないかな?
282:デフォルトの名無しさん
12/02/24 15:22:39.11
perl や ruby は、組み込みの正規表現記法や文字列操作用の特殊変数を持ってるので、
単純な文字列操作系の記述はシンプルになるね。そういうのを lua に求めるのは筋違い
文字列処理自体は普通に扱えるから、トリッキーな記述はできないってだけで、
Cとかで組むよりははるかに簡単やね。外部ライブラリでさわれないことはもちろんできないけど
283:デフォルトの名無しさん
12/02/24 15:45:56.73
グローバルオブジェクトみたいなオブジェクトも持って「:」で呼び出しつつ
スタティックなメンバを「.」で呼び出すみたいなのってどうやって作ればいいんだろ
284:デフォルトの名無しさん
12/02/24 16:39:49.98
スタティックなメソッドはただの関数
スタティックなフィールドはただのグローバル変数でいい
285:デフォルトの名無しさん
12/02/24 18:00:58.12
>>283
metatableのcallやindexを指定する方法もあるけど
fooモジュールなら
f = foo.new()
f:a()
foo.func(f,...)
てな呼び出しが一般的かな
luarocksやluaforgeで公開されている
メジャーどころのライブラリを真似るのが楽でいいと思う
286:279
12/02/24 19:55:53.73
>>281
すみません。どれもやったことありません。
2つの例はPerl等でやれば簡単と、
どこかの書き込みを見たことがあっただけでした
287:デフォルトの名無しさん
12/02/24 19:59:15.81
Rubyなら
files = Dir.glob("*")
一発で済むところを
f = io.popen("DIR/B", "r")
こんな風にゴニョゴニョ
さいとうたかをのマンガ「サバイバル」的な何か。
だがそれが良いw
288:デフォルトの名無しさん
12/02/24 20:14:00.86
io.popen("perl")でいい
rubyでこれをやる気にはならないが、luaならできる
289:デフォルトの名無しさん
12/02/25 09:32:39.63
luaはもともとそういうコンセプトだからね
必要機能を省いて超高速動作する
でも別に簡単処理が出来ないわけじゃない
自分で関数を作ってrequireすればいいだけ
290:デフォルトの名無しさん
12/02/25 11:21:12.14
popenを双方向にしてみた
#!/usr/bin/perl
use POSIX;
pipe($i, $o);
POSIX::dup2(fileno($i), 0);
POSIX::dup2(fileno($o), 1);
close $i;
close $o;
exec(@ARGV);
#!/usr/local/bin/lua
local f = io.popen("perl")
io.write([[print "$_\n" for (glob('*'));]], "\n__END__\n")
io.flush()
for l in f:lines() do io.stderr:write(l, "\n") end
f:close()
291:デフォルトの名無しさん
12/02/25 12:01:14.63
\ l´⌒\⌒\ \\ \
\ ヽ ) ) \\ \\
( \ \∩___∩ \\
\ \ ⌒⌒| ノ ヽ \\
\ \ / ● ● ト、\ \\\
\ Y | ( _●_) ミ\ \\\
\ / 彡、_ |∪| ノ \ \\\
(____)―ヽノ' ヽ  ̄ ̄ ヽ\\
\, j l l .l }
Lua! l (_ノノノノ
292:デフォルトの名無しさん
12/02/25 16:39:42.73
>>287
それはwinだからじゃね?
Linuxなら
luarocks install luaposixで入れて
local px = require "posix"
files = px.glob("*")
するだけなので大して変わらないよ
293:デフォルトの名無しさん
12/02/25 18:50:39.24
>自分で関数を作ってrequireすればいいだけ
まぁそれが塵も積もれば面倒臭いわけだけどな
294:デフォルトの名無しさん
12/02/25 22:49:22.73
というか Luaのユーザー層って組み込み用だから
単独でLua使おうとは思ってないでしょw
スタンドアローンならPythonやRuby使ってるだろうし、
アプリ側はC/C++でそ。
295:デフォルトの名無しさん
12/02/25 23:01:27.52
軽量Rubyってその後どうなってるんだっけ
296:デフォルトの名無しさん
12/02/25 23:06:01.12
今年の四月に公開の予定。
さて どうなんだろ。
longjump投げるようならパス。
ホスト側でC++使えないとまずいからね。
297:デフォルトの名無しさん
12/02/25 23:48:33.21
一応、公式の紹介文ではLua使いは
・開発者がC/C++等と合わせて使う
・1 SHOT KILL?のLua単体プログラミングとして使う
・ゲーム等でエンドユーザーが使う
の3種類にわかれると書いてたな。
1 Shot killがよくわからんけど。
298:デフォルトの名無しさん
12/02/26 10:11:29.92
AngelScriptJITだと!?
俺2005pro止め…面倒
299:デフォルトの名無しさん
12/02/26 14:35:11.08
>>297
マルチプラットフォームってこと
300:デフォルトの名無しさん
12/02/26 15:02:20.41
> 一応、公式の紹介文ではLua使いは
>
> ・開発者がC/C++等と合わせて使う
> ・1 SHOT KILL?のLua単体プログラミングとして使う
> ・ゲーム等でエンドユーザーが使う
>
> の3種類にわかれると書いてたな。
ソースよろ
301:デフォルトの名無しさん
12/02/26 15:29:28.03
>2 ?
302:デフォルトの名無しさん
12/02/26 15:40:17.64
これかな?
URLリンク(www.lua.org)
303:デフォルトの名無しさん
12/02/26 16:16:44.09
>>301
ONE SHOT site:URLリンク(www.lua.org)
ONE SHOT site:URLリンク(lua-users.org)
でググったけど見つからん
>>302
one-shot little programs.
を
ONE SHOT KILL little programs.
と脳内補完しちゃったってことか
304:297
12/02/26 17:24:38.09
すまんうろ覚えだったw
305:デフォルトの名無しさん
12/02/26 18:47:41.76
そういうの白ける
306:デフォルトの名無しさん
12/02/26 19:55:05.84
Lua 5.1.5 Windows SHIFTJIS版
URLリンク(mynickname.web.fc2.com)
>2012/02/26 5.1.5に対し5.1.4と同じ修正を当てた
>(このバージョンアップでは修正箇所への影響無しと判断)
307:デフォルトの名無しさん
12/02/26 20:05:48.09
SJis対応って具体的に何が対応してるんですか?
問題なんか起こった記憶がないんだけど
308:デフォルトの名無しさん
12/02/26 20:15:11.13
>>307
「表」とか文字列で使うとわかると思うよ
309:デフォルトの名無しさん
12/02/26 20:29:38.61
SHIFTJIS対応してないと、正規表現式に漢字を入れても正しく動作しない。
それどころか、Luaの場合、コメント中でも誤動作する可能性があるのねw
310:デフォルトの名無しさん
12/02/26 20:48:54.95
>>309
コメントでも誤動作するのか・・・知らなかった。
SJISって重要なんだな
311:デフォルトの名無しさん
12/02/26 20:51:55.42
というか WindowsのコンソールもUbuntuのように
UTF-8で動作すれば問題ないのにさw
312:デフォルトの名無しさん
12/02/26 21:18:43.15
そんなに重要なら問題なら本家でパッチしてもらったほうがいいと思うのですが
313:デフォルトの名無しさん
12/02/26 21:28:32.71
本家にシフトJISに対応してもらうのん?
日本語Windows使ってないとテストもできないでそ。
314:デフォルトの名無しさん
12/02/26 21:45:29.17
SJIS そのものが欠陥なのでスルーが正解。もう UTF-8 でいいっしょ
315:デフォルトの名無しさん
12/02/26 22:05:50.89
たしかにUTFがあるのにSJISを選ぶ理由ってなに?
316:デフォルトの名無しさん
12/02/26 22:19:24.38
それはWindowsのコンソールがSHIFTJISだからですよん
317:デフォルトの名無しさん
12/02/26 23:18:12.63
sjisはともかく、cp932が生まれたのはunicodeの責任もあるので、スルーは無責任だよね
318:デフォルトの名無しさん
12/02/26 23:21:13.37
WindowsはSjisベースだし、移行しようとしてるのはUnicodeという独自規格だし
UTF8の出番はないですね
319:デフォルトの名無しさん
12/02/26 23:27:49.88
またwindowsしか知らない人のsjisのしょーもない話か
320:デフォルトの名無しさん
12/02/26 23:37:58.74
ゲーム機系は、APIは全部UTF-8 になったのに、接続ツールのコンソール表示が UTF-8 対応してなくてもにょる
321:デフォルトの名無しさん
12/02/27 01:09:38.00
んと、UTF8のシェルを作って、その上でUTF8のLuaを動かしたとしてもね、
周囲のコマンドがSHIFTJISだからね、
io.popen使った時に激しく文字コード変換することになるわけさ。
変換の時にダメ文字の挙動どうするかとかめんどくさいことも
考えなくちゃいけいないw
それともCygWinみたいにごっそり環境作る? w
けっきょくSJISで運用するのがラクなのさw
322:デフォルトの名無しさん
12/02/27 01:13:04.48
ついでに、Luaって数値のデータ型に整数が無くて
演算が倍制度浮動小数点だからね、
ウニコード文字の比較とか厄介な問題がある。
とりあえず、UTF16やUCSはUTF8に変換すれば
ストリングをコンテナとして 保持することは問題ないのさぁ
323:デフォルトの名無しさん
12/02/27 19:28:31.52
関数に渡した可変引数の値をまるごと変数に代入してから
別の関数に可変引数の「...」を参照した時と同じ形で渡してやるにはどうしたらいいんだろう?
--関数定義
function hoge( x, y, ... ) --可変引数を何らかの保存領域に突っ込みたい関数
{
. --[[ 完全に文法間違ってるけど外にスコープ持ってる変数tempに可変引数の値全部渡すイメージ ]]--
. temp = ...
}
function foo( a, b, ... ) --hogeが保存した可変引数を参照して利用する関数
{
print(...)
}
--メイン
function hoge( 50, 100, "L","U","A" ) --ここで複数の文字列等の値が保存用の変数に渡される
function foo( 200, 400, temp ) --保存用に使ったものを可変長引数として置く
--[[ 欲しい出力
L U A
]]--
可変長returnみたいなのが使えればいいのかもしれないがどうにもその実装が思い当たらない
利用する可変長引数の引数の上限定めて可変長引数を配列として代入して
その配列の要素頭から10〜20位を「return arg[1],arg[2],〜…」と複数の値返すようベタ書きして
規定の上限超過するようならエラー返し上限に満たないなら余った要素のnilごと投げて返す関数で対応とか考えもしたけど
なにこの書き方馬鹿なの馬鹿なのと笑われるようなことをしている気がしてならないんだ…
324:デフォルトの名無しさん
12/02/27 19:43:07.54
> function f(...)
>> return ...
>> end
> print(f(1, 2, 3, 4))
1 2 3 4
325:デフォルトの名無しさん
12/02/27 19:47:03.35
> function f(...)
>> d = table.pack(...)
>> d[1] = d[1] + 1
>> return table.unpack(d)
>> end
> print(f(1, 2, 3, 4))
2 2 3 4
>
326:デフォルトの名無しさん
12/02/27 19:53:56.53
unpackでテーブルから可変引数に変換できるのか!
リファレンスを可変で検索しても見当がつかなかったんだ
良かった…これで見るからにどっか間違ってる書き方をしないで済んだよありがとう
327:デフォルトの名無しさん
12/02/28 04:54:00.60
あれ、LUAってもしかしてswitch無いの・・・?
328:デフォルトの名無しさん
12/02/28 05:16:18.83
continueも忘れないでね
329:デフォルトの名無しさん
12/02/28 07:41:12.07
switch風やcontinue風に書くできるけど出勤時間なのだ。
330:デフォルトの名無しさん
12/02/28 12:52:18.75
組込みスクリプトにschemeを選ばない奴は、CSの知識が欠けた2流
331:デフォルトの名無しさん
12/02/28 13:05:03.97
schemeとか継続あるせいで遅いし・・・
332:デフォルトの名無しさん
12/02/28 13:21:46.23
新しいハードなりアーキテクチャが出た際でも、schemeだとすぐに実装が出てきそう
333:デフォルトの名無しさん
12/02/28 20:00:44.95
何言ってんの、こいつ
334:デフォルトの名無しさん
12/02/28 21:09:57.95
表記が簡単=難読化だからな
明示的な書き方しない言語はどうも好きになれない
335:デフォルトの名無しさん
12/02/28 22:15:14.29
Cの悪口はそこまでだ
336:デフォルトの名無しさん
12/02/29 00:07:28.14
>>334
組込みスクリプトって、AIみたくロジックに集中するためのものだろ
c++やjavaのように長ったらしいクラス名や変数名を付ける必要ない
今日日のPHP,ruby,javascriptなどの動的言語による開発には同意
337:デフォルトの名無しさん
12/02/29 00:32:30.77
>>327
luaでswitch文っぽく書いてみる
function switch(st)
local i
for i = 1, #st, 2 do
if st[i] then return (st[i + 1])() end
end
end
function f(v)
switch {
(v == 1),
function () print(1) end,
(v == 2),
function () print(2) end,
(v == 3),
function () print(3) end,
(v == 4),
function () print(4) end,
true,
function () print "default" end,
}
end
for i = 0, 5, 1 do f(i) end
338:デフォルトの名無しさん
12/02/29 00:38:55.20
ついでに continue 文の動作は
ループ中に無名関数を置いてそこからのreturnだねん
for i = 0, 10, 1 do
(function (v)
if ((v % 2) ~= 0) then return end
print(v)
end)(i)
end
339:デフォルトの名無しさん
12/02/29 08:10:32.06
配列に無名関数入れてテーブル化できないのか
340:デフォルトの名無しさん
12/02/29 08:36:42.86
配列に無名関数入れたらテーブルでしょ
341:デフォルトの名無しさん
12/02/29 09:38:36.46
\ l´⌒\⌒\ \\ \
\ ヽ ) ) \\ \\
( \ \∩___∩ \\
\ \ ⌒⌒| ノ ヽ \\
\ \ / ● ● ト、\ \\\
\ Y | ( _●_) ミ\ \\\
\ / 彡、_ |∪| ノ \ \\\
(____)―ヽノ' ヽ  ̄ ̄ ヽ\\
\, j l l .l }
Lua! l (_ノノノノ
342:デフォルトの名無しさん
12/02/29 17:21:08.07
luabindってLuaからC++に数値型オブジェクトを渡してC++で中身を変更するのも無理だし
戻り値を複数定義することも出来無いの?
調べてもぜんぜんそれらしい情報が出てこない
343:デフォルトの名無しさん
12/02/29 22:59:06.57
なにがしたいの?
344:342
12/02/29 23:43:44.33
結局luabindだけじゃ出来ないのでluaのベース機能と混在させたら出来た
今度は別の問題で悩んでるんだけど
luaが持ってるuserdataタイプをluabindで受け取って中身をポインタにする方法が分からない
中身がポインタなのは分かってるんだけど、object_castしても失敗する
345:デフォルトの名無しさん
12/03/01 00:23:32.41
luabind::touserdata
で、なにがしたかったの?
戻り値を複数定義する
って意味不明なんだけど。
346:342
12/03/01 00:37:51.27
>>345
見つけたけどなんかうまくいかない
戻り値は例えば
ret1, ret2 = func(inp1, inp2)
みたいなlua関数をluabind経由で定義できないって話
347:デフォルトの名無しさん
12/03/01 01:15:58.61
ごめんちょっと何言ってんだかわかんない
348:デフォルトの名無しさん
12/03/01 01:39:23.31
luabindで定義すると
スタックに二つ積んでリターンすることが不可能
になると書いてるんだと思う
349:デフォルトの名無しさん
12/03/01 02:38:19.57
具体例出せない?
350:デフォルトの名無しさん
12/03/01 11:59:05.12
C++は見た目以外はCと同じなのに
もっと見せないと意味がないな
351: 忍法帖【Lv=28,xxxPT】
12/03/04 12:54:51.99
lamda
352:デフォルトの名無しさん
12/03/06 13:04:57.00
Why Lua
URLリンク(blog.datamules.com)
353:デフォルトの名無しさん
12/03/10 17:16:40.28
「Squirrelゲームプログラミング」って本がでてるけれど読んだ人いますか?
354:デフォルトの名無しさん
12/03/10 22:07:05.16
amazonで目次と中身少し見れる
ググって足りない部分はexampleとヘッダ少々見れば出てくる程度の事しか書いてない
windowsでsjisでvsのeeでdxライブラリで…溜息が出るような内容
このスレ見てたらまず要らないだろー
355:342
12/03/10 22:10:21.11
ゲーム用の組み込みスクリプトでゲームを作るって発想はどうなんだろうね
356:デフォルトの名無しさん
12/03/10 22:12:15.70
ゲーム用のものでゲームを作るのはそれはあたりまえでは?
357:デフォルトの名無しさん
12/03/10 22:47:24.33
目次を眺めて読みたくなったのは
デバッグへの備え
その他のテクニック
この2ヶ所だけ。
GoogleBooksで該当箇所を読んでみたけど
得るものはなかったっす。
358:デフォルトの名無しさん
12/03/11 08:39:37.93
効いてる効いてる効いてる 効いてる効いてる 効いてる効いてる効いてる
効いてる 効いてる
効いてる 効いてる効いてる効いてる 効いてる
効いてる 効いてる 効いてる
効いてる 効いてる 効いてる 効いてる 効いてる
効いてる 効いてる 効いてる 効いてる
効いてる 効いてる 効いてる 効いてる
効いてる効いてる効いてる 効いてる効いてる 効いてる効いてる効いてる
効いてる 効いてる
効いてる 効いてる効いてる効いてる 効いてる
効いてる 効いてる 効いてる
効いてる 効いてる 効いてる 効いてる 効いてる
効いてる 効いてる 効いてる 効いてる
効いてる 効いてる 効いてる 効いてる
359:デフォルトの名無しさん
12/03/11 12:59:32.81
>>354
それは残念です。買わないことにします…
360:デフォルトの名無しさん
12/03/11 23:32:14.60
しかしLuaはあまりにも情報が少なすぎるな
361:デフォルトの名無しさん
12/03/11 23:38:38.57
Luaはまだ日本語の情報は多いよ。
362:デフォルトの名無しさん
12/03/12 01:01:43.85
>>353
立ち読んだ感じ、初心者なら読んでみるのも悪く内容だとは思ったけどなSquirrel
の本。
スクリプトとC言語側とのデータのやり取りなんかは結構詳しく書いてあったし、リロードについても触れてるっぽいし。
テーブルやクラスのやり取りまで具体的に書いてあるのは、初心者には便利なんじゃない?
まあ、このスレに常駐してるようなベテランには不要なんだろうけどね。
それにしても、Lua以外でスクリプト本なんか出しても売れないだろうによく売る気になったな(笑
363:デフォルトの名無しさん
12/03/12 01:10:28.18
>>361
組み込みスクリプトの中ではね
perlみたいなメジャースクリプトと比べたらもう
364:デフォルトの名無しさん
12/03/12 07:43:15.96
perlをCに組み込むやつなどいないよ
365:デフォルトの名無しさん
12/03/12 21:59:15.97
Luaは、SquirrelやAngelScript、GameMonkeyとかに比べたらものすごく多い日本語資料の量だと思うけどな。
366:デフォルトの名無しさん
12/03/12 22:19:02.56
リファレンスマニュアルが日本語化されてる時点で許容範囲内だよね
367:デフォルトの名無しさん
12/03/13 23:06:55.69
luaはjavascriptに似ているから簡単だと思うか
そもそもjavascriptはjavaに似ていないから難しいと思うかの違い
368:デフォルトの名無しさん
12/03/14 05:40:35.30
Luaは色々なアプリケーションを制御する簡素なスクリプト言語として
プログラミング言語の使用者数の中でもNo1の言語になっておかしくないくらいの
コンセプトを持ってる言語のはずなんだがどこでどう間違ったんだ
369:デフォルトの名無しさん
12/03/14 05:59:38.45
368こそどこでどう間違ったんだ
何が言いたいのか伝わらんぜよ
370:368
12/03/14 06:10:00.66
つまりプログラミングにさほど興味ない人でも
様々なアプリケーションでLuaが使えるなら
TIOBEとかで20位前後をウロウロしてるような言語じゃないのに
実際にはそこまでアプリケーションでも使われていないから
Luaのコンセプトは良さそうに見えるけど文法か何かに欠陥が
あるのかな?ということです
371:デフォルトの名無しさん
12/03/14 06:53:11.70
>>370
>Luaのコンセプト
どんなイメージ?
自分の言葉で語ってみて欲しい
誤解してると思う
372:デフォルトの名無しさん
12/03/14 07:40:48.57
>>370
またおまえか
373:デフォルトの名無しさん
12/03/14 10:55:31.05
なぜか「プログラミングにさほど興味ない人」が登場するのは
母集団をいじれば統計を支配できるというコンセプトなんだよな
374:デフォルトの名無しさん
12/03/14 12:25:10.34
,,-―--、
|:::::::::::::;;;ノ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
|::::::::::( 」 < 実際にはそこまでアプリケーションでも使われていないからLuaのコンセプトは良さそうに見えるけど文法か何かに欠陥がある
ノノノ ヽ_l \______________
,,-┴―┴- 、 ∩_
/,|┌-[]─┐| \ ( ノ
/ ヽ| | バ | '、/\ / /
/ `./| | カ | |\ /
\ ヽ| lゝ | | \__/
\ |  ̄ ̄ ̄ |
⊂|______|
|l_l i l_l |
| ┬ |
375:368
12/03/14 13:34:24.86
Luaは開発者がC/C++等と組み合わせて使う目的があるのと同様に
上記のようにプログラミングにさほど興味ない人でも様々なアプリケーションで
簡単なスクリプト言語として使うという目的もあるはずなんですよね。
Lua開発者の一人のRobertoも
「Luaには、プロ以外のプログラマにとっても簡単に使えるという
目的がありました。『言語設計者たちが考えること』」
って言っていますし。
376:デフォルトの名無しさん
12/03/14 13:38:00.26
LuaってUnicode使えないんでしょ?
377:デフォルトの名無しさん
12/03/14 14:27:50.73
>>375
目的が二個あるなら言語も二個作ればいいよ
ランキングも二種類でいい
それを一つにしようとすれば、どこかで必ず間違う
378:デフォルトの名無しさん
12/03/14 14:52:12.96
>>375
そもそもスクリプトが必要なアプリが少ないところで
Lua使ってる人少ない→Luaは欠陥言語
という理論まくし立てられてもただのLuaの悪口にしか聞こえないよ。
君の理論で言うとSquirrelやAngelScript、GameMonkeyは
さらに目も当てられないほどの欠陥言語ということになる。
379:デフォルトの名無しさん
12/03/14 17:52:37.91
>>375
「プロ以外のプログラマ」とは「プログラミングにさほど興味ない人」であると
「Lua開発者の一人のRoberto」が言っているのか?
380:デフォルトの名無しさん
12/03/14 17:58:49.77
Luaはユニコード扱えないから、
Windowsのパス名の処理さえ不完全で、
ほんとスタンドアローンのファイル処理などには不向き。
ただ、そのぐらい割り切ったシステムというのは
それはそれで大きな利点なんだけど
そのわりにコミニティが過疎っているのは
世間一般の理解が足りないというべきかな。
381:デフォルトの名無しさん
12/03/14 18:10:19.75
導入しただけで色々できて便利!みたいなものじゃないからでしょ
なんらかの接続部は自分で作らないといけないから誰彼にでも勧めるものじゃないきがする
382:デフォルトの名無しさん
12/03/14 18:15:38.24
begin / end な言語は永遠にメジャー化はムリ。まじでまじで。
383:デフォルトの名無しさん
12/03/14 19:24:09.00
ビギネンド言語ディスってんのか
384:デフォルトの名無しさん
12/03/14 19:38:54.72
インデント構文よりは好きだな
>>380
> Luaはユニコード扱えないから、
utf8などは使えるよ
> Windowsのパス名の処理さえ不完全で、
どんな点だろ?
sjisの事ならパッチを当てて
パス文字列の操作ならpenlightなどを使うことで対処出来ると思う
> ほんとスタンドアローンのファイル処理などには不向き。
そりゃそうだろねぇ
385:デフォルトの名無しさん
12/03/14 19:41:47.31
>>382
まだいたのか?
386:デフォルトの名無しさん
12/03/14 19:48:43.01
>どんな点だろ?
世間では意外とシフトJISの範囲外の文字が使われてる。
「・」にもシフトJIS範囲外のやつがあったりして、
メールで送られてくる添付ファイルなどがそうだったりする。
387:デフォルトの名無しさん
12/03/14 20:39:36.96
ファイル名にSJIS範囲外の文字が使われていたらfopenで開けないってことか
対応自体はさほど難しくないけど
需要ないから誰もやらなそうだね
388:デフォルトの名無しさん
12/03/14 21:47:21.87
そもそも組み込みスクリプト言語でfopenとか使ってファイル処理する必要はあるんだろうか。
その辺はアプリ側に投げるようにした方が楽な気がするけど。
389:デフォルトの名無しさん
12/03/15 03:45:56.16
ビギネンド言語っていうのかw
390:デフォルトの名無しさん
12/03/15 04:26:38.35
>>388
exelとかにVBSのような用途でLua組み込む場合とかならLua側から
ファイル操作したい場合もあるんでないの。
391:デフォルトの名無しさん
12/03/15 04:49:40.33
ないよ
392:デフォルトの名無しさん
12/03/15 10:00:43.97
!=を~=にしたりとか、コロンとセミコロンと2種類のアクセス方法があったりとか
まったく目的も意味もわからない言語仕様盛りだくさんなんだよな
絶対他の言語と違う特徴にしようとかって理由だけでやったんだろうけど
一般化されてる!=くらいそのままでいいだろ
393:デフォルトの名無しさん
12/03/15 11:21:25.25
~=表現については同意するが、コロン、セミコロンを含めて意味不明な機能などなく、ミニマルに纏まって機能提供されていると感じるがな。
394:デフォルトの名無しさん
12/03/15 15:20:40.72
一般的には、レガシーなクラスと匿名クラスの2種類がある
これを1種類にするとJavaScriptかLuaのようになってしまう
395:デフォルトの名無しさん
12/03/15 15:43:00.49
!=も~=もおかしい。社会通念はVBの<>
396:デフォルトの名無しさん
12/03/15 15:44:52.64
==もおかしい。社会通念はPascalの=。
こんなの言い合っても意味ねー
397:デフォルトの名無しさん
12/03/15 15:47:42.77
≠ に似ている =/= にしようぜ
398:デフォルトの名無しさん
12/03/15 15:50:33.01
>>392
またおまえか
399:デフォルトの名無しさん
12/03/15 16:15:32.01
日本語ってまったく目的も意味もわからない言語仕様盛りだくさんなんだよな
400:デフォルトの名無しさん
12/03/15 16:59:37.40
AngelScriptだっけC++に似せてるやつ
401:デフォルトの名無しさん
12/03/15 21:59:25.63
>>390
例えばCSV形式のファイルを読み込む場合、アプリ側からCSVクラスをスクリプトに登録しておいて、
CSV _csv;
_csv.load("〜");
みたいな感じで、読み込みクラスのメソッドを呼び出した方が楽かなと。
402:デフォルトの名無しさん
12/03/16 06:02:39.48
> CSV _csv;
> _csv.load("〜");
構文からしてLuaではなくC++だよね?
class CSV {
public:
T load(T) {...}
};
というクラスをLuaに公開しつつ
C++側で
CSV _csv;
_csv.load("〜");
とするの?
loadの実装が気になるw
403:デフォルトの名無しさん
12/03/16 07:45:38.72
いてもたっても居られずsquirrelを作った作者の気持ちが痛いほど分かる
404:デフォルトの名無しさん
12/03/16 07:56:37.57
そう思うなら布教なりお布施なりしろよ。
このままじゃ死滅するだろ
405:デフォルトの名無しさん
12/03/16 08:06:43.56
分かるからってsquirrelがいいとも思わないからな
一番いいのは周知の既存言語の組み込み版だよな
JavaとかC#とかの基本構文を真似たものが欲しいな
406:デフォルトの名無しさん
12/03/16 09:22:57.41
プログラマ目線の組み込み型なら別にスクリプトである必要なしともなりかねないからね
ユーザ目線ならLuaがちょうどいい
407:デフォルトの名無しさん
12/03/16 12:25:36.97
DllImportは欲しいな
DllImportは基本構文の中でも最強・・・
408:デフォルトの名無しさん
12/03/16 12:50:18.34
ぐぐる先生の dart はどうなん?
409:デフォルトの名無しさん
12/03/16 21:23:45.12
>>402
文法はとりあえずC++で書いた。
なので、スクリプト側で、
CSV _csv;
_csv.load("〜");
を実行する。
410:デフォルトの名無しさん
12/03/16 21:58:20.31
>>407
LuaJITのFFIでもどうぞ
411:デフォルトの名無しさん
12/03/17 10:25:31.08
LuaJITのSJIS対応版ってあるんですか?
412:デフォルトの名無しさん
12/03/17 10:42:23.77
LuaJITだろうがsjisソースコード中の文字リテラルに対応するだけなら
lex.cに5行くらい追加で終わるでしょ
413:デフォルトの名無しさん
12/03/17 12:51:48.66
具体的に何をSJIS対応にしたいの?
414:デフォルトの名無しさん
12/03/17 13:28:30.33
いいこと思いついた
すべての半角文字をエスケープすればすべての文字が16ビットになる
415:デフォルトの名無しさん
12/03/19 21:47:34.23
>>414
プリプロセッサの出番か。
416:デフォルトの名無しさん
12/03/25 04:12:57.66
Luaの様々なバインダを見て標準でバインダ付いてるAngelScriptは偉いと思った(小学生並みの感想)
しかし今から実装しようと思うならLuaかねぇ。バインダみんな何使ってる?それとも自作とかか
tolua++の最終更新が2009でtoluaの最終更新が2012に見えるんだがググるとtolua++の情報が多いな
417:デフォルトの名無しさん
12/03/25 06:08:48.71
luabind,SWIG,バインダなしのどれかだな
toluaは中途半端で好きじゃない
418:デフォルトの名無しさん
12/03/25 09:44:33.41
慣れるとバインダなしが一番になるよ
419:デフォルトの名無しさん
12/03/25 09:58:28.60
Luaには型もないし継承もないからバインダもいらない
420:デフォルトの名無しさん
12/03/25 10:57:26.17
型を強くすると、未知の言語に対応できなくなるデメリットがある
421:デフォルトの名無しさん
12/03/25 11:03:45.62
アセンブラと同じでスタック(PUSH&POP)で何でもできる
422:デフォルトの名無しさん
12/03/25 15:46:34.44
>>420
どゆこと?
具体的な説明頼む。
423:416
12/03/25 19:00:03.00
おーバインダなしかー。仕組み知るためにもとりあえず無しでいってみるか。ありがとう。
424:デフォルトの名無しさん
12/03/25 22:39:14.34
関数定義があいまいなせいでコンパイルエラーがほとんど出ないで実行時に例外落ちする悲惨さ
425:デフォルトの名無しさん
12/03/25 22:50:34.67
>>422
例えば、未知の言語で、継承ができなくなるリスクは大きい
委譲できなくなるリスクは小さい
リスクを小さくするには、(抽象的だが)「型」を避ければいいと思う
426:デフォルトの名無しさん
12/03/26 07:11:24.11
>>425
具体例出せない?
現実的に、静的タイピングで継承有りな言語もSWIGはサポートしてるし
boostライクなテンプレートに落とし込めない理由が浮かばないんだけど。
427:デフォルトの名無しさん
12/03/27 01:18:37.69
>>426
できない人の気持ちが浮かばないということは、その人をサポートできてない
サポートは諦めて単純に自力でやる方法をすすめるのが無難
428:デフォルトの名無しさん
12/03/27 07:44:08.12
テンプレートの何がいいのかわからないな
難読化させるためにやってるのか
429:デフォルトの名無しさん
12/03/27 10:54:33.44
具体的に頼む。
禅問答じゃないんだし。
430:デフォルトの名無しさん
12/03/27 11:00:10.02
型を強くすると、未知の言語に対応できなくなるデメリットがある
俺はそう考える。
テンプレートの何がいいのかわからないな
難読化させるためにやってるのか
俺はそう考える。
431:デフォルトの名無しさん
12/03/27 12:36:06.80
コメントの類はコードをかえって難読化することもある。
コメントは具体的なコードではないので禅問答に近い。
クラスとテンプレートはコメントではないがコメントに近いので難読化することもある。
432:デフォルトの名無しさん
12/03/28 00:20:33.61
人間とウェブの未来 - Apache 2.4.1のmod_luaでApacheに介入する(mod_rewriteの終焉?) URLリンク(t.co)
433:営利利用に関するLR審議中@詳細は自治スレへ
12/04/05 13:46:26.69
スクリプト言語“Lua”の統合開発環境「Lua Development Tools」
URLリンク(www.forest.impress.co.jp)
434:営利利用に関するLR審議中@詳細は自治スレへ
12/04/06 03:26:00.93
なんでOpenOfficeでPythonマクロがあってLuaが無いんだろう
ああいうものこそLuaの真骨頂じゃないのかね
435:営利利用に関するLR審議中@詳細は自治スレへ
12/04/06 03:35:19.84
足せばいいんじゃ
436:営利利用に関するLR審議中@詳細は自治スレへ
12/04/06 07:39:38.00
pythonはコンパイル型だから早い
437:営利利用に関するLR審議中@詳細は自治スレへ
12/04/06 15:26:04.64
LuaJITに実行速度負けてるけどな
438:営利利用に関するLR審議中@詳細は自治スレへ
12/04/06 15:28:48.50
>>436
何が言いたいのかよく分からんので
ちょろっと検証してみた
-- lua code
t={1,2,3,...,100000}
# python code
t=[1,2,3,...,100000]
$ time lua l514.lua
real 0m0.049s
$ time lua l514.luac
real 0m0.022s
$ time python2.6 p26.py
real 0m0.339s
$ time python2.6 p26.pyc
real 0m0.036s
$ time python3.1 p31.py
real 0m0.371s
$ time python3.1 p31.pyc
real 0m0.047s
$ time src/luajit lj2.lua
real 0m0.019s
$ time src/luajit lj2.luac
real 0m0.008s
結論としては
pythonが速いというよりも、当社比としてpyよりpycという苦肉の策じゃないかな。
ちなみに、Luaのrequireでも
LUA_PATHやpackage.pathに*.luacを追加すれば普通に読めるよ
439:営利利用に関するLR審議中@詳細は自治スレへ
12/04/06 18:26:17.52
そんな問題じゃねー
OpenOfficeとの膨大な連携関数軍を言語サイドに公開するコストが
Physonの方が圧倒的に小さい
440:営利利用に関するLR審議中@詳細は自治スレへ
12/04/06 20:06:11.54
>>439
ちょっと理解できない
そもそもpythonのJava実装でそんなのあったっけ?
Javaは他言語含めてどれもいまいちな印象しかないのだが。
441:営利利用に関するLR審議中@詳細は自治スレへ
12/04/06 23:28:09.86
Office関連はうといのでパッと見の感想だが、Luaほどの速度は必要なくライブラリ豊富なPythonを取ったということかな
上の見る限りpycなら十分だろう
てかLibreOfficeもPython使ってるのかな。しっかり見てないが
442:営利利用に関するLR審議中@詳細は自治スレへ
12/04/07 07:57:14.44
Luaの真の力を知ればそのうち神が対応してくれるだろ
443:営利利用に関するLR審議中@詳細は自治スレへ
12/04/07 08:11:24.50
Jython
444:営利利用に関するLR審議中@詳細は自治スレへ
12/04/08 01:57:24.30
LuaよりPythonの方が記述しやすくない?
445:営利利用に関するLR審議中@詳細は自治スレへ
12/04/08 12:28:01.14
今の議論には関係ないんだけど、Pythonインタプリタのインスタンスって
1つしか持てないの?
LuaとかはCからインタプリタ内部にアクセス出来るけど、PythonはPythonで
記述できる内容をCでも記述できるという感じに見える。これも合ってる?
446:営利利用に関するLR審議中@詳細は自治スレへ
12/04/08 14:08:52.77
>>441
OOo Basic,Python,Java,JavaScript
知名度で選んだだけじゃね?
組み込みコストは似たりよったりだろうし。
447:営利利用に関するLR審議中@詳細は自治スレへ
12/04/08 14:10:47.03
>>445
だね
日本語で
448:営利利用に関するLR審議中@詳細は自治スレへ
12/04/08 14:34:51.26
>>445
前者はその通り。今の python は multi vm は配慮されてない
後者はちょと意味がとりにくいけど、Cアプリへの python インタプリタ組み込みは可能で、
C側からコードを読み込ませたり値を入れ込んだりはできる。ただ cpython はCの
コールスタックに依存する構造で、一度よんだら python 側の処理がおわるまで帰ってこない
Cのコールスタックに依存せず、途中で止めたりするような制御が必要なら、
stackless python か PyPy という実装なら、コルーチン機構があるので、
疑似的にインスタンスを複数もってるのと同じようなことができる
ゲームの類にうめこまれてるのはたいてい素の python でなくて stackless python です
449:営利利用に関するLR審議中@詳細は自治スレへ
12/04/08 20:29:03.12
>>447, 448
回答ありがとう。
後段の件は自分の中でも整理できてないな。手間を取らせて申し訳無い。
具体的な用途は決まって無くて何が出来るか調べていたので、
感覚的な話になってしまいました。Tclは使ったことがあって、
LuaはTclと似た感じで使えるけど、Pythonはどうも毛色が違うなあと
感じていました。
450:デフォルトの名無しさん
12/04/16 01:22:26.86
Luaの文法がCと違うのは混乱しないために良いのかもしれないけど
どうせならifとかforとかCの予約語とも重複しないで欲しかったな
451:デフォルトの名無しさん
12/04/16 01:47:42.83
配列が1から始まることを忘れちゃってつい0番に値を入れちゃう
動くから気づかないし
452:デフォルトの名無しさん
12/04/16 07:47:23.79
欲しいなら
作るとよいよ
オナニー言語
453:デフォルトの名無しさん
12/04/17 22:37:42.93
0番に入れるのは間違いとは限らないし
-1から始まる可能性も忘れてはいけない
local i = -1
local t = {[0] = "zeroth", "first", "second"}
local function f() i = i+1; return t[i] end
for x in f do print(x) end
454:デフォルトの名無しさん
12/04/18 18:18:02.76
ぅあTシャツ
URLリンク(www.fibers.com)
455:デフォルトの名無しさん
12/04/18 22:43:48.98
冗談かと思ったらあるのかよw
しかも種類が多いな
456:デフォルトの名無しさん
12/04/19 18:52:30.20
これの収益がメンテナーに還元されるんだっけ?
457:デフォルトの名無しさん
12/04/20 00:41:59.02
>>454
欲しいけど、英語がわからないのと申し込む方法がわからないんだけど
458:デフォルトの名無しさん
12/04/20 00:57:10.25
just choose then buy then checkout then confirm then wait then wear
459:デフォルトの名無しさん
12/04/20 08:16:19.57
if/forの代替になるキーワードって何があるのさ
俺は全く思いつかん
こいつらはCの予約語どうのって以前に殆どの言語で共通のキーワードなんだから
変えたら混乱以前に誰も使う気しなくなるだろ
460:デフォルトの名無しさん
12/04/20 08:36:24.47
英語が分からんから記号的にしか捉えられないのだろう。
すなわち if 〜 then でなく if () { のがいいというC脳の発想。そこにユーザーへの愛はない。
461:デフォルトの名無しさん
12/04/20 23:56:05.31
Windowsアプリにtolua++を使ってLuaを組み込んで、スクリプト動作をさせようと目論んでいます。
コンソールアプリに組み込む事は成功したのですが、ダイアログアプリからスクリプトを呼び出し、
スクリプトからCの関数を呼び出すところで上手くいかずに悩んでいます。
処理としては単純に指定の文字列のメッセージボックスを表示させるもので、
void MessageBox(LPCTSTR lpszMessage){
::MessageBox(NULL, lpszMessage, NULL, 0);
}
こういう関数を用意してLua側から呼び出す、というものです。
グルーコードの作成、ビルド等は上手くいくのですが、「MessageBox("あいうえお")」のように
スクリプトを書いたところ、
error : test.lua:5: error in function 'MessageBox'.
argument #1 is 'string'; 'LPCTSTR' expected.
と言うエラーがデバッグウインドウに表示されると言う状態になっています。
「LPCTSTR」を「char *」におきかえて、関数内でUNICODE変換すると上手くいくのは分かったのですが、
このやり方が正しいのか自信がありません。
このような状態について、どのように対処すればよいのでしょうか?
462:デフォルトの名無しさん
12/04/21 01:27:33.69
>>460
英語でif〜thenなんて文法は存在しない
463:デフォルトの名無しさん
12/04/21 08:53:28.79
>>462
そんなこと誰も問題にしてないぞ。どうした?
464:デフォルトの名無しさん
12/04/21 09:07:45.32
>>461
他のOSに移植すると自信を持てる
けどMessageBoxを直接呼び出すようなグルーコードは使わない。
巨大なフレームワークと直結するようなグルーコードを使うと自信がなくなる。
465:デフォルトの名無しさん
12/04/21 10:34:22.31
>>462
FORTRANの創始者ジョン・バッカスをバカにしてんのか?
466:デフォルトの名無しさん
12/04/21 10:42:31.67
if と then はそれぞれ独立して使うもので同時に使うことは英語の文法上ないんだよ
if 〜 then なんて用法はプログラム的文法にすぎない
日本語に例えてみると
「もし」「じゃあ」みたいなもんだ
「もし」フラグが立ったら「じゃあ」実行しよう
ほらおかしいだろ?
467:デフォルトの名無しさん
12/04/21 11:51:40.64
>>466
If you want a friend then get out of here
468:デフォルトの名無しさん
12/04/21 12:06:23.90
「If you don't think you can do it, then you can't.」とか普通にあるな。
469:デフォルトの名無しさん
12/04/21 13:54:06.23
>>466
英語わかんないのに何でこんなに自信たっぷりなの?
470:デフォルトの名無しさん
12/04/21 13:59:33.76
>>467
ないない
通じない
>>468
ないない
通じない
受験英語覚えて英語覚えた気になってる馬鹿だな
471:デフォルトの名無しさん
12/04/21 15:05:32.33
英語の文法で正しいかどうかなんて関係ない
他のプログラミング言語で事実if 〜 then ... という文法が
広く採用されているってのがポイント
分岐はプログラムの論理構造の根幹なんだから
そこにオリジナリティを持つだけ無駄だろ
お前が英語に詳しいのはわかったから
それを正しい方向へ生かす努力をしろ
472:デフォルトの名無しさん
12/04/21 16:06:21.59
>>466
どこがおかしいかまったくわからんのだが。
曲解して無理やりおかしくしてるだけでは。
「それぞれ独立して使うもの」ではあるが「同時に使ってはならないもの」ではないのだろう?
そもそも「Luaは英語文法に沿って設計されてます」なんて誰も言ってないぜ?
仮に文法どおりの究極的な言語できたとしても遅くて実用に耐えないだろうよ
473:デフォルトの名無しさん
12/04/21 16:21:32.31
then よりもまず for が英語的には意味不明だな
もともとは while / until / repeat などのキーワードを含む、ALGOL の繰り返し文の
パラメータ指定用のキーワードだったんだけど、後の言語では繰り返しを意味する
単語は姿を消して for だけが回数指定繰り返しのキーワードとして残り、
最終的には foreach というさらに謎の単語が派生して今に至る
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4952日前に更新/120 KB
担当:undef