freenode/#lisp - IRC Chatlog
Search
21:31:46
jackdaniel
protocol classes indeed are meant to be inherited from, but that is more a signal, that this class implements said protocol
21:31:55
aeth
If CLIM doesn't count then it's literally just gray streams as far as elaborate inheritance goes, at least what I've encountered personally.
21:32:05
jackdaniel
unless you inherit from standard-foo (instead of the protocol class foo), you need to implement foo's protocols all by yourself
21:34:32
aeth
selwyn: It's controversial enough of an API to have at least one (probably more) alternative, as well as not being added to the base language itself (I think it was a proposal, wasn't it?)
21:35:36
jackdaniel
trivial gray streams were a rejected proposal but are useful enough to be included in most implementations
21:36:07
jackdaniel
some slowness may come from the gf dispatch, but other than that it is the programmer fault if they are slow
21:36:08
aeth
Shinmera: SBCL has three extensions included, including gray streams and simple streams, where the latter is an alternative to the former. http://www.sbcl.org/manual/#Streams
21:36:53
aeth
Where there's two there's probably many, so I wouldn't be surprised if there's a few more on some dark corner of the Internet, perhaps from the mid 90s
21:40:15
jackdaniel
aeth: to be meticulous there are clim streams: http://bauhh.dyndns.org:8000/clim-spec/P-V.html#_756, http://bauhh.dyndns.org:8000/clim-spec/P-VI.html#_1053 ; of course they are tailored for typed screen input and output formatting
21:40:53
aeth
jackdaniel: ah, okay, I actually was aware at one point that those were different, so my bad.
2:05:08
adlai
ACTION is estimating an ETA for ECL issue 305 fixing itself in the absence of external motivation
9:23:04
decent-username
I wanted to understand how :adjustable modifies the characteristics of an array. Therefore I've read what the HyperSpec had to say, but it didn't really help me. Why would I want to use ":adjustable t" when creating an array?
9:25:33
jackdaniel
decent-username: i.e when the average case is that array will hold 4 elements but in rare occasions it needs to hold 1024 elements
9:27:21
decent-username
Because doing something like (make-array 4 :adjustable t) will still raise an error when I try to use vector-push-extend
9:27:28
jackdaniel
if you have *a lot* of small arrays then it would be a huge waste to have each of them to have 1024 size
9:28:26
decent-username
ahh, I didn't know such a function existed. I think that's the thing that led to the confusion.