libera/commonlisp - IRC Chatlog
Search
18:29:18
jeosol
Josh_2: I didn't mean it in a bad way, but it's just hard to explain, on this forum. I will have pictures during the talk to make it clear
18:30:10
jeosol
This is one part that computes F(X) for a given X, then the other parts is the optimizer part to find the best value of X that maximizes the objective function. But this part was the most critical and most difficult
18:32:34
jeosol
Josh_2: No it isn't per se, not now, due to other issues beyond me. But I do plan to give access to students in less developed countries trying to do research as done in the west. But access is probably going to be online. For this use case, the container packages everything that is needed, code+data+3rd party exes need to run them
18:34:10
jeosol
The problem is, the latency. On my computer, if I run a small case (one smaller example), it takes < 1 second on my local box. If I run to a docker still on my local box, it takes 3 seconds, and longer if I do a DNS lookup. SO the time begins to add up
18:35:56
jeosol
The benefit is the student has none of the tools, expertise, etc, but has internet access, and can sacrifice the possibly high latency. Everything then reduces to a call.
18:36:53
jeosol
Josh_2: access is just receiving a token at this time, and use whatever language CL, Python to make the requests.
18:39:03
jeosol
haha. I can't afford to put everything in clusters around the world, but it's possible later. Right now, resources reside in central US
22:58:21
TMA
in my experience, the answer to this type of technical question is either really obvious to the asker as soon as they ask it; in the remaining cases the answer is usually "no, try thinking more"
22:59:09
ecomcon
pjb: sure. In a graphical application, I have a BINARY-PARTITION class with two fields, PRIMARY and SECONDARY, that point to each subdivision. I've subclassed BINARY-PARTITION into VERTICAL-PARTITION and HORIZONTAL-PARTITION, which have no fields, for the purpose of implementing separate DRAW and PICK methods.
23:00:32
pjb
If you didn't have subclasses, you'd have to add an ORIENTATION slot, and in the single method, test for it. It's better in terms of OOP, to define the subclasses, indeed, to define specific methods for them.
23:01:20
ecomcon
At first, BINARY-PARTITION had an ORIENTATION field, which told DRAW how to behave, but I thought that was essentially the logic of multiple dispatch, so I turned them into subclasses
23:01:24
pjb
ecomcon: notice that in CL we also have CHANGE-CLASS, so you can change the orientation easily.