Skip to content

Instantly share code, notes, and snippets.

View LiXizhi's full-sized avatar
😊
Working on Paracraft

Li, Xizhi LiXizhi

😊
Working on Paracraft
View GitHub Profile
@LiXizhi
LiXizhi / luajit_pairs_ipairs_indexing_compare.lua
Last active October 28, 2022 05:40
pairs, ipairs, and indexing luajit performance compare
--[[
Environment: iCore7 2620M (2.70GHz), luajit 2.1
array size: 10
| pairs | ipairs | indexing |
| 1.000000 | 0.580247 | 0.209877 |
| 1.723404 | 1.000000 | 0.361702 |
| 4.764706 | 2.764706 | 1.000000 |
array size: 100
| pairs | ipairs | indexing |
@LiXizhi
LiXizhi / luajit_coroutine_vs_func.lua
Last active May 16, 2022 01:22
Luajit 2.1 corountine vs function call comparision
-- Testing coroutine overhead in LuaJIT 2.1 with NPL runtime
--[[
Starting function test...
memory(KB): 0.35546875
Functions: 500000
Elapsed time: 0 s
Starting coroutine test...
memory(KB): 13781.81640625
Coroutines: 500000
Elapsed time: 0.191 s
@LiXizhi
LiXizhi / email_sec.pl
Created September 14, 2017 06:58
Haqi view and delete user emails
#!/usr/bin/perl
use DBI;
use Encode;
use utf8;
require "cgilib.pl";
@LiXizhi
LiXizhi / email_dump.pl
Created September 14, 2017 03:10
Haqi dump email with attachment to log files
#!/usr/bin/perl
use DBI;
use JSON;
use XML::Simple;
use Encode;
use utf8;
binmode(STDOUT, ':encoding(utf8)');
binmode(STDIN, ':encoding(utf8)');
@LiXizhi
LiXizhi / tree.cad.lua
Last active August 17, 2017 17:54
NPL CAD example make a tree
-- generate a random tree
local function random(min_value, max_value)
return min_value + math.random()*(max_value - min_value);
end
function make_tree(level, length, last_radius, leave_size)
last_radius = last_radius or length*0.2;
local radius = last_radius*0.5;
if(level>1) then