Revision 91f307bf5a2820657281457f48cee2ee0073df6f authored by Barak A. Pearlmutter on 16 January 2021, 09:16:31 UTC, committed by Barak A. Pearlmutter on 16 January 2021, 09:16:31 UTC
1 parent f506282
Raw File
crossmap
;;; -*- logo -*-

to crossmap :cm.template [:cm.lists] 2
if emptyp bf :cm.lists [op cm1 first :cm.lists 1 []]
op cm1 :cm.lists 1 []
end

to cm1 :cm.lists :cm.level :template.vars
if emptyp :cm.lists [op (list apply :cm.template :template.vars)]
op cm2 first :cm.lists
end

to cm2 :cm.thislist
if emptyp :cm.thislist [op []]
local :cm.level
make :cm.level first :cm.thislist
op se (cm1 bf :cm.lists :cm.level+1 lput first :cm.thislist :template.vars) ~
      (cm2 bf :cm.thislist)
end

bury [crossmap cm1 cm2]
back to top