- 1 名前:デフォルトの名無しさん mailto:sage [2013/03/10(日) 15:10:32.28 .net]
- LuaやSquirrelやAngelScriptなどアプリケーションへの組み込み用途で
使われるプログラミング言語についてのスレッドです まとめwiki(なにか質問する前に必ずみること!) wikiwiki.jp/lua/ その他の参考URLは>2から ■前スレ 【Lua】組み込み系言語総合 その5【Squirrel】 toro.2ch.net/test/read.cgi/tech/1321063450/ ■過去スレ その4 hibari.2ch.net/test/read.cgi/tech/1301414458/ その3 hibari.2ch.net/test/read.cgi/tech/1272643397/ その2 pc12.2ch.net/test/read.cgi/tech/1243210301/ その1 pc12.2ch.net/test/read.cgi/tech/1205208141/ プログラミング言語 Lua その3 pc11.2ch.net/test/read.cgi/tech/1160799232/
- 567 名前:デフォルトの名無しさん mailto:sage [2014/10/24(金) 22:05:25.23 ID:LtvHolRf.net]
- Lua 5.3.0 (beta) released
- 568 名前:デフォルトの名無しさん mailto:sage [2014/10/31(金) 08:02:57.83 ID:b+WwLJWx.net]
- The big features for Lua 5.3 are:
- Basic UTF-8 library - Bitwise operators - Integers
- 569 名前:デフォルトの名無しさん mailto:sage [2014/10/31(金) 21:03:36.77 ID:tMdLNX3k.net]
- 正規表現マッチャとか手が入ってない
5.2以降からすでに文字列にバイナリデータが入るからUTF8を保持できる stringのソース斜め読みした感じだとあんまし変化ない Windows版とかにするにはかなり手を入れないといけないね
- 570 名前:デフォルトの名無しさん mailto:sage [2014/11/02(日) 22:58:25.53 ID:uPMt2D9i.net]
- >>563
手が入ったのはutf8モジュール。 例えば string.len() はバイト数だが、utf8.len() は文字数になる。 「Windows版」がutf16を指すなら、適当にエンコード変換して、別の文字列かuserdataで保持するのは簡単。 もし、内部のcharをwchar_tに変更する改造する意味なら、確かに手間がかかる。
- 571 名前:デフォルトの名無しさん mailto:sage [2014/11/02(日) 23:54:52.14 ID:TF4Q/5Ab.net]
- _TCHAR「きたわよ」
- 572 名前:デフォルトの名無しさん mailto:sage [2014/11/03(月) 00:57:50.97 ID:ZMCFj896.net]
- windowsのwchar_tは2byte固定じゃなかった?
という曖昧な前提で申し訳ないけど 1文字==1文字型の表現できず可変長になるから 結局sjis,utf8を扱うのと同じでメリットないんだよね A/Wだけでなく8/DなどAPIレベルで対応しないとどうにもならないんじゃないかな 間違えてたらすまん
- 573 名前:デフォルトの名無しさん mailto:sage [2014/11/03(月) 02:05:27.09 ID:7uHWyuXV.net]
- んんと、UTF-8からUTF-16の変換のコストは低く、
変換結果をGCの管理情報と関連付けてキャッシュすれば 最小限の回数になるので問題はない。 sourceforge.jp/projects/lua-naka/ あとはutf8というクラスやfile関係検討して どの程度の手間が掛かるか検討だね beta外れるまで待ったほうがいいかどうかとね。
- 574 名前:デフォルトの名無しさん mailto:sage [2014/11/03(月) 03:29:16.31 ID:ZMCFj896.net]
- 話が通じてないな
- 575 名前:デフォルトの名無しさん mailto:sage [2014/11/03(月) 08:35:18.03 ID:7uHWyuXV.net]
- >>568
XP以降のWindowsのUNICODEは16bitの可変長。 1文字==1文字になってしまうのはそのライブラリが対応できてないだけ。 対応できてなければ、たとえばフォントの名前が文字化けするとか 変なところで不具合が発生する。 ダウンロードしたファイルの中身にどんな言語が使われているか 予想できない時代だしねえ。
- 576 名前:デフォルトの名無しさん mailto:sage [2014/11/03(月) 09:03:59.77 ID:gXKeHKY3.net]
- きっちりUTF-16に対応したところで、BMP以外はろくにフォントも用意されてないから
あんまり使いどころがないんだよなぁ。
- 577 名前:デフォルトの名無しさん mailto:sage [2014/11/03(月) 09:44:26.28 ID:TIQQD+z7.net]
- SquirrelならコンパイルオプションだけでWCHARに対応できるぞ!
WCHARだからマルチバイト文字だし、ダウンロードしたファイルの中身はどうしようもないのは同じだけどな!
- 578 名前:デフォルトの名無しさん mailto:sage [2014/11/03(月) 11:48:44.03 ID:T6nh4Wfv.net]
- ゲーム程度なら昔の流儀でmblen とか作って
マルチバイトのまま処理するのでだいたい事足りるけど、 絵文字ニーズがでてきてしまって困ってる サロゲートペアとかをシンプルに処理できる手頃で小さめなライブラリどっかにないかな
- 579 名前:デフォルトの名無しさん mailto:sage [2014/11/04(火) 09:05:41.39 ID:bzlUuRTb.net]
- >>572
サロゲートペアってUTF-8なら、単なる「バイト数が多いマルチバイト1文字」じゃなかった? UTF-8を適切に扱えるライブラリを探せば良いのでは? UTF-16ベースで、1文字=1wcharで処理するものはダメだね。
- 580 名前:デフォルトの名無しさん mailto:sage [2014/11/04(火) 09:14:34.96 ID:lCpWe+1k.net]
- 基本内部処理はUTF-8オンリーでやって、
WINAPIまたはWINDOWSアプリに渡す場合だけ変換するってのが無難だろう。
- 581 名前:デフォルトの名無しさん mailto:sage [2014/11/04(火) 12:26:39.85 ID:JSkttuhx.net]
- >>573
それが正式な仕様なんだけど、 世の中にはUTF16をべたにUTF8展開しただけ、 というファイルがあふれてて、UTF-8的に二文字になってることのが多くていかんともしがたいのん
- 582 名前:デフォルトの名無しさん mailto:sage [2014/11/04(火) 13:23:26.98 ID:99dxtSJ/.net]
- というかそれはUTF-8とは言わないことになっとるw
- 583 名前:デフォルトの名無しさん mailto:sage [2014/11/04(火) 16:39:35.13 ID:8lAd+EdW.net]
- そういうことになってるけど、実際使われてるのはそうだよね。たぶんだいたいJavaが悪い
- 584 名前:デフォルトの名無しさん mailto:sage [2014/11/04(火) 18:02:59.37 ID:OadM+d9h.net]
- で、Luaで何がしたいの?
- 585 名前:デフォルトの名無しさん mailto:sage [2014/11/04(火) 18:40:40.27 ID:lCpWe+1k.net]
- 内部文字コードをUCS2にしてしまえば、
Windowsのwstringと互換だからホストから見て扱いやすいという判断でないの? Windows用のC++のランタイムがサロゲート対応できてないわけだし。 それはそれとして 自分的にはUTF16とUTF8の変換はコストが低いと考えている。 なんでかというと、マルチバイトのアプリケーションが末尾AのAPIを呼んだ時に カーネル側での変換の対象になっていると考えるし、 それでいて今まで問題になっていないから。
- 586 名前:デフォルトの名無しさん mailto:sage [2014/11/05(水) 07:35:22.74 ID:9E/cXL42.net]
- マルチプラットフォームならUTF8やろね。
Windows氏ね
- 587 名前:デフォルトの名無しさん mailto:sage [2014/11/05(水) 14:55:13.19 ID:C/jbA3HR.net]
- Windows、UTF8がデフォの文字コードになればかなり楽になりそうだな。
- 588 名前:デフォルトの名無しさん mailto:sage [2014/11/05(水) 17:30:58.35 ID:5alChkxa.net]
- コンソールに関してはUTF8化も不可能ではないらしい。
ただ、既存のコマンドとかの整合性が問題。
- 589 名前:デフォルトの名無しさん mailto:sage [2014/11/05(水) 17:32:35.49 ID:9E/cXL42.net]
- 「楽さ」ではなく気になるのは「速さ」では?
Windows氏ね
- 590 名前:デフォルトの名無しさん mailto:sage [2014/11/05(水) 21:07:16.47 ID:pM6wUNVX.net]
- >>580
特定のプラットフォームに「氏ね」言う奴がマルチプラットフォーム語るか。
- 591 名前:デフォルトの名無しさん mailto:sage [2014/11/05(水) 21:42:16.61 ID:5alChkxa.net]
- WindowsユーザーはWindowsが好きで使っているわけではない。
Macユーザーは宗教で使っている。 Linux/bsdユーザーはソースコードを蹂躙するために使っている。
- 592 名前:デフォルトの名無しさん mailto:sage [2014/11/05(水) 23:18:38.50 ID:hGDSCPPH.net]
- サロゲートペアなんかよりUnicode正規化の方が
よっぽど実際的な問題だと思うんだが
- 593 名前:デフォルトの名無しさん mailto:sage [2014/11/05(水) 23:28:46.45 ID:5iseFbl1.net]
- 濁点を分割するOSXは死んでほしいよね
- 594 名前:デフォルトの名無しさん mailto:sage [2014/11/06(木) 11:07:16.22 ID:ElrQPnL2.net]
- 辞書順の文字列比較さえできないlocaleの実装がクソなLinuxは死んで欲しいよね
- 595 名前:デフォルトの名無しさん mailto:sage [2014/11/06(木) 11:37:03.69 ID:5j6hC+wL.net]
- サロゲートなんとか「シフトなんとかがやられたようだな・・・」
- 596 名前:デフォルトの名無しさん mailto:sage [2014/11/06(木) 12:48:03.08 ID:QHCs9rG1.net]
- マルチプラットフォーム目指すと全ての環境に死ねって思うようになる悲劇
- 597 名前:デフォルトの名無しさん mailto:sage [2014/11/06(木) 16:09:06.32 ID:M2Yo7uIT.net]
- つまり日本語が敗戦とともに氏ねばよかったんだよ
- 598 名前:デフォルトの名無しさん mailto:sage [2014/11/06(木) 16:14:45.84 ID:pZw/zM7a.net]
- 志賀直哉かよ
- 599 名前:デフォルトの名無しさん mailto:sage [2014/11/06(木) 22:56:57.44 ID:Lo7NS+Dz.net]
- UTF8対応はリテラルと基本操作だけ。
ここらへんは5.4とかからかなあ。 そうするとC++でコンパイルしつつ外付けで boost_regex.matchというような関数を用意しろって感じかなあ。 ↓これだもんね。 static int singlematch (MatchState *ms, const char *s, const char *p, const char *ep) { if (s >= ms->src_end) return 0; else { int c = uchar(*s); switch (*p) { case '.': return 1; /* matches any char */ case L_ESC: return match_class(c, uchar(*(p+1))); case '[': return matchbracketclass(c, p, ep-1); default: return (uchar(*p) == c); } } }
- 600 名前:デフォルトの名無しさん mailto:sage [2014/11/07(金) 07:19:30.78 ID:m1y+Jxyj.net]
- >>593
UTF-8だからこそsinglematchでもなんとか実用になるんじゃないかな? utf8.charpattern も一応は用意はされているし。 もちろん、string.reverseとか使えないのもあるけど。
- 601 名前:デフォルトの名無しさん mailto:sage [2014/11/07(金) 08:11:23.32 ID:TOsxLUmk.net]
- 欧米の2chでは、濁点だの絵文字だの
日本人は余計なことばかりしやがるよな、とかいわれてんだろうな
- 602 名前:デフォルトの名無しさん mailto:sage [2014/11/07(金) 12:46:24.98 ID:s2pGHogx.net]
- 濁点で余計なことしたのは外人やで
- 603 名前:デフォルトの名無しさん mailto:sage [2014/11/08(土) 17:07:11.07 ID:OPiyaoeS.net]
- 余計なことをする原因は八方美人
- 604 名前:デフォルトの名無しさん mailto:sage [2014/11/12(水) 00:46:15.46 ID:0RjVbG4l.net]
- autotouchで画像を探してタップさせたいのですが、上にあるfindImageを使ってもうまくいかないです。
他に画像を探す方法はないでしょうか?
- 605 名前:デフォルトの名無しさん mailto:sage [2014/12/10(水) 00:35:14.86 ID:If47AJ4g.net]
- LuaとかSquirrel、AngelScriptが使える環境で、boost使えない環境ってあるのかな?
- 606 名前:デフォルトの名無しさん mailto:sage [2014/12/10(水) 09:29:30.82 ID:5IiOJn2a.net]
- ソフトウェア環境の問題で使えないケースは少ないだろうが
開発チームのルールの面で使わせないケースはありそうだ
- 607 名前:デフォルトの名無しさん mailto:sage [2014/12/11(木) 12:44:17.85 ID:vUqbLqkU.net]
- >>600
boostが使えない環境じゃなくて、色々な都合でboost使っちゃダメな環境があるわけか…
- 608 名前:デフォルトの名無しさん mailto:sage [2014/12/15(月) 08:18:50.09 ID:njR4rCHR.net]
- Lua 5.3.0 (rc0) released
- 609 名前:デフォルトの名無しさん [2014/12/19(金) 02:51:01.25 ID:ouKpIS27.net]
- moonsharpというluaを入れてみたんですが、
c#のnamespaceやstaticなクラスをバインドするにはどうすればいいのでしょうか? 関数であれば以下のように登録できたのですが、 lua.Globals["Log"] = (Action<string>)UnityEngine.Debug.Log; UnityEngineのようなnamespaceを渡し、 script内で UnityEngine.GameObject.Find("obj") みたいに使いたいのですが
- 610 名前:デフォルトの名無しさん mailto:sage [2014/12/22(月) 00:19:17.53 ID:ZmRaQmm9.net]
- >>603
ざっと眺めてみたけど その程度の事は同じように出来る ただ foo() foo(int) foo(string) などのオーバーロードはどうするのかが疑問 動的に型チェックして振り分けてとかだと正直使い物にならないと思う
- 611 名前:デフォルトの名無しさん [2014/12/22(月) 01:19:08.37 ID:D1rmXNgC.net]
- >>604
使いながらマニュアル読んで使い方が分かってきました。 オーバーロードに対応してないクラスは扱うことができませんでした。 いくつか制約があるようです。 C#のオブジェクトを簡単にluaから使えるのかと思ったら、 そう簡単にはいかないのですかね。 そういうのはラッパークラスを用意して、 MoonSharpを意識した設計しないといけないようです。 つい新しいものに手を出したけど、他のC#系のluaはどんな感じなのかしら
- 612 名前:デフォルトの名無しさん [2014/12/22(月) 01:19:52.78 ID:D1rmXNgC.net]
- × オーバーロードに対応してないクラスは扱うことができませんでした。
オーバーロードに対応してませんでした。
- 613 名前:デフォルトの名無しさん mailto:sage [2014/12/26(金) 08:14:14.37 ID:aFXoC3vZ.net]
- Lua 5.3.0 (rc2) released
- 614 名前:デフォルトの名無しさん mailto:sage [2015/01/03(土) 21:35:53.41 ID:x6OMspk0.net]
- Lua 5.3.0 (rc3) released
- 615 名前:デフォルトの名無しさん mailto:sage [2015/01/03(土) 22:19:20.82 ID:FqikSySO.net]
- 更新内容に少しでも触れてくれると嬉しいんだけど・・・
- 616 名前:デフォルトの名無しさん mailto:sage [2015/01/03(土) 23:14:01.09 ID:KF2R3l6f.net]
- RCの段階で特筆に値する更新なんてないだろ
というかあったら困る
- 617 名前:デフォルトの名無しさん mailto:sage [2015/01/04(日) 02:23:10.16 ID:AdLaa9R2.net]
- 5.3楽しみどすね
- 618 名前:デフォルトの名無しさん mailto:sage [2015/01/04(日) 06:44:30.95 ID:FkvmMkr7.net]
- RCでの更新はコンパイル警告を無くした、とかばっかり。 安定してるんじゃないかな。
新C-APIの lua_rotate() が地味に便利。
- 619 名前:デフォルトの名無しさん mailto:sage [2015/01/04(日) 08:29:47.65 ID:LjhOLja4.net]
- >>609
>>562
- 620 名前:デフォルトの名無しさん [2015/01/08(木) 07:02:44.50 ID:HB0/eqgI.net]
- Lua 5.3.0 (rc4) released Happy New Year!
- 621 名前:デフォルトの名無しさん mailto:sage [2015/01/13(火) 08:21:09.63 ID:rG5Z7jyu.net]
- Lua 5.3.0 released ? Happy New Year!
- 622 名前:デフォルトの名無しさん mailto:sage [2015/01/14(水) 08:19:11.90 ID:G/8s1bPT.net]
- おめでとうございます。
- 623 名前:デフォルトの名無しさん mailto:sage [2015/01/19(月) 13:17:04.98 ID:i0MAuzuq.net]
- Windows系なら JsRT でブラウザ無しの js が使えるな。 node.js でもいいけどさ。
組み込みも js で十分な気がしてきた。
- 624 名前:デフォルトの名無しさん mailto:sage [2015/01/19(月) 19:23:58.96 ID:ax3bxEw/.net]
- JsRTではどうやってCからスクリプト内の変数とか操作するの?
- 625 名前:デフォルトの名無しさん mailto:sage [2015/01/19(月) 20:11:10.33 ID:i0MAuzuq.net]
- node.js と比べるのはおかしいな。比べるなら v8 単体か。
>>618 ハンドル (voidポインタ) 経由。 グローバル変数のテーブルもCから操作できる。 API は v8 と似ているけど、さらに簡略化されている感じ。 Luaとは違ってスタック操作を意識する必要は無い。 Cスタックを舐める系のGCっぽい。 C関数や、生データをファイナライザ付きでスクリプトに登録もできるし、 スクリプトの変数をCからキープしたいときの AddRef() もある。 後発なだけあって、いい感じに整理されているように見えるよ。
- 626 名前:デフォルトの名無しさん mailto:sage [2015/01/19(月) 22:22:42.69 ID:XVOLeUIA.net]
- スタック操作は不要で参照カウントは必要という案は何回も聞いた
みんなLuaと比較した情報は出すけど何個もある代案同士で比較した情報がまだ出ない だからまだ時期が悪いかなと思う
- 627 名前:デフォルトの名無しさん mailto:sage [2015/01/20(火) 06:19:15.63 ID:MIZOkYTq.net]
- スタック操作は覚えることが少ないから習得が早くて便利だけどね
- 628 名前:デフォルトの名無しさん mailto:sage [2015/01/20(火) 07:11:39.79 ID:Qwim/1/Y.net]
- LuaのC APIへの不満って、スタック操作と、スクリプトオブジェクトの寿命延長 (luaL_ref)
の2つが大きいいんじゃないの? 止められるんなら止めたいでしょ。 もちろん、Luaはスタック操作が明示的だからこそ、移植性が高いんだけど。 >>620 参照カウントはあくまでCからのキープ用で、スクリプト内だけならマーク&スイープ系のGCのはず。
- 629 名前:デフォルトの名無しさん mailto:sage [2015/01/20(火) 17:48:36.34 ID:MIZOkYTq.net]
- 奇しくも自分で述べてるように、
スクリプト側からは死んでるようにみえる値を C側では使ってるから生きてるよ、ということにするには 参照カウントよりもLuaL_refの方が考え方として分かりやすいと思うけど。
- 630 名前:デフォルトの名無しさん mailto:sage [2015/01/20(火) 18:44:09.44 ID:GWZYH+JO.net]
- スクリプトオブジェクトの寿命延長って?
Luaは知らないけど V8ではC++関数のスコープから抜けた時点でJavaScriptのオブジェクトを解放出来るようになっている だからV8ではC++関数内で使ったオブジェクトが中々解放されなくなるという事はない 関数を終えてもずっと保持したい場合はPersistentにコピーするようになっている
- 631 名前:デフォルトの名無しさん mailto:sage [2015/01/20(火) 18:56:01.81 ID:MIZOkYTq.net]
- いや、つまり嫌いと思う人は嫌い、好きと思う人は好きというだけの話。
- 632 名前:デフォルトの名無しさん mailto:sage [2015/01/20(火) 19:33:29.39 ID:Qwim/1/Y.net]
- 確かに大した差ではなかったな。
自分はどうもオブジェクトそのものではなくCookieを保持している感に戸惑ったが、 気になるならラッパーを一枚噛ませば十分だしな。
- 633 名前:デフォルトの名無しさん mailto:sage [2015/01/22(木) 18:40:30.34 ID:dZXZ9W3g.net]
- 整数型がデフォルトになったからより速くなったな
- 634 名前:デフォルトの名無しさん mailto:sage [2015/01/22(木) 19:34:31.74 ID:QfKlzsaM.net]
- JsRTで遊んでみているが、
IDispatchをVARIANT経由でJavaScript側に公開できることがわかった。 COMの資産を手間無く使えるので、その手の再利用が必要な場合は便利かもしれない。 なお、WebBrowserコントロールが使っていると思われるスクリプト環境はさすがに取得できないようだ。 無理やり連携されるなら window.external を介してこれも IDispatch 経由でやり取りすることになる。 悪くない。 Microsoft も .NET とか捨てて、JsRTとTypeSciptで行けばいいんじゃないかな・・・?
- 635 名前:デフォルトの名無しさん mailto:sage [2015/01/26(月) 19:41:40.28 ID:+446Cocf.net]
- Squirrel 3.0.7 stable
Squirrel 3.1 RC1 Released January 10, 2015 さっき気付いた。
- 636 名前:デフォルトの名無しさん mailto:sage [2015/01/26(月) 20:46:44.47 ID:5nfZyfP4.net]
- lua5.3の日本語マヌエルマダー?
- 637 名前:デフォルトの名無しさん mailto:sage [2015/01/26(月) 21:34:59.26 ID:Sajs+zmm.net]
- 言い出しっぺの法則
- 638 名前:デフォルトの名無しさん mailto:sage [2015/01/28(水) 05:31:27.96 ID:SR5teQWH.net]
- 俺が翻訳するかもしれないからあと100年くらい待ってくれ
- 639 名前:デフォルトの名無しさん mailto:sage [2015/01/28(水) 23:18:45.09 ID:arg2MK+/.net]
- 「日本語マニュアル出ないかなー」と言いながらずっと使ってるとそのうち英語でも普通に読めるようになって必要なくなる罠。
- 640 名前:デフォルトの名無しさん mailto:sage [2015/01/29(木) 08:12:30.79 ID:FQssNh0T.net]
- 5.3対応の書籍マダー?
- 641 名前:デフォルトの名無しさん mailto:sage [2015/01/29(木) 08:16:42.32 ID:vMBFyrLx.net]
- 「マニュアルだけじゃわからんなー」と言いながらずっとソースコードを読んでいるとそのうち先にソースにあたるようになって書籍が必要なくなる罠。
- 642 名前:デフォルトの名無しさん mailto:sage [2015/01/29(木) 08:43:48.85 ID:FQssNh0T.net]
- それらで得た知識を書籍にして印税生活をするにだ
- 643 名前:デフォルトの名無しさん mailto:sage [2015/02/01(日) 00:18:48.30 ID:ARaZzTfJ.net]
- android版のautotouch使い物にならんなあ
lua部分はともかく独自追加した所のデバッグやってるんだろうか findimage使った瞬間に落ちる、サンプルのスクリプトを使っても落ちる…
- 644 名前:デフォルトの名無しさん mailto:sage [2015/02/03(火) 08:45:44.97 ID:AqPQb7sP.net]
- このスレで既に紹介されたか知らないけど
ObjectScript https://github.com/unitpoint/objectscript objectscript.org/ www.codeproject.com/Articles/466907/ObjectScript-A-new-programming-language Luaっぽい作りで構文はC/JavaScript系で、Squirrelとキャラが被ってる。 単純な整数計算ベンチの速度だと Lua : Squirrel : ObjectScript = 3 : 2 : 1 (遅い) くらい。 実行バイナリのサイズは Lua : Squirrel : ObjectScript = 2 : 3 : 4 (でかい) くらい。 安定性や採用事例はよくわかんない。ちなみにCachéとは何の関係も無い。
- 645 名前:デフォルトの名無しさん mailto:sage [2015/02/04(水) 06:17:03.56 ID:Eqb0TJqD.net]
- CoreCLR がオープンソースになったけど簡単に組み込めたりするのかな
- 646 名前:デフォルトの名無しさん mailto:sage [2015/02/07(土) 10:47:45.90 ID:3mcYxCt2.net]
- perlのkeysみたいなの 無いの?
- 647 名前:デフォルトの名無しさん mailto:sage [2015/02/07(土) 11:10:55.67 ID:kuZAKFeA.net]
- >>640
Luaの話? いちおう組み込み系全般のスレなので…… 標準では用意されていない。 言語機能系の追加ライブラリを使えば良いんじゃない? まぁ、自作しても for ループを廻せば済むけど。 - stdlib : lua-stdlib.github.io/lua-stdlib/modules/std.table.html#keys - Underscore.lua : mirven.github.io/underscore.lua/#keys
- 648 名前:デフォルトの名無しさん mailto:sage [2015/02/08(日) 11:46:47.96 ID:8cE0HyuH.net]
- Lua書く時のエディタって何使ってるの? Lightroomのプラグイン書きなんだけど。
- 649 名前:デフォルトの名無しさん mailto:sage [2015/02/08(日) 12:28:55.31 ID:5UGjVIn5.net]
- lua-users.org/wiki/LuaIntegratedDevelopmentEnvironments
- 650 名前:デフォルトの名無しさん mailto:sage [2015/02/08(日) 17:36:40.20 ID:zqGmBD5H.net]
- Intypeってのはどうなん?
- 651 名前:デフォルトの名無しさん mailto:sage [2015/02/16(月) 22:29:33.28 ID:JBQ+Owrp.net]
- luaでファイル保存の時に日付.txtみたいに自動でするのはどうすればいいですか?
- 652 名前:デフォルトの名無しさん mailto:sage [2015/02/16(月) 22:40:47.19 ID:yzFhOePD.net]
- >>645
Luaからファイルを作っているなら os.date(書式) .. ".txt" でファイル名を生成すれば良いのでは
- 653 名前:デフォルトの名無しさん mailto:sage [2015/02/16(月) 23:48:51.20 ID:JBQ+Owrp.net]
- 出来ました、ありがとうございます。
- 654 名前:デフォルトの名無しさん mailto:sage [2015/02/19(木) 19:51:04.59 ID:Qw0v9eHu.net]
- Luaって存在今日知った。
自作計算プログラム用のスクリプトとしてTclを組み込んで使ってきたけど、 Luaってもう仕様安定してるの? 浮動小数点の実装はちゃんとバイナリ?
- 655 名前:デフォルトの名無しさん mailto:sage [2015/02/19(木) 20:22:48.55 ID:YKDWyqEz.net]
- >>648
本体の仕様は概ね安定している。 他の言語と比べてもそれほど差は無いと思う。 Lua 5.3 では、普通にビルドすると、浮動小数点は double、整数は int64 になる。 内部的な値の表現は タグ + union { double; int64; void* } という素直な実装だよ。 正規表現だけは注意がいるかもしれない。 文字の並びを ( ) で扱えない。 自分は C++ regex を使う別実装を自前で追加してる。
- 656 名前:デフォルトの名無しさん mailto:sage [2015/02/21(土) 12:07:52.58 ID:ftMcKIol.net]
- >>649
ありがとう。 awkみたいな実数=文字列みたいなダサ実装じゃないか、さすがに。 ちょっと活用を検討してみます。
- 657 名前:デフォルトの名無しさん [2015/02/23(月) 19:05:53.37 ID:PUEtXCiM.net]
- AngelScript|Д`)<AngelScript2.30.0記念カキコ
メモリ管理の改良とか、キャスト用メソッドの登録方法が変わったとか色々変更あるっぽい。
- 658 名前:デフォルトの名無しさん mailto:sage [2015/02/23(月) 23:12:44.33 ID:2B41jSVI.net]
- (´\r-、 ┼ + /`/`) +
┼ (\. \! * // ,/) * + * (ヽ、 \ + * / /) + ⊂ニ ) * + ( ニ⊃ * + ⊂、 ( ∩___∩ ノ ⊃ + * (/(/ ヽ | ノ ヽ / 、)ヽ) ┼ + (/ ∨ ● ●レ /⌒) 、)ヽ) * (/' | ( _●_) ミ' /、)、)´ + + (/'ヽ 彡、 |∪| ノ / AngelScript!! + / __ヽノ / * + ┼ (___) / + / / (_ ⌒丶.. | /ヽ }. し )) ソ トントン
- 659 名前:sage [2015/03/17(火) 22:57:10.71 ID:yVREPXol.net]
- flashairいじってる人いる?
- 660 名前:デフォルトの名無しさん [2015/03/17(火) 23:14:59.23 ID:Wb8shGuw.net]
- >>653
AS3は組み込めないだろ・・・
- 661 名前:650 mailto:sage [2015/03/17(火) 23:25:25.06 ID:yVREPXol.net]
- まあまあ^^;
luaでio.writeでSDカードに書き込めるかと思いきやなんか挙動が怪しい・・
- 662 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 22:52:38.83 ID:L0A+zZu9.net]
- 連想配列の要素数を返す関数(table.maxn)みたいなものってありますか?
tbl[] tbl[ "a" ] = data1 tbl[ "b" ] = data2 tbl[ "c" ] = data3 #tblやtable.maxn(tbl)をやっても「0」が帰ってきてしまいます。 ハッシュの場合、格納されている要素数を返すものはないのですかね ざっと検索して調べた感じそれっぽいのはありませんでした
- 663 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 22:59:40.53 ID:L0A+zZu9.net]
- table.maxn(tbl)
テーブルtblの持つ要素のキーのうち、正の数値(FIXNUM)であるものの中で最大のものを返します。 tblが正の数値(FIXNUM)のキーの要素を持たない場合は0を返します。 ってかかれてるからpairsで回して数取得するようなやり方しかないかもなあ・・。
- 664 名前:デフォルトの名無しさん mailto:sage [2015/04/11(土) 23:05:44.47 ID:L0A+zZu9.net]
- とりあえずこんなかんじで回避することにしました
何か他により良いやり方があれば教えて下さい function get_hash_count( hash ) local cnt = 0 for key, value in pairs(hash) do cnt = cnt + 1 end return cnt end
- 665 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 00:40:05.35 ID:eLW2DJDr.net]
- >>658
それが一番速いと思います luaのテーブルは厳密な要素数を追跡してないのよ 値をスカスカに配置して列挙時に存在チェックする
- 666 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 02:22:26.48 ID:ubi9S/wo.net]
- >>659
ありがとうございます luaの仕様的に他に良い方法はないのですね
- 667 名前:デフォルトの名無しさん [2015/04/25(土) 21:53:05.10 ID:udlJJGWW.net]
- >>1
組み込み系言語ってファームウェア用かと思ったwww
|

|