02:21:52  * dinguskhanjoined
02:23:32  * dinguskhanpart
03:09:05  * brsonjoined
04:41:33  * brsonquit (Ping timeout: 272 seconds)
04:52:19  * brsonjoined
05:25:31  * brsonquit (Quit: leaving)
06:40:35  * _KryDos_joined
07:20:15  * rmgjoined
07:23:53  * rmg_quit (Ping timeout: 260 seconds)
07:32:00  * rendarjoined
10:25:10  * mylesborinsquit (Quit: farewell for now)
10:25:46  * mylesborinsjoined
10:25:58  * mylesborinsquit (Changing host)
10:25:58  * mylesborinsjoined
14:37:07  * Fishrock123joined
15:53:42  * brsonjoined
16:09:05  * _KryDos_quit (Ping timeout: 240 seconds)
17:46:56  * _KryDos_joined
18:47:30  * zju_4quit (Remote host closed the connection)
19:07:13  * Fishrock123quit (Remote host closed the connection)
19:10:04  * Fishrock123joined
19:33:17  * rendarquit (Ping timeout: 272 seconds)
20:02:25  * rendarjoined
20:02:25  * rendarquit (Changing host)
20:02:25  * rendarjoined
20:02:46  * rendarquit (Client Quit)
20:42:36  * _KryDos_quit (Ping timeout: 240 seconds)
21:22:02  <creationix>Does anyone rememember the various JavaScript bindings to libuv?
21:22:12  <creationix>Working with node's process.binding interface is not pleasant
21:22:31  <creationix>I know I've written a couple for duktape, but I thought there were others
21:22:48  <creationix>indutny, Fishrock123 ^
21:23:06  <indutny>hm... can't recall, sorry
21:23:17  <Fishrock123>Could you be a bit more specific?
21:23:21  <creationix>I really though there were some, hmm
21:23:36  <indutny>so what kind of bindings do you want?
21:23:38  <indutny>V8?
21:23:54  <creationix>anything fast
21:24:03  <creationix>V8, SM, Chakra
21:24:04  <Fishrock123>process.binding gets you the bindings that Node's JS layer uses
21:24:09  <creationix>JSC
21:24:24  <creationix>right, but process.binding is undocumented and changes between releases
21:24:29  <Fishrock123>yeah
21:24:31  <creationix>code I wrote years ago completely crashes
21:24:37  <Fishrock123>yes
21:25:09  <creationix>also I'd like something with less legacy baggage, just libuv + JS + crypto (maybe libsodium)
21:25:31  <creationix>luvit is really nice technically, but people don't seem to like lua
21:26:53  <Fishrock123>What are you trying to do?
21:27:15  <creationix>server software for embedded devices
21:27:39  <creationix>node is a little heavy and also there are issues with part of it's high-level abstractions
21:27:58  <creationix>compat with existing npm ecosystem is not priority here
21:28:26  <creationix>I could write V8 bindings designed the way I want, but that's a non trivial amount of work.
21:28:54  <Fishrock123>You might be able to... compile node with only the pats you want? Could save you writing things from scratch but might be difficult too
21:28:59  <creationix>my duktape bindings are pretty good, but it's a bit CPU intensive being an interpreter
21:29:14  <Fishrock123>also how heavy are we talking about? you can, say, compile without ICU
21:29:19  <creationix>oh, so basically fork node's codebase
21:30:05  <creationix>striping down node might be an option. I'm not in love with the process.bindings interface, but at least then I would control it and document it
21:30:09  <Fishrock123>yeah, there's nothing wrong with that, making your own build
21:30:43  <Fishrock123>but I suggest using the interface ontop and just stripping away what you don't nee each update
21:30:50  <Fishrock123>or else rebasing will quickly be impossible
21:31:12  <Fishrock123>the only trouble with this is that V8 might become harder to compile on some devices unless you can cross-compile
21:31:19  <Fishrock123>well, not the only
21:31:21  <Fishrock123>but a problem
21:31:24  <creationix>yeah
21:31:37  <creationix>I wonder if duktape really is a performance bottleneck for me. Because otherwise it's ideal
21:31:45  <Fishrock123>Bcause really what your asking for does not exist right now and there is no easy way to build it
21:31:47  <creationix>it is *really* slow for JS heavy code compared to V8
21:32:09  <wrl>creationix: have you considered any options other than js and lua (with luvit)?
21:32:20  <Fishrock123>wait till Node 8 :p Turbofan and Ignition gona make that gap even bigger
21:32:39  <creationix>wrl, saghul's python bindings are an option too
21:32:50  <creationix>but for my audience, python is no better than lua, and I know luvit
21:33:01  <wrl>creationix: what's the audience?
21:33:13  <creationix>web developers mostly
21:33:24  <creationix>similar to node's audience as far as skillsets
21:33:26  <wrl>oh, good.
21:34:00  <wrl>i was going to weigh in and say that i recently did some embedded web server stuff with rust + nickel and it went swimmingly well
21:34:21  <creationix>that does sound fun. We're currently using C and go for embedded
21:34:32  <creationix>I haven't yet converted them to rust
21:34:48  <creationix>wrl, how does it work for things like stm32f0 chips?
21:35:10  <wrl>creationix: not sure, we were doing real tiny mipsel stuff. cheap wifi routers running openwrt + custom rust code
21:35:13  <wrl>and it went quite well
21:35:18  <creationix>and for larger chips (rPI size) does it still make sense or is linux best there
21:35:36  <creationix>ok, so as processes on top of embedded linux then
21:35:56  <wrl>yeah
21:36:06  <creationix>so I have that layer too, but the scripting language is for prototypes and running 3rd party code
21:36:06  <wrl>i have a friend who's doing bare metal stuff on the teensy
21:36:28  <creationix>I've got a box of PADI boards
21:36:37  <creationix>and tons of esp8266 chips, but no rust there
21:37:03  <wrl>yeah :/
21:37:12  <wrl>it'll get there, though. there's an interesting scene brewing
21:37:24  <wrl>i think the stm32f0 were beefier than the mipsel chips we were using
21:37:26  <creationix>that's fine, the padi stamp is the same form-factor and price, it should overtake that market given good software tools
21:37:45  <creationix>our stm chip is 48Mhz, not sure what else it has
21:38:21  <creationix>this is the dev board http://www.st.com/en/evaluation-tools/nucleo-f042k6.html
21:39:06  * _KryDos_joined
21:40:34  <wrl>creationix: word. yeah, i mean, if you can use rust someplace i recommend giving it a shot
21:40:41  <creationix>so yeah, pretty wimpy, only 32Kbytes memory
21:40:57  <wrl>it's a PITA at first because of the lifetimes and ownership model but it can generate some pretty nice code
21:41:07  <creationix>anyway, the JS need is on the main CPU with 1Gb ram and 1Ghz CPU
21:41:25  <creationix>just need it not too heavy so I can run multiple services in parallel
21:41:31  <wrl>word
21:42:29  <creationix>indutny, what about FFI libraries for calling into shared libraries from JS?
21:42:46  <creationix>or embedding some sort of faster interpreter along-side the JS one (webassembly maybe)
21:43:09  <creationix>as long as I have a way to optimize hot paths, the slow JS interpreter in duktape might be ok
21:43:45  * _KryDos_quit (Ping timeout: 272 seconds)
22:33:14  * Fishrock123quit (Remote host closed the connection)
22:51:14  * Fishrock123joined
22:57:40  * Fishrock123quit (Remote host closed the connection)