00:43:04  * c4milojoined
00:47:01  * jmar777quit (Remote host closed the connection)
00:52:09  * c4miloquit (Remote host closed the connection)
01:21:24  * c4milojoined
01:42:25  * unixpicklequit (Quit: Textual IRC Client: www.textualapp.com)
01:44:33  * plutoniixquit (Quit: จรลี จรลา)
02:35:05  * seventhquit (Ping timeout: 240 seconds)
03:16:57  * bradleymeckquit (Quit: bradleymeck)
04:09:16  * c4miloquit (Remote host closed the connection)
05:27:35  * c4milojoined
05:29:51  * c4miloquit (Remote host closed the connection)
06:09:51  * mostynbjoined
07:27:52  * Lethalmanjoined
07:39:14  * plutoniixjoined
07:46:08  * xiinotulpjoined
07:49:18  * plutoniixquit (Ping timeout: 240 seconds)
07:52:16  * xiinotulpchanged nick to plutoniix
07:57:23  * muellijoined
08:25:44  * rendarjoined
08:35:32  * petka_joined
08:38:02  * alippaijoined
08:41:19  * caitpquit (Quit: Leaving)
08:47:20  * caitpjoined
08:58:27  * wingojoined
09:04:07  <wingo>what is the deal with bdb exceptions related to UpdatePerfData?
09:04:36  <wingo>maybe it's just me
09:18:43  * caitpquit (Ping timeout: 240 seconds)
10:21:51  * Venemojoined
10:40:27  * arcaninchanged nick to arcanis
10:47:43  * caitpjoined
10:52:18  * caitpquit (Ping timeout: 240 seconds)
10:52:37  * mostynbquit (Quit: Leaving)
11:07:14  * Venemoquit (Quit: Communi 3.2.0 - http://communi.github.com)
11:11:18  * Net147joined
11:40:51  * caitpjoined
11:40:53  * muelliquit (Ping timeout: 252 seconds)
11:45:07  * caitpquit (Ping timeout: 240 seconds)
11:55:24  <trungl-bot>Tree opened by machenbach@chromium.org: Tree is open for business
12:41:34  * caitpjoined
12:45:54  * caitpquit (Ping timeout: 240 seconds)
12:52:40  * muellijoined
13:07:39  * bradleymeckjoined
13:08:46  * bradleymeckquit (Client Quit)
13:26:39  * c4milojoined
13:26:43  * bradleymeckjoined
13:33:24  * Jarvix_joined
13:34:41  * Jarvixquit (Ping timeout: 258 seconds)
13:34:41  * Jarvix_changed nick to Jarvix
13:42:34  * caitpjoined
13:42:38  * jmar777joined
13:45:54  * daurnimatorquit (*.net *.split)
13:45:54  * Gettyquit (*.net *.split)
13:45:54  * phI||Ipquit (*.net *.split)
13:45:54  * decoder_quit (*.net *.split)
13:46:07  * daurnimatorjoined
13:46:07  * Gettyjoined
13:46:10  * decoderjoined
13:46:23  * phI||Ipjoined
13:46:42  * caitpquit (Ping timeout: 240 seconds)
14:08:37  * Jarvixquit (Quit: Jarvix)
14:17:30  * c4miloquit (Remote host closed the connection)
14:17:56  * c4milojoined
15:20:43  * jmar777quit (Remote host closed the connection)
15:31:54  * wingoquit (Ping timeout: 240 seconds)
16:06:50  * RT|Chatzillaquit (Quit: ChatZilla 0.9.86.1 [Firefox 2.0.0.22pre/2009081014])
16:34:15  * Lethalmanquit (Quit: Sto andando via)
16:42:24  * Jarvixjoined
16:51:26  * Jarvixquit (Quit: Jarvix)
17:07:06  * caitpjoined
17:24:55  * Jarvixjoined
17:28:34  * bradleymeckquit (Quit: bradleymeck)
17:54:39  * c4miloquit (Remote host closed the connection)
18:09:50  * Lethalmanjoined
18:20:19  * c4milojoined
18:25:49  * bradleymeckjoined
18:26:14  * petka_quit (Quit: Connection closed for inactivity)
18:31:42  * c4miloquit (Remote host closed the connection)
18:56:44  * rendarquit (Ping timeout: 276 seconds)
18:57:21  <bradleymeck>anyone know if there is an open issue about extending typed arrays in v8? don’t see one on the issue tracker,
19:00:56  <katlogic>Something in particular? Harmony arrays seem fairly complete in V8.
19:01:40  * c4milojoined
19:01:41  <bradleymeck>katlogic: basically there is no way to do “class Buffer extends Uint8Array { … }”
19:01:55  <katlogic>Strange, I did that just now :>
19:02:06  <bradleymeck>mmm, what version of v8?
19:02:08  <katlogic>(from within JS)
19:02:39  <katlogic>bradleymeck: 3.24.something, fairly bleeding edge
19:02:55  <bradleymeck>katlogic: can it be done w/o the class syntax is another question
19:04:01  <katlogic>class syntax?
19:04:24  <katlogic>Extending native types from withing C++ is always troublesome, I'm not really sure what you're trying to accomplish.
19:04:54  <bradleymeck>katlogic: investigating how / what needs to be done to move node’s Buffer to an extended typed array
19:05:37  <katlogic>bradleymeck: Just chain the prototypes, just like you'd do in JS.
19:05:37  <bradleymeck>unsure how you extended the Uint8Array, would be interested in seeing if it works properly
19:05:40  <katlogic>The mechanism is same.
19:05:51  * unixpicklejoined
19:05:57  <katlogic>Naturally it is done in completely different fashion than extending the actual C++ class.
19:06:24  <katlogic>bradleymeck: https://github.com/katlogic/nodemu/blob/master/buffer.js
19:06:40  <katlogic>(a somewhat incomplete rip of browserify's buffer)
19:08:27  <bradleymeck>what precompiler are you using
19:08:35  <bradleymeck>fails on node —harmony
19:09:08  <katlogic>bradleymeck: just rip the minimal case
19:09:15  <katlogic>inherits & Uint8Array.call in constructor
19:12:54  <bradleymeck>katlogic: what is v, it is undefined
19:13:34  <bradleymeck>from I guess
19:14:51  <katlogic>Do _not_ attempt to use this code, its just freshly written bare skeleton :)
19:18:49  <bradleymeck>katlogic: returns Uint8Arrays without the buffer prototype methods
19:20:57  <katlogic>blah
19:21:00  <katlogic>let me make a gist
19:21:05  * unixpicklequit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
19:24:42  * caitpquit (Ping timeout: 240 seconds)
19:24:51  <katlogic>bradleymeck: https://gist.github.com/katlogic/dbfb2e5de7636a5d67e5
19:24:56  <katlogic>Hope its clear now.
19:26:37  <bradleymeck>instanceof is false
19:27:53  <katlogic>Unfortunately that is the case for all native types. You'll have to do wrapper function if you want instanceof to work.
19:27:53  <bradleymeck>closest Ive got is https://gist.github.com/bmeck/8091494c50d4d820ba5c
19:28:05  <katlogic>(same problem as extending Error)
19:28:26  <bradleymeck>but it does not inherit the methods from typed array
19:28:54  <bradleymeck>can use encapsulation or ad hoc extension but those are not the nicest in hot code paths
19:33:07  <bradleymeck>seems also yours doesn’t get the properties from Buffer.prototype?
19:33:26  <bradleymeck>just a normal Uint8Array?
19:36:51  * alippaiquit (Quit: Connection closed for inactivity)
19:37:50  * c4miloquit (Remote host closed the connection)
19:44:06  <katlogic>bradleymeck: Indeed, guess one has to resort to https://github.com/fresheneesz/proto then.
19:44:41  * c4milojoined
19:50:10  <katlogic>bradleymeck: https://gist.github.com/katlogic/85c767797603cdba3111
19:50:14  <katlogic>This one _seems_ to work
19:50:19  <katlogic>but is super kludgy
19:51:10  <bradleymeck>kludgy is fine, speed tests ahoy
19:52:49  * caitpjoined
19:54:26  <katlogic>Actually just Buffer.prototype = Object.create(Uint8Array.prototype) seems to work too
19:54:40  <bradleymeck>passed all tests, yea because the Buffer.prototype declaration comes after
19:54:44  <bradleymeck>declarations*
19:57:06  * caitpquit (Ping timeout: 240 seconds)
19:58:42  * petka_joined
20:00:28  <bradleymeck>20~% hit over just raw typed arrays, not terrible
20:03:28  * unixpicklejoined
20:04:21  <bradleymeck>starts to get more competitive ~24kb size buffers
20:04:40  <bradleymeck>thanks katlogic, it is something to work with now :)
20:14:06  <bradleymeck>typed arrays take forever to allocate uggg
20:47:10  * caitpjoined
20:50:00  * DongDiddlerquit (Quit: leaving)
20:52:24  <katlogic>bradleymeck: Generally you want to pool freelists in JS-space, like node.js does.
20:52:56  <bradleymeck>katlogic: not implementing a freelist yet
20:54:10  <katlogic>"over raw typed arrays" ... you mean with __proto__ vs not?
20:54:13  <katlogic>That looks pretty bad :/
20:54:46  <bradleymeck>w/ proto + constructor call
20:54:57  <bradleymeck>on small sized buffers it is pretty bad
20:55:08  <bradleymeck>but once you hit ~24k it is down at 5%
20:55:52  <bradleymeck>typed arrays are ~1.8x Buffers, so just getting the typed array times to below Buffer is going to take a bit
20:56:26  <katlogic>bradleymeck: The constructor is slow (that is to be expected) or raw []'s access?
20:56:37  <katlogic>(better yet, can you paste the perf code somewhere)
20:56:39  <bradleymeck>write/access is fast
20:56:43  <katlogic>ah, ok then
20:56:54  <katlogic>was afraid V8 would deoptimize that because of non-native __proto__
20:56:56  <bradleymeck>just construction
20:57:33  <bradleymeck>node --prof isn’t showing too many deopts (some, but that is expected)
21:06:11  * Lethalmanquit (Ping timeout: 252 seconds)
21:18:45  * Lethalmanjoined
21:32:22  * Jarvixquit (Quit: Jarvix)
21:54:22  * Jarvixjoined
22:03:17  * c4miloquit (Remote host closed the connection)
22:35:22  * caitpquit (*.net *.split)
22:35:22  * Vbitzquit (*.net *.split)
22:35:22  * marja___quit (*.net *.split)
22:35:22  * machenbachquit (*.net *.split)
22:35:22  * agerquit (*.net *.split)
22:35:22  * trungl-botquit (*.net *.split)
22:35:22  * Martijncquit (*.net *.split)
22:35:22  * rmcilroyquit (*.net *.split)
22:35:43  * Net147quit (*.net *.split)
22:35:43  * danno_quit (*.net *.split)
22:35:43  * paulfryzelquit (*.net *.split)
22:35:44  * mikegerwitzquit (*.net *.split)
22:36:01  * caitpjoined
22:36:01  * Vbitzjoined
22:36:01  * machenbachjoined
22:36:01  * marja___joined
22:36:01  * agerjoined
22:36:01  * trungl-botjoined
22:36:01  * Martijncjoined
22:36:01  * rmcilroyjoined
22:36:08  * Net147joined
22:36:08  * danno_joined
22:36:08  * paulfryzeljoined
22:36:08  * mikegerwitzjoined
22:56:52  * unixpicklequit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
23:01:16  * bradleymeckquit (Quit: bradleymeck)
23:11:23  * c4milojoined
23:15:26  * muelliquit (Ping timeout: 276 seconds)
23:16:44  * c4miloquit (Ping timeout: 276 seconds)
23:24:59  * seventhjoined
23:30:14  * seventhquit (Ping timeout: 240 seconds)
23:31:56  * Lethalmanquit (Ping timeout: 252 seconds)
23:32:59  * Jarvixquit (Quit: Jarvix)
23:35:02  * RT|Chatzillajoined
23:56:14  * petka_quit (Quit: Connection closed for inactivity)