WindowsMobile開発を256倍快適にする言語 Lua すまべん(スマートフォン勉強会)関東#2 プレゼン資料Read less
WindowsMobile開発を256倍快適にする言語 Lua すまべん(スマートフォン勉強会)関東#2 プレゼン資料Read less
Luaスレッドで制御するオブジェクトの話。オブジェクト生成時にそのつどlua_newthread()でスレッドを作成していくと10個くらいオブジェクトを作ったところで何故か落ちてしまうことが判明。 最初にスレッドをドカッとプールに作り貯めておく方式であれば落ちないっぽい。一つのlua_Stateに作成できるスレッドの数がどれくらいかは解らないけれど、2000個くらい作ってみても平気だった。 新規に作成されたオブジェクトは、このスレッドプールからスレッドを得て、死亡時にスレッドプールに戻しておく、みたいな使い方で問題なさそう。 と思いきやLua制御オブジェクトを700個ほど出したところでやはり落ちる。まだスレッドプールには余裕があるのにナンデ?とりあえずlua_checkstack()で1024くらいを指定してスタックサイズを伸ばしてやると落ちなくなった。原因はスタックのオーバーフローだろう
目次 1.0.0 Lua の基礎 1.1.0 Lua v.s. Python 1.2.0 Lua 初心者の戸惑い 1.2.1 文字列の結合演算子 1.2.2 関数の戻り値 1.2.3 nil と None 1.2.4 部分文字列 1.2.5 正規表現 1.2.6 module 1.2.7 long comment 1.2.8 local 1.3.0 import 2.0.0 Lua XML 2.1.0 XML collect 2.2.0 XML collect (修正版) 2.3.0 XML mktree 2.4.0 XML viewer mkidf 2.5.0 XML 雑感 2009/01/29 2009/02/15 追加 2009/02/16 追加 2009/03/17 追加 2009/04/04 追加 2009/04/05 追加 今年の冬休みは Lua で WebDA
Lua Programming Gems 作者: Luiz Henrique De Figueiredo,Waldemar Celes,Roberto Ierusalimschy出版社/メーカー: Lua.Org発売日: 2008/12/11メディア: ペーパーバック購入: 10人 クリック: 73回この商品を含むブログ (1件) を見るLua Programming Gems は, Lua のプログラミングテクニックについてまとめた,いわゆる「Gems本」だ。公式ページでは第2章 "Lua Performance Tips" をサンプルとして無料公開しており, PDF 形式でダウンロードして読むことができる。この内容がなかなか面白い。 最も基本的なポイントであるグローバル変数とローカル変数の違いから, table における配列とハッシュの扱いについて,文字列の内部的な扱いについて,等々,
apacheの2.4系から Luaでapacheのフックを制御できる mod_luaモジュールが入るというネタを見かけたので、svnのtrunk版(2.3.*) を引っ張って試してみました。 (元々 mod_wombatという名前で開発されてたモジュールが2.4系からはmod_luaとしてリリースされるって経緯ぽい。ドキュメントはこちら) 現状のmod_luaでサポートしてるApacheのフックは下記の通りになります。 ap_hook_translate_name ap_hook_map_to_storage ap_hook_header_parser ap_hook_access_checker ap_hook_check_user_id ap_hook_auth_checker ap_hook_type_checker ap_hook_fixups ap_hook_insert_fil
Lua の doctest.lua を使い始めました。これは、ソースコードのコメント中に書いたテストコードを実行してくれるというものです。 doctest.lua のダウンロード ただし、バージョンが古いのか、そのままでは動かなかったので、メモ。261行目(付近?)にある、if num > 1 then が問題で、これだと引数に指定した 1つ目のソースを無視してしまいます。(Windows 版 Lua 5.1.4) - if num > 1 then + if num >= 1 then加えて、doctest では、テストする関数の名前を取り出してくれて便利なのですが、これが単純な[a-z]+的なものしかピックアップしてくれないので「function lib.name()」のようなライブラリ中の関数だとライブラリ名しか取り出してくれません。そこで、217行目(付近?)にある、doctest
2009年06月24日18:30 カテゴリ書評/画評/品評Lightweight Languages なんてめんこい言語 - 書評 - 入門Luaプログラミング ソフトバンククリエイティブ品田様より、打ち合わせのついでに献本いただいた。 入門Luaプログラミング 上野豊 LuaめんこいよLua。 こんな小さいのに、こんなに出来る子だなんて。 ブラジル生まれのこの言語は、もっともっと知られて、もっともっと使われてるべきだ。 本書「入門Luaプログラミング」は、タイトルどおりLuaプログラミングの入門書なのだが、Perlでこれに相当するのはリャマ本ではなくラクダ本。Pythonならネズミ本ではなくヘビ本だ。そう。本書にはLua 5.1に搭載されている機能がすべて紹介されているのだ。250ページしかないのに。 目次 - ソフトバンク クリエイティブの本:入門Luaプログラミングより ■第1部 L
Luaとなでしこのラブラブ仲良し生活(1) - なでしこv1.522でLuaをサポート
遅めの夏休みで那須塩原に行ってきたmikioです。牧場でアルパカに触ってきたのですが、めちゃかわいかったです。さて今回は、Tokyo Tyrant(TT)にスクリプト言語Luaの処理系を組み込んで使う方法について解説します。 つか、Luaって何? Lua(公式サイトによると「るーあ(LOO-ah)」と発音)という言語の名前は聞いたことがあっても、数あるマイナー言語のひとつと思って特に気にかけていない人も多いと思います。私もそうでした。しかし、今では、C言語使いの第2言語・第3言語として使うにはとても有望な言語だと思っています。 Luaに関する日本語の情報はまだ多くはないのですが、以下のサイトを順に読むとだいたいの雰囲気が掴めると思います。 Lua で組んでみる Lua 5.1 リファレンスマニュアル Luaは言語仕様が小さいので、とても習得しやすいです。上記のリファレンスマニュアルだけ読め
Lua の関数呼び出しは、他の言語と同様に proc()のように書くことが出来るほか、その引数として文字列を指定することもできます。 proc "abcabc"そのため、以下のような関数を定義すると.. function e(str) str = string.gsub(str, "$(%w+)", function (n) return _G[n] end ) return str endなんと、言語レベルでは提供されていない、(Perlみたいな)文字列の展開を簡単に実装できてしまうんです!(文字列の前に e をつけるだけで文字列が展開されます。煩わしいカッコは不要です!) name="Haiji" like="Susi" print(e"My name is $name, I like $like.") -->My name is Haiji, I like Susi.※ e() 関数
Pitは細々としたスクリプトのパスワード管理の面倒さから解放してくれますが、luaのpit実装が見当たらなかったので書いてみました。 http://github.com/hogelog/luapit/tree/master luayamlをインストールして、pit.luaをダウンロードして/usr/share/lua/5.1/とかそのあたりにコピーして、コード中で require "pit" account = pit.get("twitter", {username="id or email",password="password"}) -- account.usernameとかaccount.passwordを使ったコード みたいに使えると思います。 luaYAMLのインストール なんかdebianのunstableでluaYAMLが微妙にインストールめんどうだったのでメモ。これはsy
すごく適当だけど眠くてこのまま放置したまま数年とか経ちそうなので貼っておいてみる。luayaml使ってる。
テイルズオブヴェスペリアがPS3に移植されると聞いて、今年の夏にPS3を買うことを固く決意したbokkoです。部屋に置き場所がないとか、社会人になってから積みゲーがどんどん増えているとか、随分前にXBOX360版の総プレイ時間が三桁になっていることはこの際気にしないことにします。あと、機会があればCellとdtlを使って編集距離の計算をやってみたいです(多分あんまり速くない)。 Luaは軽量で高速なインタプリタ言語です。コアは非常に小さいのですが、テーブルというデータ構造や関数がファーストオブジェクトであることを利用して、本来は機能としてないオブジェクト指向言語のような書き方をしたり、独自に拡張したりと、なかなかパワフルな言語です。実際の使われ方としてはアプリケーションに組み込んで使うことが多く、組み込み言語などと呼ばれることもあるようです。今回は、LuaのプログラムをC、C++で書かれた
Account Suspended This Account has been suspended. Contact your hosting provider for more information.
Pythonの勉強にと思って素数を洗い出すプログラムを書いた。 そしたら結構速いことが分かった。 面白くなって他の言語と比較してみた。 プログラムはコマンドライン引数で指定された上限(のようなもの)までの素数を洗い出すもので 上限を10000000として速度を計測した。 言語時間 Python(Psycoあり)21秒 Python(Psycoなし)137秒 Ruby(1.8)上限1000000で37秒 Ruby(1.9)上限1000000で23秒 Ruby(svn:rev23170からmake)133秒 PHP134秒 Java(OpenJDK6が最速)10.2秒 C++5.0秒 C5.0秒 D6.2秒 Lua(5.1でしか動かない)116秒 Perl96秒 先頭に二行足すだけでこの速度。すごい。 (Psycoは実行時に関数をコンパイルしてくれるらしい) Python import psy
lua, C言語http://d.hatena.ne.jp/smeghead/20080816/sl で、SLを書いたときにLuaにsleep関数が存在していないらしいことに驚きました。Cと親和性が高いLuaなので、丁度いい練習になると思い、Luaから呼び出せるsleep関数を作ってみました。lsleepモジュールlsleepモジュールとして作成しました。ソースは下の一個だけ。とりあえず、Luaでrequireして、requireしたモジュールの関数を呼び出すことのための最小限だけを書いています。細かい話は、たいぶ省略していると思います。 sleep.c #include #include #include #include #include /* Luaからsleepとして参照する関数 */ static int lsleep(lua_State* L) { int secon
TinyXMLと babelを使って LuaのテーブルをXMLに保存し、また読み込みます。 C++の側では以下のように書きます。 api_save_variable()とapi_load_variable()はlua_register()して Lua側から呼び出せるようにします。 #include <tinyxml/tinyxml.h> #include <babel/babel.h> #include <string> #include <sstream> using namespace std; #define _MBCS extern "C"{ #include "lua.h" #include "lualib.h" #include "lauxlib.h" } static int luavar2xml(lua_State *L, int index, TiXmlElement *
This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く