01:06:21  * AtumT_joined
01:09:09  * AtumTquit (Ping timeout: 256 seconds)
01:10:34  * AtumT_quit (Remote host closed the connection)
01:59:56  * xaxxonjoined
02:27:13  <devsnek>hmm i'm getting EXC_BAD_ACCESS with inspector dispatchProtocolMessage
02:27:25  <devsnek>i stole most of this code from d8
02:28:36  <devsnek>i guess the session pointer is nullptr
02:31:49  <devsnek>SetAlignedPointerFromEmbedderData will keep ownership of whatever the pointer goes to right?
03:02:08  * xaxxonquit (Quit: xaxxon)
04:43:14  * Garbeequit (Quit: Connection closed for inactivity)
04:58:20  * xaxxonjoined
05:40:45  * xaxxonquit (Quit: xaxxon)
06:10:53  * plutoniixjoined
09:22:31  * plutoniixquit (Read error: Connection reset by peer)
09:23:17  * plutoniixjoined
09:23:32  * plutoniixquit (Read error: Connection reset by peer)
09:23:56  * plutoniixjoined
09:24:25  * plutoniixquit (Read error: Connection reset by peer)
09:24:52  * plutoniixjoined
09:32:29  * plutoniixquit (Quit: Leaving)
09:46:18  * plutoniixjoined
10:25:09  * mylesborinsquit (Quit: farewell for now)
10:25:40  * mylesborinsjoined
11:14:55  * AtumTjoined
11:32:17  * plutoniixquit (Quit: Leaving)
11:58:24  * bradleymeckjoined
12:33:19  * bradleymeckquit (Quit: bradleymeck)
13:07:47  * bradleymeckjoined
13:34:51  * Garbeejoined
14:13:41  * oleavrjoined
15:24:25  * bradleymeckquit (Quit: bradleymeck)
15:42:14  * bradleymeckjoined
16:36:34  <Wes->devsnek: can you avoid guessing? use core dump?
16:36:51  <devsnek>Wes-: i figured it out
16:37:35  <devsnek>i was doing dynamic instantiation instead of new
16:37:45  <devsnek>it was UB
16:38:53  <Wes->"who owns what memory": 98% of all C bugs :D
16:38:53  * bradleymeckquit (Quit: bradleymeck)
16:40:04  * bradleymeckjoined
16:48:00  <devsnek>yep
16:48:07  <devsnek>well now i have a neat inspector
16:49:58  <devsnek>Wes-: if you're curious: https://github.com/devsnek/v8-inspector-test
16:51:01  <Wes->devsnek: well that's pretty cool!! Does that mean you can connect the debugger to your embedding?
16:51:12  <devsnek>it runs in the same process
16:51:15  <devsnek>thread
16:51:31  <devsnek>it was just for messing around with the inspector protocol
16:51:43  <bradleymeck>devsnek: I'd suggest moving it to another thread so that you can get messages even if the main thread hits an infinite loop
16:52:04  <devsnek>bradleymeck: it was just for learning whats up with the inspector protocol and making an implementation
16:52:11  <devsnek>i'm not using this to debug anything
16:52:37  <bradleymeck>ah
16:52:56  <devsnek>if i was actually debugging i'd just use devtools ui
16:53:06  <bradleymeck>devsnek: have you tried using https://github.com/cyrus-and/chrome-remote-interface
16:53:12  <devsnek>yes i've used it before
16:53:16  <bradleymeck>k!
16:53:22  <devsnek>i just got annoyed with the asyncness
16:53:32  <devsnek>and i wanted to learn the c++ api
16:53:56  <bradleymeck>"api" ;p
16:54:00  <devsnek>lol
16:54:16  <devsnek>next on my list is script streaming
16:57:07  <Wes->devsnek: Sounds like a perfectly reasonable goal to me. :) Debug APIs can be trick AF. Never played with v8's. I tried implementing a gcc-like environment in SpiderMonkey a few years back. That got some miles, but then the Moz team made the engine faster and broke all my code. ;)
16:57:31  <devsnek>js engines move fast :P
16:58:21  <Wes->devsnek: Yep! Tell me about it!! My lesson from my spidermonkey days I use when working on v8: write everything you can in JavaScript, only go native if necessary. :)
16:58:33  <Wes->Speaking of which, has anybody implemented a decent FFI for v8?
16:58:43  <devsnek>which direction
16:58:50  <devsnek>js calling c?
16:58:53  <Wes->yeah
16:59:14  <devsnek>all i know about is node-ffi but it should be able to just be linked into a v8 project directly
16:59:40  <devsnek>wait nvm they rewrote it to use NAN
16:59:46  <Wes->devsnek: of course node would have one, never even thought of that. Did js-ctypes ever take off, or did it stay in Mozilla-land?
16:59:58  <devsnek>its deprecated even in mozilla land
17:00:02  <devsnek>i think it was deprecated in like 2015
17:00:20  <devsnek>just use wasm at that point
17:01:08  <Wes->WASM has native language bindings out of the tin?
17:01:14  <devsnek>no
17:01:33  <devsnek>but people remake libc and libcxx
17:01:40  <Wes->Ah, that makes sense
17:01:54  <devsnek>and bind socket.h to websockets/rtc etc
17:02:05  <devsnek>this is interesting https://bugs.chromium.org/p/v8/issues/detail?id=4456
17:02:25  <Wes->I may have to revive my own FFI at some point. I Wonder how hard it will be to port to a new engine. The thing I liked about it vs. js-ctypes was that it did JS-style type coercion and guarateed at least POSIX.
17:03:05  <Wes->devsnek: thanks - VERY interesting
17:20:44  <bradleymeck>Wes-: I know a generic V8 supplied FFI was talked about several times in the past
17:22:40  <Wes->bradleymeck: the /right/ FFI can really accelerate development for the guys embedding v8 .... maybe chrome extension writers, too? js-ctypes was the wrong approach IMO. Just a hair too close to the metal, didn't make enough guarantees, developers had to understand too much about C compilers
17:23:45  <Wes->specifically struct layout. I had this problem, too. :/ relied on asking the compiler about struct storage details. But solvable for sure, I ran out of time.
17:24:31  <devsnek>definitely not chrome extension writers
17:24:41  <devsnek>the goal is one true js interface for extensions now
17:25:06  <Wes->devsnek: interesting, extension writers that need external libs are boned?
17:25:30  <devsnek>well they're trying to put everything in the WebExtensions spec that a extension author would ever need
17:25:37  <devsnek>https://developer.mozilla.org/en-US/Add-ons/WebExtensions
17:25:45  * RT|Chatzillaquit (Quit: ChatZilla 0.9.86.1 [Firefox 2.0.0.22pre/2010030309])
17:26:00  <devsnek>look at all those js apis
17:27:29  <Wes->devsnek: where's the API for the new hardware I'm building?
17:28:01  * plutoniixjoined
17:29:26  * plutoniixquit (Max SendQ exceeded)
17:29:46  <devsnek>Wes-: make a proposal :p
17:30:15  * plutoniixjoined
17:32:14  <Wes->devsnek: and this is why my last product rolled out with a total BS implementation.......XHR to localhost to access crap plugged into the USB port
17:32:29  <devsnek>thats what they all do
17:32:35  <devsnek>leap motion runs a websocket daemon
17:32:55  <Wes->*barf* lol
17:33:16  <devsnek>in other news i just learned how to copy machine code into memory and run it 🎉
17:33:52  <Wes->devsnek: everything old is new again. ;)
17:34:11  <devsnek>now to just figure out a cool way to generate that machine code
17:34:16  <devsnek>and i'll have my own JIT
17:37:12  <bradleymeck>devsnek: talk to indutny if you want
17:37:20  <bradleymeck>he has his jit.js and llvm stuff these days
17:37:28  <devsnek>i've seen it
17:39:37  <devsnek>uhoh var prot = mmap.PROT_READ | mmap.PROT_WRITE | mmap.PROT_EXEC;
18:24:16  * Garbeequit (Quit: Connection closed for inactivity)
18:34:07  * Garbeejoined
18:53:53  * bradleymeckquit (Quit: bradleymeck)
18:56:22  * bradleymeckjoined
21:21:13  * bradleymeckquit (Quit: bradleymeck)
22:04:16  * Garbeequit (Quit: Connection closed for inactivity)
22:27:53  * bradleymeckjoined
22:47:19  * bradleymeckquit (Quit: )
22:51:22  * bradleymeckjoined
22:57:22  * bradleymeckquit (Quit: bradleymeck)
23:12:21  * xaxxonquit (Quit: xaxxon)
23:15:53  * xaxxonjoined
23:40:00  * RT|Chatzillajoined