jackdaniel changed the topic of #commonlisp to: Common Lisp, the #1=(programmable . #1#) programming language | Wiki: <https://www.cliki.net> | IRC Logs: <https://irclog.tymoon.eu/libera/%23commonlisp> | Cookbook: <https://lispcookbook.github.io/cl-cookbook> | Pastebin: <https://plaster.tymoon.eu/>
olnw has quit [Ping timeout: 240 seconds]
kevingal has quit [Ping timeout: 265 seconds]
Lord_Nightmare has quit [Quit: ZNC - http://znc.in]
Lord_Nightmare has joined #commonlisp
screwlisp has quit [Remote host closed the connection]
synchromesh has quit [Read error: Connection reset by peer]
synchromesh has joined #commonlisp
puke has quit [Ping timeout: 265 seconds]
puke has joined #commonlisp
jonatack has joined #commonlisp
jonatack has quit [Read error: Connection reset by peer]
random-nick has quit [Ping timeout: 252 seconds]
jonatack has joined #commonlisp
euandreh has quit [Remote host closed the connection]
euandreh has joined #commonlisp
spdegabrielle has quit [Quit: Connection closed for inactivity]
semz has quit [Quit: ZNC 1.8.2+deb2ubuntu0.1 - https://znc.in]
brokkoli_origin has quit [Ping timeout: 260 seconds]
brokkoli_origin has joined #commonlisp
semz has joined #commonlisp
Pixel_Outlaw has joined #commonlisp
wilfred has joined #commonlisp
pabs3 has quit [Quit: Don't rest until all the world is paved in moss and greenery.]
pabs3 has joined #commonlisp
Lord_of_Life has quit [Ping timeout: 246 seconds]
Lord_of_Life has joined #commonlisp
Akbar-Birbal has left #commonlisp [#commonlisp]
JuanDaugherty has joined #commonlisp
decweb has quit [Ping timeout: 245 seconds]
Akbar-Birbal has joined #commonlisp
skeemer has joined #commonlisp
synchromesh has quit [Read error: Connection reset by peer]
synchromesh has joined #commonlisp
wacki has joined #commonlisp
emaczen has joined #commonlisp
meaty has quit [Read error: Connection reset by peer]
meaty has joined #commonlisp
JuanDaugherty has quit [Quit: JuanDaugherty]
emaczen has quit [Ping timeout: 264 seconds]
mm007emko has quit [Ping timeout: 260 seconds]
mm007emko has joined #commonlisp
Pixel_Outlaw has quit [Quit: Leaving]
jadzi has joined #commonlisp
wacki has quit [Read error: Connection reset by peer]
pve has joined #commonlisp
jadzi has quit [Ping timeout: 260 seconds]
shka has joined #commonlisp
saturn2 has quit [Ping timeout: 252 seconds]
dnhester26 has joined #commonlisp
clone_of_saturn has joined #commonlisp
clone_of_saturn is now known as saturn2
X-Scale has quit [Ping timeout: 256 seconds]
X-Scale has joined #commonlisp
alcor has joined #commonlisp
<jackdaniel> NotThatRPG: what's up?
<alcor> NotThatRPG: Re.: "So if you stored a configuration file in the project root, that should work" – yes, but this is not how ocicl works OOTB (it does not generate a project-local configuration file), which is why it recommends #2 in https://github.com/ocicl/ocicl?tab=readme-ov-file#tips-and-troubleshooting
<ixelp> GitHub - ocicl/ocicl: An OCI-based ASDF system distribution and management tool for Common Lisp
rtypo has joined #commonlisp
<alcor> NotThatRPG: Although, that does raise a good point. Why does it _not_ generate (or recommend) a project-local configuration instead of using a deprecated ASDF configuration parameter.
amb007 has quit [Ping timeout: 260 seconds]
amb007 has joined #commonlisp
X-Scale has quit [Ping timeout: 256 seconds]
King_julian has joined #commonlisp
mgl has joined #commonlisp
alternateved has joined #commonlisp
King_julian has quit [Ping timeout: 248 seconds]
dnhester26 has quit [Remote host closed the connection]
dnhester26 has joined #commonlisp
ingeniot has joined #commonlisp
amb007 has quit [Ping timeout: 265 seconds]
donleo has joined #commonlisp
amb007 has joined #commonlisp
wilfred has quit [Quit: Connection closed for inactivity]
jadzi has joined #commonlisp
spdegabrielle has joined #commonlisp
alcor has quit [Ping timeout: 260 seconds]
mm007emko has quit [Ping timeout: 260 seconds]
cdegroot has quit [Quit: No Ping reply in 180 seconds.]
cdegroot has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
theruran has quit [Quit: Connection closed for inactivity]
dnhester26 has quit [Remote host closed the connection]
King_julian has joined #commonlisp
synchromesh has quit [Read error: Connection reset by peer]
synchromesh has joined #commonlisp
aadcg has joined #commonlisp
Akbar-Birbal has left #commonlisp [#commonlisp]
Akbar-Birbal has joined #commonlisp
<paulapatience> alcor: Maybe the author didn't know about this feature of ASDF.
ingeniot has quit [Ping timeout: 256 seconds]
dnhester26 has joined #commonlisp
spdegabrielle has quit [Quit: Connection closed for inactivity]
dnhester26 has quit [Ping timeout: 265 seconds]
<paulapatience> How appropriate is the C++ advice "make non-leaf classes abstract" (http://ptgmedia.pearsoncmg.com/images/020163371x/items/item33.html) to CLOS?
<paulapatience> Relatedly, what are some good books for learning how to design CLOS-based programs?
<jackdaniel> "name your non-instatiable classes *-mixin" perhaps would be more apt in CLOS context
<jackdaniel> regarding the advice about only leaf-classes being instatiable it falls short when you consider i.e mop, where you subclass standard-class from the get-go
<jackdaniel> generally CL is designed to be extensible, and subclassing something standard to extend it is, if not uncommon, certainly within the scope of expected behavior
<younder> There are few books on CLOS design. As far as I can see there is only Sonya Keens 'Object Oriented Programming in Common Lisp'
<paulapatience> jackdaniel: There is also the CLIM-style of X and standard-X, no?
rtypo has quit [Quit: WeeChat 4.4.1]
<jackdaniel> yes, but I don't find it particularily useful
<jackdaniel> there are protocol classes that have no instances
<jackdaniel> and there are standard classes that "implement" the behavior
<jackdaniel> that said, in Common Lisp the behavior is implemented by generic functions that specialize to classes, so it is not very compelling to me
<younder> I'd say CLIM was designed in a time no-one had a clear idea of what OOP was.
<jackdaniel> that's a bold claim I disagree with
<jackdaniel> clim is an example of most oop-oriented programs in cl ecosystem
<paulapatience> jackdaniel: I see. Thanks for the advice.
<jackdaniel> technically you could use protocol classes as specializers in order to have also non-standard implementations covered (given that all protocols specified for said class are implemented)
<younder> Good, I am not a CLIM expert, but I remember the period of the early 1990's as a period of bad OOP code. Object Window Library and Common foundation Classes come to mind.
<jackdaniel> so it is not "useless" per se; it is just in practice you always subclass standard-foo, not (protocol-)foo
dnhester26 has joined #commonlisp
<jackdaniel> paulapatience: from practices I've found quite useful though is separation of "actions" and "notifications"
<jackdaniel> i.e after calling the operator CHANGE-SPACE-REQUIREMENTS, when the actual space requirements changed, NOTE-SPACE-REQUIREMENTS-CHANGED is called, so the end user may specialize to it
<jackdaniel> (and if they change by some other means, the notification protocol should be invoked anyway)
amb007 has quit [Ping timeout: 276 seconds]
amb007 has joined #commonlisp
<paulapatience> In that case users would specialize to the notification and not the action?
<jackdaniel> if the user implements the action for their own class, then they specialize to the action and write an implementation, when they want to be notified about changes though (i.e to trigger something else), then they specialize to notification
<jackdaniel> action may for example fail, so :after method won't cut it; also action may propagate from bottom to the top of the hierarchy, so the actual change may be delayed
<paulapatience> Ah, then specializing to the notification means not needing to write some :around method for the action
<jackdaniel> right
<jackdaniel> and also some change may occur because another operator was invoked
<jackdaniel> or change may not happen, because the requested new state is the same as the old one
mwnaylor has quit [Ping timeout: 264 seconds]
<jackdaniel> generally NOTE function is called after all changes are finished, while with after/around methods you may have an extra spaghetti from super-/sub- class auxilliary methods
dnhester26 has quit [Ping timeout: 260 seconds]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
<paulapatience> jackdaniel: In CLIM, are the protocol classes used as specializers as you mentioned?
<jackdaniel> sure, if the method does not rely on anything implementaiton-specific then I'm trying to do it that way
<jackdaniel> all I'm saying that I'm yet to see tangible benefits of it, beyond "when I read the code I know that the method does not rely on implementaiton details"
<paulapatience> I suppose the main reason would be specifically to have non-standard implementations of foo, though you suggested that that does not happen in practice (in CLIM, presumably). I can think of a few cases it could be useful for me, though.
<jackdaniel> then perhaps I'm just not a target audience of this separation
<jackdaniel> technically, if you had specialized all protocol methods to your own class, then it would work disregarding of whether there is a protocol class or not; so it all boils down to default implementation-independent methods and perhaps external protocols that want to specialize to said protocol classes
<jackdaniel> perhaps the last part is the key here
<jackdaniel> that a client may not care about how things in clim are implemented, they just want to specialize to the particular class of objects
<paulapatience> My basic case is the following: I have foo and standard-foo, where standard-foo implements some of the protocol methods as accessors. Then in another package I have bar — a more constrained version of standard-foo — which subclasses foo, because I don't want the initargs of foo to be also initargs of bar.
alcor has joined #commonlisp
<jackdaniel> it seems to make sense in your case, sure
mm007emko has joined #commonlisp
dnhester26 has joined #commonlisp
bobcave has joined #commonlisp
dnhester26 has quit [Ping timeout: 265 seconds]
alcor has quit [Ping timeout: 248 seconds]
alcor has joined #commonlisp
rogersm has joined #commonlisp
random-nick has joined #commonlisp
dnhester26 has joined #commonlisp
rogersm has quit [Quit: Leaving...]
edgar-rft` has joined #commonlisp
rtypo has joined #commonlisp
dnhester26 has quit [Remote host closed the connection]
dnhester26 has joined #commonlisp
dnhester26 has quit [Remote host closed the connection]
dnhester26 has joined #commonlisp
dnhester26 has quit [Read error: Connection reset by peer]
dnhester26 has joined #commonlisp
dnhester26 has quit [Read error: Connection reset by peer]
dnhester26 has joined #commonlisp
dnhester26 has quit [Read error: Connection reset by peer]
edgar-rft_ has quit [Ping timeout: 272 seconds]
dnhester26 has joined #commonlisp
dnhester26 has quit [Read error: Connection reset by peer]
dnhester26 has joined #commonlisp
dnhester26 has quit [Remote host closed the connection]
dnhester26 has joined #commonlisp
dnhester26 has quit [Remote host closed the connection]
dnhester26 has joined #commonlisp
dnhester26 has quit [Remote host closed the connection]
dnhester26 has joined #commonlisp
dnhester26 has quit [Remote host closed the connection]
dnhester26 has joined #commonlisp
dnhester26 has quit [Remote host closed the connection]
dnhester26 has joined #commonlisp
dnhester26 has quit [Remote host closed the connection]
dnhester26 has joined #commonlisp
dnhester26 has quit [Remote host closed the connection]
rogersm has joined #commonlisp
dnhester26 has joined #commonlisp
dnhester26 has quit [Remote host closed the connection]
dnhester26 has joined #commonlisp
dnhester26 has quit [Remote host closed the connection]
yitzi has joined #commonlisp
mm007emko has quit [Ping timeout: 248 seconds]
mm007emko has joined #commonlisp
X-Scale has joined #commonlisp
<paulapatience> jackdaniel: I see that CLIM also has some X-mixin classes. Is the difference between protocol classes and mixin classes just a question of semantics? Because both basically implement some default behavior via methods.
<jackdaniel> the protocol class should be the very last at the inheritance list, while mixins should be at the front
<jackdaniel> the former provides default behavior while the latter frovide augmneted behavior
<jackdaniel> provide*
<paulapatience> Right, that makes sense
<jackdaniel> uh oh, I've even spelled augmented correctly (I've been checking in the dictionary :)
cmack has quit [Remote host closed the connection]
<aadcg> I've noticed that if I set LD_LIBRARY_PATH after starting SBCL (via uiop:getenv), cffi won't be able to get the .so files. on the other hand, if I set the env var before starting SBCL is does work. question: is it possible to get the env var after starting SBCL and letting cffi know about it?
X-Scale has quit [Ping timeout: 256 seconds]
rtypo has quit [Read error: Connection reset by peer]
<aadcg> perhaps I can push the path to cffi:*foreign-library-directories*
rtypo has joined #commonlisp
dnhester26 has joined #commonlisp
<nil> aadcg: It's generally not a good idea to do that, because it makes your software very dependent on the system setup, but cffi has ample facilities for that e.g. *foreign-library-directories*, define-foreign-library. See https://cffi.common-lisp.dev/manual/html_node/Libraries.html
<ixelp> Libraries (CFFI User Manual)
paddymahoney has quit [Ping timeout: 245 seconds]
synchromesh has quit [Read error: Connection reset by peer]
synchromesh has joined #commonlisp
paddymahoney has joined #commonlisp
<NotThatRPG> alcor: Thanks. I will see if I can figure this out. I don't know enough about ocicl to be able to see what the problem is. So you were saying that you had a solution that worked from the repl, but not in a config file, or was it the other way around?
<NotThatRPG> And what failed?
<NotThatRPG> jackdaniel: Wanted to check in with you about the MR you submitted to ASDF for ECL. Put some questions in the follow-up discussion.
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
decweb has joined #commonlisp
<NotThatRPG> jackdaniel: Particularly wondering if it's possible to add tests.
emaczen has joined #commonlisp
st_aldini has quit [Ping timeout: 244 seconds]
st_aldini has joined #commonlisp
mgl has quit [Ping timeout: 246 seconds]
emaczen` has joined #commonlisp
emaczen has quit [Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.4)]
emaczen` has quit [Client Quit]
emaczen has joined #commonlisp
emaczen has left #commonlisp [#commonlisp]
Th30n has quit [Quit: going off]
kevingal has joined #commonlisp
dilaver_7 has joined #commonlisp
Akbar-Birbal has left #commonlisp [Disconnected: Replaced by new connection]
Akbar-Birbal has joined #commonlisp
gooba has joined #commonlisp
dnhester26 has quit []
Cymew has joined #commonlisp
mm007emko has quit [Ping timeout: 246 seconds]
mm007emko has joined #commonlisp
chomwitt has joined #commonlisp
<alcor> NotThatRPG: My solution works with dropping a one-liner in ~/.sbclrc that calls asdf:initialize-source-registry – the solution with config files doesn't quite mesh with ocicl as it requires a tailored config for every project. For ocicl you want the project-local dependencies to be in the source registry for any project.
gooba has quit [Remote host closed the connection]
yitzi has quit [Remote host closed the connection]
cage has joined #commonlisp
cage has quit [Excess Flood]
cage has joined #commonlisp
kurfen has quit [Read error: Connection reset by peer]
jon_atack has joined #commonlisp
King_julian has quit [Ping timeout: 244 seconds]
jonatack has quit [Ping timeout: 252 seconds]
kurfen has joined #commonlisp
jon_atack has quit [Read error: Connection reset by peer]
jonatack has joined #commonlisp
mm007emko has quit [Ping timeout: 244 seconds]
<NotThatRPG> alcor: TBQH I don't love those config files myself. I ended up helping a co-worker who had created one a long time ago and forgotten its existence. I'm a fan of keeping all of my lisp config in one place instead of smearing it thinly over my home directory.
<NotThatRPG> I think you are right that if you do want to have project-specific configs, it would be nice if ocicl set them up for you. But I don't know enough about how it works to make specific suggestions.
mm007emko has joined #commonlisp
<NotThatRPG> I am a fan of project-specific configurations, though, but haven't found a tool for this that I can use successfully. I have tried qlot, which seems close, but it requires code-walking .asd files, which is problematic.
jadzi has quit [Ping timeout: 265 seconds]
rogersm has quit [Quit: Leaving...]
NotThatRPG has quit [Ping timeout: 260 seconds]
triffid has joined #commonlisp
alcor has quit [Remote host closed the connection]
alcor has joined #commonlisp
cross_ is now known as cross
mm007emko has quit [Ping timeout: 252 seconds]
chomwitt has quit [Ping timeout: 276 seconds]
mgl has joined #commonlisp
yitzi has joined #commonlisp
<ixelp> Yukari Hafner: "Lights, camera, action" - TyNET
wacki has joined #commonlisp
<beach> Impressive!
<Shinmera> I've been agonising over the physics performance especially lately.
<beach> But it turned out OK?
<Shinmera> It can handle simple things, but as soon as there's more to a scene it starts to stutter pretty badly.
<beach> Ouch!
NotThatRPG has joined #commonlisp
<Shinmera> A win across the board would probably be being able to use vector instructions for the 3d vector/matrix stuff
<beach> That's possible, right?
<Shinmera> But my brain quickly freezes when I try to think about the effort involved in making that happen in a way that properly handles different archs and cpu feature sets.
<Shinmera> Especially cpu feature sets can differ between deployment machine and target user machine, so it needs to keep multiple definitions around and switch the one used out at startup.
<beach> Hmm, yes, I see.
<Shinmera> So yeah, I've been trying to avoid having to actually do it
skeemer has quit [Ping timeout: 245 seconds]
<Shinmera> The other issue is that the physics system is very unstable in situations where multiple contacts happen simultaneously.
<ixelp> Yukari Hafner: "Bad jobs to have when your physics engine sucks: …" - TyNET
mm007emko has joined #commonlisp
zxcvz has joined #commonlisp
zxcvz has quit [Client Quit]
<beach> Who wrote the physics system?
<Shinmera> me
<beach> I see.
<Shinmera> Why do you ask? :)
<beach> Just curious as to whether you did it yourself, or hired someone.
<Shinmera> Ah.
skeemer has joined #commonlisp
Akbar-Birbal has left #commonlisp [Error from remote client]
anonpreet has joined #commonlisp
amb007 has quit [Ping timeout: 252 seconds]
amb007 has joined #commonlisp
anonpreet has quit [Changing host]
anonpreet has joined #commonlisp
robin has quit [Ping timeout: 246 seconds]
mgl has quit [Ping timeout: 245 seconds]
synchromesh has quit [Read error: Connection reset by peer]
synchromesh has joined #commonlisp
Inline has joined #commonlisp
robin has joined #commonlisp
varjag has joined #commonlisp
shka has quit [Quit: Konversation terminated!]
<quidnunc> attila_lendvai: Sort of. Consistent with your explanation I found that uninstalling my system cl-asdf (ubuntu 24.04, 3.3.6) allowed me to intall unix-in-lisp. I could then reinstall cl-asdf. However, I need to repeat the process each time to upgrade/recompile
shka has joined #commonlisp
Pixel_Outlaw has joined #commonlisp
<quidnunc> install*
anonpreet has quit [Quit: Leaving]
yitzi has quit [Remote host closed the connection]
jadzi has joined #commonlisp
anonpreet has joined #commonlisp
<mrcom> Shinmera: Maybe your physics are better than you think. I'm no mason, but that wall looks terrible. It starts out floating a little bit (there's shadow under the bottom blocks).
<Shinmera> no, my physics are terrible
clarkf has joined #commonlisp
<Shinmera> even if it had been flush it would have wobbled apart quickly
<mrcom> They drop, and everything collapses. There's no mortar, and the left-edge blocks are way overhanging. I'm surprised the top left block stays in place as long as possible.
<mrcom> OK.
<mrcom> Feedback from small jostles? A block moves down a tiny bit, the next higher drops down, the lower block can't "bounce back up"?
<Shinmera> it's a problem called simultaneous contact resolution
<Shinmera> the current system considers contacts and resolves them one at a time, which is easy and cheap. any problem like this needs to consider and resolve all contacts at once.
<mrcom> Factor out the common force vectors and severly clamp the residuals?
<Shinmera> there is no simple solution to this
<mrcom> I imagine not. What are the cheats?
<Shinmera> I don't know that there is a good one. A manual one is to put objects to sleep at the start
<Shinmera> that way it's less noticeable, but it doesn't solve the problem and invites others
<mrcom> You've got sets of two-body interactions. They have mass, and a should-be-stablish force between them, yes? So there should be characteristic frequencies to their unwanted interactions?
<mrcom> Comb filter?
<Shinmera> This doesn't work like you imagine it does
<mrcom> Nope, I'm sure it doesn't.
<mrcom> Tell me if I'm being irritating. I'm assuming you posted because you're frustrated and are kind of thinking out loud?
<Shinmera> I'm not thinking, just posting
<Shinmera> simultaneous contact resolution is a pipe dream
<mrcom> OK. Well, it looks nice. Even the collapse was very believable.
<mrcom> Yes. But you will figure out a way to cheat. We've seen your work, and it's very impressive.
<mrcom> Inverse oobleck? Loses rigidity when outside force applied?
mgl has joined #commonlisp
anonpreet has quit [Quit: Leaving]
mgl has quit [Ping timeout: 265 seconds]
ym has joined #commonlisp
attila_lendvai has joined #commonlisp
yitzi has joined #commonlisp
rtypo has quit [Quit: WeeChat 4.4.2]
rogersm has joined #commonlisp
bobcave has quit [Quit: Leaving]
clarkf has quit [Quit: ERC 5.6.0.30.1 (IRC client for GNU Emacs 30.0.60)]
drewjose has quit [Quit: Ping timeout (120 seconds)]
drewjose has joined #commonlisp
cage has quit [Remote host closed the connection]
ym has quit [Ping timeout: 264 seconds]
cage has joined #commonlisp
cage has quit [Excess Flood]
cage has joined #commonlisp
rogersm has quit [Quit: Leaving...]
jadzi has quit [Ping timeout: 248 seconds]
cage has quit [Quit: rcirc on GNU Emacs 29.4]
Inline has quit [Quit: Leaving]
NotThatRPG has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
NotThatRPG has joined #commonlisp
amb007 has quit [Ping timeout: 264 seconds]
NotThatRPG has quit [Remote host closed the connection]
NotThatRPG has joined #commonlisp
foreignmonk has joined #commonlisp
bjorkintosh has quit [Ping timeout: 260 seconds]
foreignmonk has quit [Changing host]
foreignmonk has joined #commonlisp
bjorkintosh has joined #commonlisp
mgl has joined #commonlisp
mgl has quit [Ping timeout: 252 seconds]
amb007 has joined #commonlisp
amb007 has quit [Ping timeout: 246 seconds]
amb007 has joined #commonlisp
Guest46 has joined #commonlisp
Guest46 has quit [Client Quit]
hineios23 has joined #commonlisp
synchromesh has quit [Read error: Connection reset by peer]
synchromesh has joined #commonlisp
NotThatRPG has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
NotThatRPG has joined #commonlisp
wacki has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
attila_lendvai has quit [Ping timeout: 252 seconds]
varjag has quit [Read error: Connection reset by peer]
varjagg has joined #commonlisp
lucasta has joined #commonlisp
varjagg has quit [Ping timeout: 244 seconds]
pve has quit [Quit: leaving]
edgar-rft` is now known as edgar-rft
hineios23 has quit [Quit: The Lounge - https://thelounge.chat]
shka has quit [Ping timeout: 246 seconds]
lucasta has quit [Remote host closed the connection]
hineios23 has joined #commonlisp
hineios23 has quit [Client Quit]
hineios23 has joined #commonlisp
alternateved has quit [Remote host closed the connection]
gdsg443 has quit [Ping timeout: 252 seconds]
pyook has joined #commonlisp
puke has quit [Ping timeout: 246 seconds]
alcor has quit [Ping timeout: 248 seconds]
donleo has quit [Quit: Leaving]
paddymahoney has quit [Ping timeout: 245 seconds]
NotThatRPG has quit [Remote host closed the connection]
paddymahoney has joined #commonlisp
NotThatRPG has joined #commonlisp
NotThatRPG has quit [Ping timeout: 260 seconds]
JuanDaugherty has joined #commonlisp
<jasom> mrcom: like ketchup?
<jasom> mrcom: Wikipedia also suggests molasses, whipped cream, nail polish, paper-pulp in water... https://en.wikipedia.org/wiki/Non-Newtonian_fluid
donleo has joined #commonlisp
<mrcom> Ooh, rabbit hole!
<mrcom> jasom: Hmm. Chilled caramel ice-cream topping has interesting non-Newtonian properties. This calls for experimentation. I'll figure out a Common Lisp tie-in later...
donleo has quit [Ping timeout: 255 seconds]
kevingal has quit [Ping timeout: 265 seconds]
<mrcom> Oh, I've got it. Somebody on the interwebs recommended modeling the multi-body contact problem as micro-collisions with `velocity removal and artficially decresing the coefficient of restitution".
<mrcom> That sounds kind of non-Newtonian, right?
<bike> i feel like turning object collisions into a fluid dynamics problem is probably going to make things worse and not better
JuanDaugherty has quit [Quit: JuanDaugherty]