OverviewFilesCommitsIssuesDocsReleasesPeers

opencog-atomese-simd commits / 93e0549

Design alternative discussion
93e05494632f8851176f2e4ea37d9dc243d54f70
by Linas Vepštas <linasvepstas@gmail.com> · 2025-09-12T02:37:22.000Z

Changed files (2) +12 -2

Design-C.md +12 -0
……@@ -196,6 +196,18 @@ Where is this API description kept? Well, the `*-description-*` message
196196sent to the `(OpenclKernelNode "vec_add")` node should return this.
197197I guess this is hand-coded, for now.
198198
199TODO: Should this be published as
200```
201 (Section (OpenclNode "...") (ChoiceLink (Section ...)))
202```
203The rational is that the `ChoiceLink` gives a choice of kernels
204available for this particular `OpenclNode` and although they're
205available as `*-description-*`, it might be nice to make them available
206"directly"? Or maybe not ... the `(Section (OpenclNode "...") ...)`
207could be ambiguous in general, as other `Section` might pop up.
208By contrast, `*-description-*` is unambiguous and is a reserved keyword.
209So OK, leave as-is.
210
199211Open Discussion
200212---------------
201213Some philosophical questions remain as to "object permanence". Vectors
opencog/atoms/opencl/OpenclNode.cc +0 -2
……@@ -185,8 +185,6 @@ void OpenclNode::build_program(void)
185185 // is the right place. For now, stuff them into a ChoiceLink,
186186 // because that seems to be the right thing to do. (you can only
187187 // chose one.) They appear in the AtomSpace grouped together.
188 // XXX FIXME. This might need to be of the form
189 // (Section (OpenclNode ...) (Choice ...))
190188 Handle descr = as->add_node(PREDICATE_NODE, "*-description-*");
191189 Handle choice = as->add_link(CHOICE_LINK, HandleSeq(_kernel_interfaces));
192190 setValue(descr, choice);