01:12:34  * grncdrquit (*.net *.split)
01:17:27  * grncdrjoined
01:23:31  * rchquit (*.net *.split)
01:23:31  * philr_quit (*.net *.split)
01:23:31  * devurandomquit (*.net *.split)
01:23:32  * Xequit (*.net *.split)
01:23:32  * sharpobjectquit (*.net *.split)
01:23:49  * devurandomjoined
01:24:07  * rchjoined
01:27:30  * philr_joined
01:29:49  * sharpobjectjoined
01:30:59  * Xejoined
02:43:34  * daviddiasquit (Ping timeout: 258 seconds)
04:19:51  * DarkGodquit (Ping timeout: 255 seconds)
04:39:59  * daviddiasjoined
05:18:32  * ^vquit (Ping timeout: 240 seconds)
05:18:56  * ^vjoined
08:14:12  * indexzeroquit (Ping timeout: 240 seconds)
08:14:35  * indexzerojoined
08:14:49  * rendarjoined
08:22:55  * DarkGodjoined
09:06:07  * ^vquit (Ping timeout: 258 seconds)
09:39:14  * ^vjoined
17:32:12  <creationix>good point
17:32:22  <creationix>so basically use luv as the system backend for cqueues
17:48:52  <creationix>daurnimator: or a luvi based app that used cqueues in the middle (with your http layer on top)
18:22:30  <APNG>and this is why lua is better than js
18:22:43  <APNG>you can do neat hacks like that
18:24:11  <creationix>APNG I don't see how lua is any different than JS in this regard
18:24:24  <creationix>both are scripting languages that can be embedded
18:25:08  <APNG>creationix, so how do I use a cqueues equivalent on top of node?
18:25:54  <creationix>node !== JS
18:26:10  <creationix>also cqueues is just a library with a pluggable backend
18:26:32  <creationix>a JS version of cqueues could be made the same and libuv-based js could be used the same
18:26:50  <APNG>uh ok
18:26:52  <creationix>my duktape bindings are very close to my luvit bindings
18:26:58  <creationix>and duktape has lua style coroutines
18:27:27  <APNG>is duktape a modified lua VM?
18:27:34  <creationix>no, it's JS
18:28:14  <APNG>but is it based on the Lua 5.2 VM or LuaJIT or something?
18:28:19  <creationix>and super lightweight. 35kb startup ram with 150mb of code
18:28:32  <creationix>no, it is its own codebase
18:28:40  <creationix>*150kb code
18:28:48  <APNG>ok
18:29:11  <creationix>basically embedded lua for people who prefer JS
18:29:33  <creationix>you can't beat luajit's combination of high-speed JIT with lowish memory overhead
18:30:07  <APNG>you can if you fork luajit's codebase
18:30:15  <creationix>if anyone knows of *any* scripting language vm that even comes close in terms of performance with low overhead I'd love to hear about it
18:30:20  <APNG>well I mean
18:30:29  <APNG>you'd have the same performance/overhead
18:30:33  <APNG>but w/e
18:30:55  <creationix>forking luajit to make a new language isn't exactly easy or even feasable
18:31:08  <creationix>I have considered designing a language that emits luajit bytecode
18:31:44  <APNG>remove the parser, tweak a few opcodes (without changing them too much)
18:32:11  <APNG>don't touch the builtins but instead use a bootstrap code
18:36:43  <creationix>my problem was using luajit bytecode was too restricting. Your design had to come out very lua-like or lose a lot of performance.
18:36:53  <creationix>I have no interest in making something almost lua, but not lua.
20:16:51  * rendarquit (Ping timeout: 248 seconds)
21:11:08  <APNG>creationix, didn't you reimplement JS in Lua syntax?
21:11:21  <creationix>I don't think so
21:12:26  <APNG>creationix, JS with : instead of . ?
21:12:46  <creationix>nope
21:13:18  <APNG>what's luvit then?
21:34:55  <creationix>luvit is lua
21:35:33  <creationix>node != js, luvit originally was the node.js API translated to lua
21:52:37  <APNG>so it no longer has JS objects?
23:13:35  <daurnimator>creationix: yeah. or cqueues as backend for luv. whatever you need
23:13:54  <daurnimator>creationix: btw though, cqueues doesn't have pluggable backends, it just has good integration points