freenode/#clasp - IRC Chatlog
Search
4:29:44
drmeister
Yes - I am. I'm trying to understand the concept. It's an instance that stores a function pointer that you can call - that's it - right?
4:30:50
beach
The fact that it is a function means that it has a reference to some code and another reference to the static environment.
4:34:30
beach
The code does not have access to the function object (or the funcallable standard object if you like) unless you explicitly close over it.
4:35:40
beach
Oh, and very important, set-funcallable-instance-function does not store the function argument in the funcallable object.
4:46:06
drmeister
I'm afraid to ask questions because I'm multitasking - I'm writing a proposal and I'm reimplementing our interface to C++ methods using our funcallable-instance class. I think I violate some of the things you say above.
4:48:11
beach
Well, nothing prevents you from having a particular subclass of funcallable-standard-object that contains an indirection to a function. It is just that you would not have your Common Lisp system work like that by default.
4:51:42
drmeister
I'm doing implementation specific stuff here to improve how we call C++ methods - it is working - but I'm going to want to float it past Bike and karlosz to review it.
4:52:47
beach
Speaking of which, every SICL function is an instance of some subclass of FUNCALLABLE-STANDARD-OBJECT. That way, I can use the CLOS machinery on ordinary functions.
4:53:06
drmeister
At some point I want to make these use the fast generic function dispatch compiler.
4:56:30
beach
I take it the proposal is a separate task and has nothing to do with calling C++ methods, yes?
5:00:48
drmeister
In the past four months we have expanded our ability to synthesize our molecules by about 100x using automation and large scale contract synthesis.
5:01:39
drmeister
We've made about 400 large and complex molecules out of a space of billions. More than 90% led to useful amounts of product.
5:03:46
drmeister
We are asking for funds to run them through a panel of assays to evaluate their drug properties. To ask the questions "Do these molecules, in general, have good drug properties".
5:05:27
drmeister
Cell permeability, blood plasma stability and half-life, plasma protein binding, liver microsomal stability, general cell toxicity, general solubility.
5:05:59
drmeister
It costs about $40,000 to contract a company that does this sort of thing to run 20 compounds through a panel of assays.
5:06:39
drmeister
We want to hire these folks to do the assays - they have a good reputation and are used by a lot of drug companies: https://www.cyprotex.com/
5:07:20
drmeister
These tests are used at the very early stages of drug development to assess how likely a molecule is to become a drug.
5:07:57
drmeister
For instance - if a compound doesn't get absorbed in the gut - then there is no point in putting it in a pill. It's a non-starter.
7:56:39
drmeister
::notify Bike I eliminated a lot of the old single dispatch generic function machinery including the cache. No more ECL cache. My dispatch method is a little squirrely because I often only use DEFMETHOD for a base class and derived classes need to be recognized.