6. gopher-luaとは ● 完全にGoで書かれたLuaの実装 ○ 作者のブログ ○ https://github.com/yuin/gopher-lua ● GoからLuaが実行できる ● gopher-lua/ast を使うとASTも使える ● goyaccが使われてる
LuaをGo言語のみで実装した GopherLua を公開しました。 詳しくはGithubのREADMEを見ていただくとして、特徴としては以下になります。 Lua5.1ベース 5.1の機能はほぼ実装済み Compiler, VMともに完全にGo言語のみで実装 引数の受け渡し以外でのスタック操作が不要で使いやすいAPI なぜ作ろうと思ったか もともとC言語でものを作るときにはLuaを設定ファイルの代わりとして取り入れていました。Goではあまり拡張言語実装がないので、jsonだったりiniだったりを設定ファイルとして使っていましたが、やっぱり微妙にめんどくさい。変数くらい欲しいなあ・・・とか。 結局、固い言語だけでモノを作るのは難しく、やわらかさが必要になるポイントがあります。そういうところはまず、「設定ファイル」として外だしされます。そしてその設定ファイルがどんどん肥大化したり複雑化したりし
About Lua Lua is a powerful, fast, lightweight, embeddable scripting language developed by a team at PUC-Rio, the Pontifical Catholic University of Rio de Janeiro in Brazil. Lua is free software used in many products and projects around the world. Lua's official web site provides complete information about Lua, including an executive summary and updated documentation, especially the reference manu
https://www.youtube.com/watch?v=nlt4XKhucS4 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約3時間前 CloudFlareのWAF (Web Application Firewall)は、HTTPリクエストをフィルタリングし、 SQLインジェクション コメントスパム XSS DDoSアタック WordPressなど特定のアプリを狙った攻撃 などの攻撃をネットワークのエッジで、つまりサーバに到達する前に守ってくれます。 適用するフィルタリングルールは、オープンソースのOWASPなどの共通ルール 5,682件 + CloudFlare内製のルール 102件 + 顧客企業がカスタムメイドしたルールの総計で、それが全てのリクエストに当てはめられます。その処理速度は平均1ms以
4. Luaとは ブラジルの Pontifical Catholic University of Rio で開発されているプログラミング言語 埋め込み型のプログラミング言語として開発され、 ゲーム業界を中心に浸透、現在は汎用的なプログラ ミング言語として一定の地位を得ている ガーベジコレクション、コルーチン 6. OpenResty nginx-lua の現在のメンテナの agentzh (章亦春さ ん) が提供しているバンドル つぎのモジュールが全部入り array-var / auth-request / coolkit / echo / encrypted-session / forminput / headers-more / iconv-nginx / lua / memc / postgres / redis / redis2 / set-misc / srcache / xss
GIN JSON-API framework Gin is an JSON-API framework, currently in its early stage. It has been designed to allow for fast development, TDD and ease of maintenance. Gin is helpful when you need an extra-boost in performance and scalability, as it runs embedded in a packaged version of nginx called OpenResty and it's entirely written in Lua. For those not familiar with Lua, don't let that scare you
We use nginx throughout our network for front-line web serving, proxying and traffic filtering. In some cases, we've augmented the core C code of nginx with our own modules, but recently we've made a major move to using Lua in conjunction with nginx. One project that's now almost entirely written in Lua is the new CloudFlare WAF that we blogged about the other day. The Lua WAF uses the nginx Lua m
nginx.org Popular high performance HTTP server. Event based (asynchronous) architecture. Low and predictable memory footprint. Declarative configuration language. Extendable with modules written in C. OpenResty = Nginx + a collection of modules. In production for large e-commerce sites in China (Alibaba Group). Non-blocking I/O using Nginx modules, including: Memcached Redis MySQL / Drizzle Postgr
This is the common project page for: LuaJIT — a Just-In-Time Compiler for Lua. Coco — a Lua extension for True C Coroutines. DynASM — a Dynamic Assembler for code generation engines. Lua Bitop — a Lua extension for bitwise operations on numbers. Privacy Policy This website does not request, store or process any private data. This website is fully static and does not allow entry of personal informa
Archived Eclipse Projects You are seeing this because the project you were looking for has been archived. When projects are archived their data(downloads,source and website), is collected into a single tar.gz file. Please note: Some projects did not have all of the above data. Please note: The source files (if available) included in these files are direct copies of the available CVS/SVN data. You
2011年4月13日(水) ■ mod_lua であそぼう _ 絶賛開発中の apache 2.3 (正式版では 2.4) では mod_lua なんてモジュールが含まれてるですよ。ということで遊んでみる。コンパイルの方法とかそういうのは略。 _ キホンの hello world。デフォでは handle() という関数が呼ばれる。 -- httpd.conf AddHandler lua-script .lua -- hello.lua function handle(r) r.content_type = "text/plain" r:write "hello, world\n" end で、http://localhost/hello.lua にアクセスすると、hello world が表示される。注意すべきは、通常の CGI などとは異なり標準出力を使わないということ。このスクリプ
C++ Advent Calendar です。 google の V8 engine を 組み込んで簡易スクリプトにしてしまおうという話です。 C++の言語仕様や boost の話は超絶詳しい人たちがされているので、誰もやらなそうな ぬるいいい加減な話をします。 #間違ってたら突っ込みよろしく!! なぜ V8? Lua ぢゃだめなんですか? C++ から呼び出しやすい 組み込み言語として、 Luaがあります。 しかし、 Luaはコメントが -- から始まったり、 〜end と、 C / C++ に組み込みやすいスクリプト言語なのになぜか pascal チックな文法?という不思議なところがあります。 やはり、 C++ ユーザとしてはコメントは // で書きたいし、ブロックは { } でやりたいですよね (y/Yes) そんなところに、 google の V8 engine があります。 C+
luakit is a highly configurable, micro-browser framework based on the WebKit web content engine and the GTK+ toolkit. It is very fast, extensible by Lua and licensed under the GNU GPLv3 license. It is primarily targeted at power users, developers and any people with too much time on their hands who want to have fine-grained control over their web browsers behaviour and interface. Configuring¶ luak
The document discusses the Lua virtual machine (LuaVM) bytecode format and instructions. It shows an example Lua function written in bytecode format, with each instruction taking up one bytecode. The bytecode format uses registers to reference values on the stack and constants to reference values in the constant table. Common Lua operations like variable assignment and table indexing can be repres
第三回カーネル/VM探検隊でLuaVMについて話してきました。 カーネルとか、仮想化技術に関しては素人も良いところなので、非常に勉強になりました! 低レイヤは世界が広すぎてついていけない! とりあえずVMということで、LuaのVMで話しました。 高レベルな話が飛び交うなか、 ありなんか、これ……みたいな感じでドキドキLTしてましたが、 LTへの突っ込みが鋭く、良い経験になりました。(日々是勉強成) 会場を用意してくださったIIJの皆さん、また開催者、参加者の皆様、本当にお疲れ様でした。 会場質問を受けた ・TAILCALLはなぜあるの? と、 ・クロージャを利用した場合にスタックが穴あきになってしまうがどうしているのか? (クロージャはLuaがUpvalueと呼ぶ上位関数の値を束縛してしまうので、クロージャの場合にはそれをスタックから退避する処理が入ってる) は、その場できちんと答えられま
Lua is an extension programming language designed to support general procedural programming with data description facilities. It also offers good support for object-oriented programming, functional programming, and data-driven programming. Lua is intended to be used as a powerful, light-weight configuration language for any program that needs one. Lua is implemented as a library, written in clean
Lua のコルーチンはとても便利ですが、意外とあんまり使われていないようなので、簡単な使い方をまとめてみたいと思います。 基本 Lua コルーチンは、関数に対して「途中で抜けて、あとで戻る」ための機能を追加した物です。 coroutine.yield コルーチンの中心的な機能である「途中で抜ける」には coroutine.yield という関数を使います。 function ex1 () coroutine.yield "HELLO!" coroutine.yield "HELLO AGAIN!!" return "SEE YOU!" end こんな風に使うと、関数の途中で抜けてそのときに、返り値として "HELLO!" や "HELLO AGAIN!!" という文字列を返します。 ただし、ここで定義した ex1 という関数はこのままでは「ただの関数」なので、この yield は使えません
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く