freenode/lisp - IRC Chatlog
Search
21:09:21
no-defun-allowed
Something rubs me the wrong way about using maps and sequences for everything. Maybe I don't do the kinds of problems where those are fine.
21:09:52
mfiano
The point is general purpose abstractions, like design patterns as they are called in other languages, are just usually the result of one caring too much about the code and not how it should be structured for your domain. Maintainability just sort of falls out from a deep understanding of your field/and lots of whiteboarding.
21:10:06
fiddlerwoaroof
The biggest issue is you create an implicit dependency between line 40 with {:a 1 :b 2} and line 80 with {:a 1 :b 2}
21:10:21
no-defun-allowed
(Though for it to be "everything", we should define #{} to be 0, #{#{}} to be 1, so on and so forth.)
21:11:34
fiddlerwoaroof
mfiano: I agree with that, I just think saying "how you use the concepts available matters less" misses the point: understanding the domain is not enough, you need to write code that reflects your understanding of the domain
21:11:46
mfiano
There are whole periods of weeks where I can't write code because I'm still understanding the math, logic and how it all permutes to be written in a maintainable fastion. POD, mixins, design patterns...none of that matters until the domain is well understood
21:12:29
fiddlerwoaroof
Yeah, I'm sort of the opposite: I can't understand the domain without having a repl open to mess around with
21:13:41
mfiano
I've had to work on serious projects professionally where we couldn't afford to make these types of mistakes that arise from "just coding"
21:14:01
Odin-
There are still people who think there's really something called "plain text" in computers.
21:15:03
fiddlerwoaroof
It's just that I find iterating with prototypes designed to explore one corner of the search space ends up being more efficient than trying to think through the domain
21:16:25
TMA
I have an experience that is in the middle between fiddlerwoaroof and mfiano. there is the exploration to learn something of the domain, which is usually ill specified and therefore not available with a priori reasoning alone
21:17:14
TMA
but there is also the need to pause and whiteboard, to build the model in the head prior to coding
21:17:38
fiddlerwoaroof
TMA: yeah, when talking about these things I find that I occasionally express a position that sounds more extreme than it actually is
21:18:34
fiddlerwoaroof
I do spend time whiteboarding/learning, I just have also had the experience of a project where we spent weeks planning only to discover that what we thought was possible wasn't
21:19:31
fiddlerwoaroof
Or, in one case, a team insisting on like a month of onboarding training before I was allowed to write code
21:19:55
fiddlerwoaroof
Most of which was basically useless because I didn't really understand the context until I tried to change the code
21:20:50
mfiano
I could write a whole book on debunking the ECS paradigm some time...and I probably will. It amazes me how people flock to shiny things that just shift the shift the complexity around (and add new issues because they hadn't considering their design may require a new architectural model coupled to the domain.
21:21:50
TMA
mfiano: I will refrain from ignoring your opinions, if I may. There is certainly much to be learned, even if there are minor corrections to be applied.
21:22:09
no-defun-allowed
I still need to write my implementation of "ECS" using CLOS for serial parts just to spite someone. But I forgot who I'm supposed to be spiting.
21:22:54
Shinmera
ACTION wonders if he could find a way to use no-defun-allowed's time for his own projects by coercing her into spiting him for something
21:23:32
mfiano
A true ECS is impossible anyway, so can only go so far before you have stateful code
21:24:21
no-defun-allowed
Sorry, I have a waiting list of about three months, if you wouldn't mind writing your name and project down here then I'll get back to you then
21:25:04
fiddlerwoaroof
no-defun-allowed: it sounds to me like you're just saying we have to make you angry enough
21:26:43
nij
If I get a cl system from guix, how do I load it? QL:QUICKLOAD doesn't look at those paths by default after all.
21:27:15
no-defun-allowed
mfiano: Right now, I just finished the first part of redoing my regular expression compiler, which was to use (and debug) someone else's technique for submatching with a DFA. Next is to add a protocol for letting the client provide optimisations (e.g. optimising constant string searching). Then I have to look after two lock-free hash table implementations.
21:27:35
fiddlerwoaroof
nij: you have to figure out how guix expects you to configure ASDF's registry
21:27:36
mfiano
no-defun-allowed: Did I not see a post a couple weeks ago stating you were not contributing to open source anymore or something of the sort?
21:28:21
no-defun-allowed
I announced I am taking a break from Netfarm because, wow, I'm actually too fed up with people there to bother improving their lives in any meaningful way. But now I also have a paper on that to edit.
21:28:43
no-defun-allowed
mfiano: Yes, now I've decided to work on other things because otherwise I have too much spare time :)
21:29:06
mfiano
The only mention I ever heard of it is from you, so I'm curious who these people are that annoyed you. Getting the torches ready
21:30:26
mfiano
Ok then. Well one thing I know all too well is breaks are good. I would never be able to commit to one project and stay sane.
21:32:01
mfiano
Mostly because I have to figure out hard problems on my own that require subconscious thinking
21:34:28
fiddlerwoaroof
yeah, my guess is that reading guix expressions for something like nyxt might be helpful too
21:34:58
fiddlerwoaroof
my guess is that it involves `guix environment` but, unfortunately, I can't use guix because of their stance on mac support/free software
21:35:38
no-defun-allowed
In short, despite many differences of opinion on design, only one CL person has come close to saying that all my work is worthless.
21:47:55
Shinmera
no-defun-allowed: I've had people almost word for word say all my libraries are worthless. The good thing is that doesn't actually matter.
21:49:28
no-defun-allowed
Shinmera: That was a slight simplification, they said any free software was worthless. Normally I'd be laughing, but no one there disagreed there. On the other hand, they could have been laughing internally as well.
21:50:27
mfiano
All my work is worthless, in the fact that it isn't usable by others, is broken until I finish it, and is unknown by others...but I still think it is very _worthwhile_ to work on given my goals of bettering myself and the hopeful one day it will at the very least be usable to me (and others would be a bonus)
21:51:41
no-defun-allowed
Pretty sure there is no network stack (and/or operating system) without any open-source components, including proprietary ones, so I wonder how they didn't contradict themself by being able to write that.
21:53:06
no-defun-allowed
What I read was straight slander, and there's no point discussing that in itself, but that it was taken remotely seriously is telling.
21:58:15
no-defun-allowed
My thought process went something like "Here's my audience I suppose, if anyone would immediately be interested in e.g collaborative filtering for moderation it'd be them, and they're now saying no open-source program has done anything good for society. And half my time these days is spent cleaning up code and writing documentation. How kind of you!"
22:31:51
dim
I just cleaned my cache, too, so that might be related (in that it's trying to compile something?)
22:32:59
dim
anyway I wanted to hack in CL and/or pgloader this vacations, but I guess I'll do something else instead :/
22:39:49
fiddlerwoaroof
dim: what are you using? I'm on an x86-64 MBP, my M1 sees a lot more SIGABRTs with sbcl
22:41:18
dim
yeah except if you use/develop anything that doesn't know how to process EINTR when doing open(2), like Postgres and most of the source code I work with
22:41:49
dim
and except if you have hardware that doesn't support BigSur yet, too (I'm still waiting for drivers updates for an audio interface)
22:47:02
dim
Condition of type: SIMPLE-ERROR ; Unable to create pipe C ; library explanation: Too many open files.
22:47:30
dim
I had a nice shot tonight, won't happen again anytime soon if I must first fix all those things
3:19:31
nij
[crossed-post from #guix] Any guixers :)? Is there any idea how to use quicklisp on a guix system? NixOS seems to have a work-around.. but I haven't found any for guix - https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/lisp-modules/quicklisp.sh
7:14:14
rain3
hi is the source for this available anywhere ? https://common-lisp.net/project/erlang-in-lisp/
7:38:37
varjag
is there special wisdom in intercepting socket-errors in postmodern's with-connection instead of letting the application handle it?