【Lua】組み込み系言語総合【Squirrel】 at TECH
[2ch|▼Menu]
966:デフォルトの名無しさん
09/05/21 13:39:45
Luaのコメントが//か#だったら最高だったんだが...
-- だと構文ハイライトされないエディタで見たときにコードに埋もれてよく見えん。

967:デフォルトの名無しさん
09/05/21 14:21:38
そういう人は squirrel にうつると精神衛生的には楽になるよ!

968:デフォルトの名無しさん
09/05/21 15:29:42
Luaの向上心のなさは最低レベルだから
宗教論争の火種になりそうな「改良」は、いくら提案してもむだだと思う。

969:デフォルトの名無しさん
09/05/21 22:07:43
-- は伝統的な構文だからもっと賢いエディタを使えばよろし

970:デフォルトの名無しさん
09/05/21 23:01:14
>>968
向上心のなさ、というか後方互換性が最大限に考慮されている気がする。
だから、商用プロダクトにも安心して採用できるんだろうけど。

最近、web周りでRubyとかRailsとかも使っているんだが
バージョン上がると全然違う挙動とか、書き方換わったりするのがザラだったりするんだが、これが結構キツイ
書籍が出ても、すぐ陳腐化しちゃったり…書籍の日本語訳が出たころには、次のかなり変わったバージョンがなんて
(Ruby 1.8はいいんだけど、Railsは本当にヒドイw
しかも次期バージョンで他のフレームワークと統合されるのが決定しててちょオマ…)

971:デフォルトの名無しさん
09/05/21 23:49:52
//でコメントか。
AngelScriptの出番だな!

972:デフォルトの名無しさん
09/05/21 23:57:55
いやさ、エディタにあわせてライブラリ諸々変更なんて
誰も本気で言わないから

973:デフォルトの名無しさん
09/05/22 00:29:20
つーかそんな程度もカスタマイズできないエディタを持っていることと
そんな程度も我慢できない根性でLuaを選んだ自分の浅はかさを呪うがいい

974:デフォルトの名無しさん
09/05/22 09:56:26
我慢しないで、カスタマイズができる「普通の」テキストエディタを使ってください

975:デフォルトの名無しさん
09/05/22 12:52:22
自分は普通にエディタ使うけど、客が使ってくれるとは限らないじゃない。
メモ帳で開けないから、設定ファイルの拡張子は xml じゃなくて txt にしてくれと言われたのに。

976:デフォルトの名無しさん
09/05/22 12:58:22
メモ帳で開くような設定ファイルを XML にする時点で仕様バグといってもいい。まじで。

977:デフォルトの名無しさん
09/05/22 13:02:46
それは拡張子xmlをメモ帳に関連付けるだけで良かったんじゃないか

978:デフォルトの名無しさん
09/05/22 13:33:11
細かく設定したいから、可能な限り設定項目多くしてくれといわれたので、
ini形式よりもxmlのほうが楽だったんだよね。

メモ帳に関連付けるだけで終わりだし、そもそもxmlエディタいれればそれで終わりなのに。

979:デフォルトの名無しさん
09/05/22 14:35:22
xmlなんかは1行目に文字コードセットが定義されているから、
下手にメモ帳で開いて保存すると、文字コード変わっちゃうしメンドクサイことになりますよね
あと、xmlはMSからエディタ出てるけど微妙に使いづらいのが難点

個人的に、スクリプト言語で使うオススメの設定フォーマットはJSONだと思う

980:デフォルトの名無しさん
09/05/22 14:37:08
素人さんにさわらせる場合は CSV 以上のものは使っちゃダメだってのが経験則

981:デフォルトの名無しさん
09/05/22 14:41:20
>>980
同感ですな
xmlは素人には無理
フォーマット決めうちなtxtか、ini程度でokな気がする

982:デフォルトの名無しさん
09/05/22 16:29:30
質問。
C からlua の関数を呼ぶ -> 呼ばれた関数は、lua 内の別の関数 A そのものを返す -> C 側でそれを保持して、必要なときに A を呼びだす

てことをやりたいんだけど、どうすればいいですか?
lua の関数オブジェクトやみたいなのをスタックから取得する関数が見当たらないのですが。

lua_getglobal(L, "getfunc");
lua_call(L, 0, 1);
myfunc = スタック[-1]からlua関数を取得

... しばらくたってから ...

myfunc をスタックにpush
lua_call(...)

ということがやりたいです。



983:デフォルトの名無しさん
09/05/22 17:09:08
>>982
Lua はオブジェクトを直接C側で参照する機構を持たない。よって単純には出来ない。

一般的には luaL_ref を使ってオブジェクトのリファレンス(絶対重ならないint値)をとって、
それをつかってレジストリテーブルにつっこんでおいて、必要になったらそのリファレンスを
つかってレジストリテーブルから引っ張り出してくる、という手法がとられる。

そんなややこしいのはいやじゃって人は、リファレンスを C側で保持できる squirrel オススメ

984:デフォルトの名無しさん
09/05/22 17:58:18
いまのプロジェクトにはC縛りがあるのでC++なsqurrelはダメなんです。
luaL_ref が一番素直そうなのでそれでやってみます。どうもありがとう。

985:デフォルトの名無しさん
09/05/23 00:58:12
SquirrelってC++だっけ?
bindは確かにC++だが、直叩きだったらCの範疇でいけたような・・・

986:デフォルトの名無しさん
09/05/23 01:07:48
squirrel のソース自体は c++ だよ。
class でなくて struct なのは趣味かね。

ただ、インターフェース的には全部C合わせなので、普通にリンクして使える。
例外とかも全く使ってないから問題になるところはどこにもない。
プロジェクトが C縛りってのがいまどきだと意味不明だねぇ


最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4805日前に更新/241 KB
担当:undef