3 ms·
Shouldn’t lisp macros make it easy to present such a nice syntax? Perhaps the author could easily implement that bit, if not the wide rows. Or is that the point
by jitl 1y ago
Shouldn’t lisp macros make it easy to present such a nice syntax? Perhaps the author could easily implement that bit, if not the wide rows. Or is that the point you’re making?
There is a dl-rule here: https://github.com/deosjr/deosjr.github.io/blob/15b5f7e021537e008d1bbccc86c6b0f16503f259/dynamicland/modules/datalog.scm#L91 https://github.com/deosjr/deosjr.github.io/blob/15b5f7e02153...
- kragen 1y agoI don't think you need Lisp macros for it; you could use just a regular Lisp function. I don't think the standard R5RS macros are powerful enough to grovel over the query expression to make a list of the free variables, but then, standard Scheme also doesn't have records. I think Guile has a procedural macro system that you could use, but I don't think it would be a good idea. Yes, I think the semantic divergence is more fundamental. Triple stores and graph databases and binary relations are awesome, but they aren't what Datalog is.