freenode/#sicl - IRC Chatlog
Search
16:03:59
jackdaniel
all that said, it would be cool if cl had (possibly optional) standardized protocols for threading, networking, unicode and (of course) mop; but it is not a pressing issue given all points are addressed by vendor modules
16:17:17
shka_
on the other hand, if cl had threading and networking from the day 0, it would likely be obsolete by now
21:45:42
no-defun-allowed
Re-reading the document, I wonder if they've investigated what assumptions the compiler writers make, and what is idiomatic Common Lisp.
21:46:53
no-defun-allowed
e.g one should basically never have to write SLOT-VALUE, so foo.bar syntactic sugar is just encouraging one to write bad code, and RAII (oh, why the hell are we suggesting RAII and manual memory management in the new standard now?) and continuations probably would not mix.
21:53:53
no-defun-allowed
We either already have "first-class macros", as you can grab the macro function and pass it around, like any old object, or by Matt Might's definition, it would be non-trivial to modify a compiler to implement them efficiently. And finalization is usually a last-ditch effort for handling remote resources; I wouldn't bother. And the high performance socket stuff is definitely _not_ using BSD sockets, so I hope we don't
3:51:18
fiddlerwoaroof
There are a couple areas that are occasionally annoying (floating point numbers not lining up nicely with IEEE-754, iirc)
3:51:31
no-defun-allowed
I have a small todo list of things to do to Common Lisp, but they're all implementation details really.
3:51:57
fiddlerwoaroof
But, the language as specified doesn't really need to be re-specified because the most common issues can be solved as libraries
3:52:23
fiddlerwoaroof
And, my attitude towards standardized features is roughly "standards are where features go to ide"
3:53:31
fiddlerwoaroof
The thing I like about SICL, for example, is that it's making standardized features user-extensible (eclector's a good example here)
3:54:15
no-defun-allowed
Specifically, those would be "green threads for async IO without hurting my head on async code" and "vectorising compiler", which are literally supposed to avoid having to modify client code.
3:54:33
fiddlerwoaroof
Anyways, I used to be a python programmer and the Python 2->3 transition has permanently soured my opinion of attempts to change language standards
3:57:23
no-defun-allowed
Oh, that reminds me somehow, Kulukundis's hash table avoids the problem of having excess tombstones from removing mappings...somehow. You only add tombstones if a group is full of mappings, and only empty mappings otherwise.
3:59:39
no-defun-allowed
It's still a bit beyond me, but (assuming an evenly distributed hash function) you'd need a (n-1)/n load for a hash table with n-sized groups to see any tombstones, which is pretty large even at n=8
4:00:35
Bike
i think there are some important improvements that would be more appropriate as a standard than a library
4:00:51
Bike
but all these CL 3.0 or whatever things like to focus on... i didn't even read this one. automatic slot names? who cares