タグ

luaとLuaに関するyou21979のブックマーク (19)

  • lua.wasm

    you21979
    you21979 2017/11/05
  • その3 コルーチンで状態遷移をLuaで制御

    ホーム < ゲームつくろー! < Lua組み込み編 その3 コルーチンで状態遷移をLuaで制御 Luaが持つ素晴らしい機能の一つに「コルーチン(coroutine)」があります。コルーチンは「関数の途中で戻ってきて、続きからまた実行出来る」という仕組みです。 こう聞いても「ん?」とハテナが付くと思います。私もそうでした。C言語にはコルーチンの機能がありません。なので、C言語に慣れている人だとピンと来ないんですよね。 例えば、キャラクタの位置を連続的に動かす事を考えてみます。最初10フレームは右へ1ステップずつ動き、次の5フレームで上へ、さらに次の7フレームで左下に移動するとしましょう。これをC言語でベタに書くとこんな感じになります: int state = STEP_1; int curFrame = 0; int step() { switch(state) { // 右へ10フレーム1

  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    you21979
    you21979 2014/09/24
  • Lua Bindingsの作り方 - Qiita

    なんだか暑さと眠さで気だるくてしょうがないので気分転換になんか書いてみる。 突然だけど Lua を知ったのは2年くらい前。某NodeのPaaS開発のプロジェクトに参加した時に、カーネル内でパケットを解析して動的にL7ルーティング出来ないもんかと色々調べてた時に見つけたのが始まり。その時は実験用のサーバにとりあえずインストールして実行したらカーネルパニックで落ちました(テヘペロ)ってな感じで終わったんだけど。 その後、個人的に触ってみたらびっくりするくらい文法がシンプルな上に高速で省メモリで久しぶりに好きになった言語なのだけれど、Web系での情報があまりないのが悲しいトコ。 基的に 組み込み言語 として紹介されてるので、その時点でスルーされてるのかもしれないけど、Nginx 上で Lua を動かすモジュールとして開発された OpenResty (CloudFlareの中の人が開発)やその上

    Lua Bindingsの作り方 - Qiita
    you21979
    you21979 2014/09/11
  • Lua: hot topics

    you21979
    you21979 2014/09/11
  • Raspberry Pi メモ (19) - Jun's homepage

    LuaJITでお手軽3Dプログラミング (1) (2013/03/29) 世間では電子工作系の話題と違って、Raspberry Pi を使ったプログラミングの話題はあまり盛り上がっていないようですが、私は Raspberry Pi の GPU でずっと遊んでいます。 これまで C を使ってみたり (Raspberry Pi で OpenGL ES2 (1), (2), (3), (4), (5), (6) )、Python で試してみたりしていましたが、楽しく「コードを書いて実行する」事ができるのは LuaJIT という結論に達しました。 LuaJIT用のRaspberry Pi専用3Dライブラリが、やっと形になってきたので「 LuaJITでお手軽3Dプログラミング」という新シリーズを始めてみたいと思います。まずは使用するスクリプト言語 Lua と、私が今ものすごく惚れ込んでいる LuaJ

  • LuaJITのC言語との型変換実験 - なぜか数学者にはワイン好きが多い

    LuaJITのFFIライブラリが,FFI(Foreign Function Interface)を通した時にインターフェース越しに引数がどのように相互変換されるかは,一応ドキュメントになっています. FFI Semantics でも良くわからないことが多いので,いろいろとサンプルを作ってみました. Part 1: Hello, World with Standard C Library Lua版は,普通に「Hello, World」を表示します. FFIを通したバージョンは,Cの標準関数のprintfを通して「Hello, World」を表示します. プログラムは,1つのLuaスクリプトにまとめました. -- Pure Lua local msg = "Hello, World" print(msg) -- FFI local ffi = require("ffi") ffi.cdef[[

    LuaJITのC言語との型変換実験 - なぜか数学者にはワイン好きが多い
    you21979
    you21979 2014/08/20
  • Lua言語20歳 - なぜか数学者にはワイン好きが多い

    Luaが20周年たったらしく,メーリングリストが凄いことになっています. The earliest implementation of Lua that we have found to date has files dated 28 Jul 1993. We have dubbed that version Lua 1.0, which is available at http://www.lua.org/ftp/lua-1.0.tar.gz Lacking a precise release date, since Lua 1.0 was never released, we commemorate 20 years of Lua today. On behalf of the Lua team, I thank you all for your interest in Lua and

    Lua言語20歳 - なぜか数学者にはワイン好きが多い
    you21979
    you21979 2014/08/20
  • luaのcoroutine - Qiita

    最近、vimの勝手スクリプトとかもluaで書いたりしていて、便利だなぁって思っています。 coroutineについてメモしておく。 coroutineの大体 coroutineは独自のluaスタックとローカル変数を持つスレッド的な物。 スレッド的だけれど、OSに制御が有るわけではなく、制御を明け渡すならロジック自体がそれを通知しないといけない。 create()するとコルーチンが作られる。resume()で実行/復帰、コルーチン内でyield()すると制御を戻せる。この時、戻り値として値をやり取りしたりもできる。 なんか適当に機能を使いまくると、こんな感じ。 local colo = coroutine.create( function( init ) if init == nil then init = 0 end local i = init while i < 10 do corou

    luaのcoroutine - Qiita
  • GitHub - openresty/lua-resty-mysql: Nonblocking Lua MySQL driver library for ngx_lua or OpenResty

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - openresty/lua-resty-mysql: Nonblocking Lua MySQL driver library for ngx_lua or OpenResty
    you21979
    you21979 2014/08/04
    nginxにこれは鬼に金棒だなぁ・・・
  • ネイティブ開発アンチパターン - 神様なんて信じない僕らのために

    ということで、最近はC++触ったりObjective-C触ったりJava触ったり、Lua触ったりしているわけですが、cocos2d-xに関してgumi Studyで話しました。とはいっても、中身は殆どcocos2d-xに関係ありません。 割と当たり前のことしか書いてないのですが、コンシューマゲームでも踏んだ「基的な罠」について書いてあります。 cocos2d-xを触っていると、かなりの人たちがC++を知らずにC++を書いているという現実に出くわします。そういうとき「動いているから」で突き進むのではなく、1度止まって、自分がそれを理解しているのかを考えて見てはどうでしょうか。 ネイティブ開発アンチパターン from Isoparametric !

    ネイティブ開発アンチパターン - 神様なんて信じない僕らのために
  • プログラミング言語Luaの良さをまとめてみた。 | ヤマヤタケシのブログ

    こんにちは。ヤマヤタケシです。 ランキングに挑戦中です。クリックしてやってください。→ 人気ブログランキングへ このブログで何回も言っていますけど、Luaっていいですよね! (Luaとはプログラミング言語の1つです。C,C++言語のアプリに組み込んで、開発効率向上のために使います) 2013.8.18(日)の勉強会に備えて、Luaの良さをまとめましょう。 Luaについてプレゼンをするけど、スライドは書かない! 書かないよ! 過去に書いた物と、 スクリプト時代 Luaは良い言語だなぁ ビジネスならLuaを選ぶべきです。 パッケージ管理の時代がやってきました! Macでtolua++をビルドする ゲームのデータはテキストで書きたいです。しかしパーサーはどうしますか? 他人のスライドで乗り切ってみせる! その良さを大いに語るプレゼンテーションを作成しようと思いましたが、既にある物は使いましょう。

    you21979
    you21979 2014/02/03
  • Unity and Lua Working thogeter

  • Lua Memo

    Tips/OOP…オブジェクト指向について 前提:Lua のオブジェクト指向は Table を用いる。 ■簡単.. Tips/cgi…Lua を CGI スクリプトとして使う方法メモ * CGIの実現方法 Linux では、ソースの一.. Tips/continue…Lua で強引に continue を使うには なんと、Lua には、他の言語でいう continue が.. リンク集 Luaリンク集 Recently updated:luacom/pairs…2009-07-28 luacom/isMember..…2009-07-28 luacom/GetType…2009-07-28 Tips/OOP…2009-07-05 kucgi…2009-06-28 io/stdin…2009-06-28 io/read…2009-06-28 * 最新コメント:table/remove (20

    Lua Memo
    you21979
    you21979 2013/11/13
  • Erlang + Lua = erluna - cooldaemonの備忘録

    第四回 Erlang 分散処理勉強会から早や3ヶ月…、学ぼう・試そうと思っていた事が思うようにできない日々を悶々と過ごしておりましたが、何とか時間を作って Erlang linkd-in driver を試すために Lua を組み込んでみました。 Source Code cooldaemon's erluna at master - GitHub 何が出来るのか? とても行数は少ないのですが、こんなんでも Erlang から Lua を呼べます。 設定ファイルを Lua で記述するような簡単な使い方は勿論、ちょっとした拡張を Lua で行うためにも利用できます。 例えば、Kai の Write/Write Conflict をサーバサイドで解決する機能を提供する計画があるのですが、幾つかの解決用アルゴリズムを Lua で記述してプラグイン化しておく事で、Erlang を知らない利用者の方で

    Erlang + Lua = erluna - cooldaemonの備忘録
  • NetBSD、カーネル内部でLua動作

    NetBSD is a free, fast, secure, and highly portable Unix-like Open Source operating system. NetBSDカーネル内部でLuaスクリプトを動作させるためのコードがマージされた。この機能を利用するとカーネルに新しい機能を追加するにあたってC言語によるプログラミングではなくLuaスクリプトを使ったプログラミングが可能になる。カーネル開発の幅が広がるほか、高速開発のための方法のひとつとして利用できる。 Luaは軽量で高速なスクリプト言語。仕様がコンパクトで移植性に優れているという特徴がある。NetBSDはベースシステムにすでにLuaを取り込んでおり、Luaスクリプトによる記述ができるようになっている。今回カーネル内部においてもLuaスクリプトが利用できるようになったことで、C言語による開発を苦手とするユーザ

    you21979
    you21979 2013/10/28
    CとLua確かに相性がいいのだがカーネル内部に持ってくるとは思わなかった。。。シェルより高速に動くし動的ロードでプラグイン的な使い方なんだろうなぁ
  • Terra

    Terra is a low-level system programming language that is embedded in and meta-programmed by the Lua programming language: -- This top-level code is plain Lua code. function printhello() -- This is a plain Lua function print("Hello, Lua!") end printhello() -- Terra is backwards compatible with C, we'll use C's io library in our example. C = terralib.includec("stdio.h") -- The keyword 'terra' introd

    you21979
    you21979 2013/05/15
  • Luvit.io

    Familiar API Luvit implements the same APIs as Node.js, but in Lua! This helps teams migrate without having to learn a new way of programming. Async Choice Choose your async model; we don’t mind; we encourage experimentation. If you don’t like callbacks and event emitters, use coroutines and write blocking style code without actually blocking your event loop! Modular Core The various projects in t

  • GitHub - kengonakajima/lua-msgpack-native: Faster implementation of MessagePack for Lua runtime

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - kengonakajima/lua-msgpack-native: Faster implementation of MessagePack for Lua runtime
  • 1