freenode/#lisp - IRC Chatlog
Search
12:57:25
phoe
But my question maybe can be better worded as, can I DECLAIM FTYPE of a generic function?
12:59:05
phoe
then I guess I have found a minor annoyance in SBCL, unless I am wrong somewhere again. https://plaster.tymoon.eu/view/784#784
13:00:54
loke
phoe: Aren't you supposed to put the ftype proclaimation before defining the function?
14:22:10
loke
beach: This is the current brain dump: https://drive.google.com/file/d/1aaVZmegLT42ur17j7Vbtdh7auco7pmYN/view?usp=sharing
14:22:37
loke
Here's the repository, but there isn't much in it: https://github.com/lokedhs/lisp-pref
14:25:07
phoe
loke: your work partially overlaps with my PROTEST way of declaring configuration categories and configuration options.
14:26:49
phoe
DEFINE-TYPE is not the best name because it directly clashes with CL:DEFTYPE. Maybe something more verbose like DEFINE-CONFIGURATION-TYPE?
14:27:32
phoe
:STRUCTURE :STRING is unclear to me. I don't yet get what it does, and also you missed a closing paren. (:
14:28:56
phoe
Using hash-tables is a better idea. Any list of non-null lists is a valid alist, and therefore you might avoid type confusion by using hashtables.
14:31:26
phoe
So it is obvious that you don't want just a mere tree of valid lists, and instead you want an actual map from keys to values.
15:21:38
comborico1611
Which word would you use to describe the difference between a Lisp REPL to that of all the other programming language REPLs? I was thinking "memory".
15:30:18
comborico1611
shka_: Hmm. There may be more than one difference then. I was thinking on the ability to load a function onto the REPL and then call it again.
15:40:54
phoe
comborico1611: integration of the REPL with the inspector, debugger, stepper and so on
15:41:09
phoe
nowadays it isn't about the REPL itself, it's about how it integrates with everything else
15:46:30
Beepy
shka_, it looks like Rove is still by Eitaro Fukamachi, so it will probably replace Prove at some point.
16:18:09
phoe
I've only started to rewrite my old code using my new version of PROTEST and I'm already uncovering things that I should have done better back in the day
16:18:32
phoe
such as discovering that I have duplicated DEFGENERICs and I should instead create a new mixin
16:47:42
phoe
on_ion: a mixin is a superclass that is meant to be "mixed in" with other superclasses.
17:22:50
phoe
In PROTEST, a category is not particularly interesting - the category only really exists to be a reference for the programmer, and for having a docstring.
17:22:59
loke
(besides, protest is definitely somehting I need. Potato has already changed test frameworks once)
17:23:11
phoe
And a configuration entry is essentially what you describe - a value, accessed by a list of keywords.
17:24:47
phoe
loke: PROTEST isn't an abstraction over different testing libraries. It still forces you to write tests in a given test library, but it provides mechanisms for generating test cases that are textual descriptions of tests, and therefore independent of given test implementations.
17:26:09
phoe
loke: a library abstracting over multiple different testing framework would be a testing framework itself. And we already have enough of these.
18:49:58
vtomole
Why does "(defparameter 1st '(a b c)) (nreverse 1st) (C B A) 1st " return "(A)" and not the reversed list?
19:49:40
White_Flame
comborico1611: the Lisp REPL has the full power of source code files. Many other languages don't have that ability