First, I wish to express that the short-string PVs is a very interesting PoC! Also, the discussion around the PoC makes me want to skip work and hack on this stuff instead. :) On 30-03-17 18:07, bulk88 wrote: > I once made a branch that eliminated SVt_NULL and #define-ed it > to SVt_IV (both are bodyless, only difference is sv_any points to svu in > a SVt_IV while sv_any is NULL on a SVt_NULL, why not always keep a new > undef SV as an IV type unless otherwise upgraded, its just one CPU > subtraction op and 1 write op at SV head alloc time). While I really like this line of thought as well, I am concerned about how much code does something like: if (type == SVt_NULL) { ... } or: switch (SvTYPE(sv)) { case SVt_NULL: .... } Perhaps some macro wizardry could help, but I think this kind of change would be very hard to do without causing a lot of pain. -- Eric Herman - mobile: +31 620719662 Booking.com - Principal developer - C⚙re infra: DB ScalingThread Previous