【Lua】組み込み系言語総合【Squirrel】
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2008/03/11(火) 13:02:21使われるプログラミング言語についてのスレッドです
まとめwiki(なにか質問する前に必ずみること!)
http://wikiwiki.jp/lua/
その他の参考URLは>2から
■過去スレ
その3 http://pc11.2ch.net/test/read.cgi/tech/1160799232/ (前スレ)
その2 http://pc8.2ch.net/test/read.cgi/tech/1063711237/
その1 http://pc5.2ch.net/tech/kako/1034/10341/1034182349.html
0951デフォルトの名無しさん
2009/05/06(水) 23:46:11ちゃんと計算されてる。アングルとか
0952デフォルトの名無しさん
2009/05/07(木) 00:47:420953デフォルトの名無しさん
2009/05/07(木) 01:49:18そうなん?みてみたいからポインタよろ
0954デフォルトの名無しさん
2009/05/07(木) 02:11:32事件は2ちゃんねるで起こってるんじゃない。公式フォーラムで起こってるんだ!
0955デフォルトの名無しさん
2009/05/07(木) 03:14:51これか。コードが整理されてて sqplus よりはるかにわかりやすいですな
getter/setter の実装がちょっとトリッキーなのが要注意なかんじ。
0956デフォルトの名無しさん
2009/05/07(木) 03:17:58すぐ下にもう一つあった^^; なるほどぽろぽろだな
0957デフォルトの名無しさん
2009/05/09(土) 23:57:590958デフォルトの名無しさん
2009/05/10(日) 09:14:24∩_
〈〈〈 ヽ
〈⊃ }
∩___∩ | |
| ノ ヽ ! !
/ ● ● | /
| ( _●_) ミ/ Lua!!
彡、 |∪| /
/ __ ヽノ /
(___)
0959デフォルトの名無しさん
2009/05/20(水) 12:32:10strtoul(lua_tostring(L, -1), NULL, 0) みたいにするしかないの?
0960デフォルトの名無しさん
2009/05/20(水) 12:36:110961デフォルトの名無しさん
2009/05/20(水) 17:20:34スクリプト上のプログラミングならunsigned整数など考えないで済むコードを書いた方が楽だぞ。
0962デフォルトの名無しさん
2009/05/20(水) 21:01:47"0xAARRGGBB" の形式で書いてあるから lua_tointeger だと読めないんだよね
そうか lua_tonumber は double だから 32ビット符号なしでもちゃんと変換できるのかな?
試してみます
0963962
2009/05/20(水) 21:34:170964デフォルトの名無しさん
2009/05/21(木) 07:26:38/ / パカッ
//⌒)∩__∩
/.| .| ノ ヽ
/ | | ● ● |
/ | 彡 ( _●_) ミ Lua!!
/ | ヽ |∪| /_
// │ ヽノ \/
" ̄ ̄ ̄ ̄ ̄ ̄ ̄(..ノ
0965デフォルトの名無しさん
2009/05/21(木) 07:42:45/ / パカッ
//⌒)∩__∩
/.| .| ノ ヽ
/ | | ● ● |
/ | 彡 ( _●_) ミ Luaまピョーん☆
/ | ヽ |∪| /_
// │ ヽノ \/
" ̄ ̄ ̄ ̄ ̄ ̄ ̄(..ノ
0966デフォルトの名無しさん
2009/05/21(木) 13:39:45-- だと構文ハイライトされないエディタで見たときにコードに埋もれてよく見えん。
0967デフォルトの名無しさん
2009/05/21(木) 14:21:380968デフォルトの名無しさん
2009/05/21(木) 15:29:42宗教論争の火種になりそうな「改良」は、いくら提案してもむだだと思う。
0969デフォルトの名無しさん
2009/05/21(木) 22:07:430970デフォルトの名無しさん
2009/05/21(木) 23:01:14向上心のなさ、というか後方互換性が最大限に考慮されている気がする。
だから、商用プロダクトにも安心して採用できるんだろうけど。
最近、web周りでRubyとかRailsとかも使っているんだが
バージョン上がると全然違う挙動とか、書き方換わったりするのがザラだったりするんだが、これが結構キツイ
書籍が出ても、すぐ陳腐化しちゃったり…書籍の日本語訳が出たころには、次のかなり変わったバージョンがなんて
(Ruby 1.8はいいんだけど、Railsは本当にヒドイw
しかも次期バージョンで他のフレームワークと統合されるのが決定しててちょオマ…)
0971デフォルトの名無しさん
2009/05/21(木) 23:49:52AngelScriptの出番だな!
0972デフォルトの名無しさん
2009/05/21(木) 23:57:55誰も本気で言わないから
0973デフォルトの名無しさん
2009/05/22(金) 00:29:20そんな程度も我慢できない根性でLuaを選んだ自分の浅はかさを呪うがいい
0974デフォルトの名無しさん
2009/05/22(金) 09:56:260975デフォルトの名無しさん
2009/05/22(金) 12:52:22メモ帳で開けないから、設定ファイルの拡張子は xml じゃなくて txt にしてくれと言われたのに。
0976デフォルトの名無しさん
2009/05/22(金) 12:58:220977デフォルトの名無しさん
2009/05/22(金) 13:02:460978デフォルトの名無しさん
2009/05/22(金) 13:33:11ini形式よりもxmlのほうが楽だったんだよね。
メモ帳に関連付けるだけで終わりだし、そもそもxmlエディタいれればそれで終わりなのに。
0979デフォルトの名無しさん
2009/05/22(金) 14:35:22下手にメモ帳で開いて保存すると、文字コード変わっちゃうしメンドクサイことになりますよね
あと、xmlはMSからエディタ出てるけど微妙に使いづらいのが難点
個人的に、スクリプト言語で使うオススメの設定フォーマットはJSONだと思う
0980デフォルトの名無しさん
2009/05/22(金) 14:37:080981デフォルトの名無しさん
2009/05/22(金) 14:41:20同感ですな
xmlは素人には無理
フォーマット決めうちなtxtか、ini程度でokな気がする
0982デフォルトの名無しさん
2009/05/22(金) 16:29:30C からlua の関数を呼ぶ -> 呼ばれた関数は、lua 内の別の関数 A そのものを返す -> C 側でそれを保持して、必要なときに A を呼びだす
てことをやりたいんだけど、どうすればいいですか?
lua の関数オブジェクトやみたいなのをスタックから取得する関数が見当たらないのですが。
lua_getglobal(L, "getfunc");
lua_call(L, 0, 1);
myfunc = スタック[-1]からlua関数を取得
... しばらくたってから ...
myfunc をスタックにpush
lua_call(...)
ということがやりたいです。
0983デフォルトの名無しさん
2009/05/22(金) 17:09:08Lua はオブジェクトを直接C側で参照する機構を持たない。よって単純には出来ない。
一般的には luaL_ref を使ってオブジェクトのリファレンス(絶対重ならないint値)をとって、
それをつかってレジストリテーブルにつっこんでおいて、必要になったらそのリファレンスを
つかってレジストリテーブルから引っ張り出してくる、という手法がとられる。
そんなややこしいのはいやじゃって人は、リファレンスを C側で保持できる squirrel オススメ
0984デフォルトの名無しさん
2009/05/22(金) 17:58:18luaL_ref が一番素直そうなのでそれでやってみます。どうもありがとう。
0985デフォルトの名無しさん
2009/05/23(土) 00:58:12bindは確かにC++だが、直叩きだったらCの範疇でいけたような・・・
0986デフォルトの名無しさん
2009/05/23(土) 01:07:48class でなくて struct なのは趣味かね。
ただ、インターフェース的には全部C合わせなので、普通にリンクして使える。
例外とかも全く使ってないから問題になるところはどこにもない。
プロジェクトが C縛りってのがいまどきだと意味不明だねぇ
0987デフォルトの名無しさん
2009/05/23(土) 08:11:35( ・∀・) < Lua!!
⊂/ 9) \____
q( /
> >
0988デフォルトの名無しさん
2009/05/23(土) 09:07:00// スタック初期化
lua_settop(L, 0)
// A::Bをpush
lua_getglobal(L, "A")
lua_pushstring(L, "B")
lua_gettable(L, -2)
// 暗黙の引数selfをpush
lua_getglobal(L, "A")
//引数Cをpush
lua_getglobal(L, "C")
//実行
lua_call(L, 2, 2)
//luaで return d, e された戻り値を受け取る
D = lua_tointeger(L, 1)
E = lua_tointeger(L, 2)
てやると、D,Eにluaで返した値が入らないんだけど、どうしてですか???
0989デフォルトの名無しさん
2009/05/23(土) 09:35:28lua_gettable(L, -2) の後に lua_remove(L,-2) を入れるか、
その後の lua_getglobal(L, "A") を消せばいいと思うよ
0990デフォルトの名無しさん
2009/05/23(土) 11:43:430991デフォルトの名無しさん
2009/05/23(土) 22:44:35C++がぜんぜんわからないってのがいまだに上にいたりするからな…
自分がそういう上司に当たって死にかけてからもうずいぶんになるが、
いまだにそういう人はちょくちょく見かける。
0992デフォルトの名無しさん
2009/05/23(土) 22:52:55てかつかえません
サーセン
0993デフォルトの名無しさん
2009/05/24(日) 03:45:08Cオンリーなら、
// 一行コメント
も使っちゃダメなんだろうな、大変だな。
0994デフォルトの名無しさん
2009/05/24(日) 04:28:060995デフォルトの名無しさん
2009/05/24(日) 04:37:280996デフォルトの名無しさん
2009/05/24(日) 05:00:50//は使えるけど
0997デフォルトの名無しさん
2009/05/24(日) 11:00:210998デフォルトの名無しさん
2009/05/24(日) 11:29:17テンプレに、大きな変更ないよね?
0999デフォルトの名無しさん
2009/05/24(日) 21:29:001000デフォルトの名無しさん
2009/05/24(日) 21:29:5310011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。