*Lua c-style cp932[#w0855ffe] **c-style [#h67879a7] ***用途 [#v9e7d0ac] -普段は''c-style''のカッコ系の言語(Java, JavaScript, C言語, C++ 等)で記載しているので、それに''近い戸惑わない記述が出来る''のが良い。 -Luaの既存のコード資産も使いたいので、''Lua本来の文法''も全て使えるものが良い。 ***仕様 [#nfcd9b79] - c-styleの{}が使える #sh(lua){{ -- c-like lua function add(x,y) { return x + y } //階乗 function factorial_while(n) { //whileで階乗してみる sum = 1 i = 1 while(i <= n) { sum = sum * i i = i + 1 } return sum } //階乗 function factorial_for(n) { //forで階乗してみる //すまないが、 lua のforを 完全にc-likeにしきれていないんだ sum = 1 for (i = 1 , n , 1 ) { //or for (i = 1 , n ) { sum = sum * i; } return sum } }} - c-styleの!=が使える #sh(lua){{ if ( 1 != 0 ) then print("not equal") end }} **cp932 [#h67879a7] -cp932 とは MS-Windowsの標準の文字コードです。 ***用途 [#x10a9542] - ''日本語 MS-Windows''なので、コンソール画面や他のアプリとの連携の都合上、''cp932(≒shift_jis)''の文字コードでLuaを利用したい。 - プログラム側(C++の''マルチバイト'')がcp932なので、''文字コード変換をする必要がないLua''が欲しい。 ***仕様 [#qfac25b7] -Luaに関する書籍を出版されている「[[はむ!:http://hammm.dw.land.to/lua/]]」氏のものをベースとしています。~ - 特徴 --文字列やコメントに日本語(cp932)が使えます。 --非常に限定的な修正のため、Luaの移植性に影響を与えません。 --2バイト文字の判定方法はcp932 -注意点 --関数や変数の名前には日本語(SJIS)が使えません。 --エラーメッセージなどは日本語化していません。 --EUC,UTF-8の場合、オリジナルのLuaと同じ動作となります。