Return-Path: Delivered-To: rainer Received: from h2774747.stratoserver.net (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) by h2774747.stratoserver.net (Dovecot) with LMTP id Jb8EAk9yT193aQAA4+3H6A for ; Wed, 02 Sep 2020 12:22:07 +0200 Return-Path: Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) by h2774747.stratoserver.net (8.15.2/8.15.2/Debian-3) with ESMTP id 082AM4Br026997 for ; Wed, 2 Sep 2020 12:22:05 +0200 Received: from relay2.uni-heidelberg.de ([129.206.119.212]) by mx-ha.gmx.net (mxgmx116 [212.227.17.5]) with ESMTP (Nemesis) id 1N6cbe-1keOSG2hp8-0183zh for ; Wed, 02 Sep 2020 12:21:58 +0200 Received: from listserv.uni-heidelberg.de ([129.206.100.94]) by relay2.uni-heidelberg.de with ESMTP; 02 Sep 2020 12:21:59 +0200 Received: from listserv (localhost [127.0.0.1]) by listserv.uni-heidelberg.de (Postfix) with ESMTP id 03B8112708A; Wed, 2 Sep 2020 12:21:51 +0200 (CEST) Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 17.0) with spool id 44699351 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Wed, 2 Sep 2020 12:21:50 +0200 Delivered-To: LATEX-L@listserv.uni-heidelberg.de Received: from relay.uni-heidelberg.de (relay.uni-heidelberg.de [129.206.100.212]) by listserv.uni-heidelberg.de (Postfix) with ESMTP id DF88B127DE3 for ; Wed, 2 Sep 2020 12:21:50 +0200 (CEST) X-IronPort-MID: 79623747 X-IronPort-RemoteIP: 209.85.128.45 X-IronPort-SenderGroup: UNKNOWNLIST X-IronPort-MailFlowPolicy: $ACCEPTED X-IronPort-Reputation: 3.4 IronPort-PHdr: =?us-ascii?q?9a23=3ASVUQpBIH39yVFkVH3dmcpTVXNAE6p7X5OBIU4Z?= =?us-ascii?q?M7irVIN56u5InmIFeGtao/llLNVJSd9vRFzurbsqztXWYN+5nHvH1ROIdUWU?= =?us-ascii?q?ojjsMb1xclHNbDEVfyefztdCEiHIJdTl5q/22TNE9PHsf4aEbOq2foqzUVXA?= =?us-ascii?q?j8ZkJuPuqgPInUgoys0vyqvZjaYgFGnj24NLF1NxiurUPOrMgZgZdKL6ErzB?= =?us-ascii?q?rPrWBUcv4Mg2hvY0+QzF7n/snl2pll/mxLvu45sc5NVaKvZ6MjUblRFygrKU?= =?us-ascii?q?gw7czv8AbGFE6BuiZaXWIRnR5FRQPC6UigDK38uSb7qOdxnRKiE5aqFeISXj?= =?us-ascii?q?Kvp+dxRRvhmWEaMT988GzWhsF0hq9Br1Stqk43xYmce4yTOPdkG8GVNdoHWW?= =?us-ascii?q?pMWNpQXC1dE8u9aYUIFe8IIedfqcH0uVIPqRK0AQTkCvnoz3dEgXr/3Kty1O?= =?us-ascii?q?pEc0mO3gs7EsoO9mvOrdr1KI8XVvqzza/H1inKdakQ0jC79YuJOhEtrPeQXK?= =?us-ascii?q?5hJNLLwBpKdUuNhVGRpIr5ejKNg75V4i7Lsqw5D7Lp1zN04xt8qTWu2Mo235?= =?us-ascii?q?PEgosEjE3C9GB5zYc5KNmyRVR0J9KpQ/4y/2mXMZV7RsQ6TiRmoiE/n/cEvo?= =?us-ascii?q?W2ZChM144myB7DQ/mAaY6J5B34SO+Le3FzgzR4e/js4nT6uVjl0eD6WsSuhR?= =?us-ascii?q?xIqTFIitmKqWoM2BzPws2AUP18+Ei6xT+VjUbY7adZIgpn8MiTY45kybk2mJ?= =?us-ascii?q?0JtE3FFSKjg0T6gpidcUA88/Sp4eDqO++0nJKXOo5qhw27CZwAwZDiU8I/NA?= =?us-ascii?q?VGH3KW/e2tkqDl/Aj5TbRGg/k8n7PW9pzXd4wdoeaiDglZ35xGiV73Biq60N?= =?us-ascii?q?kegXgMLU5UMBOBgY/zPljSIff+Rf6hilWomT1vyrjIJLrkSpnKK3HClv/mc9?= =?us-ascii?q?MfowZezxE+1dAZ+IhVBbEdCPf0QEnwstPDEhYjaUq/xKD6C5Q1148TX36OHr?= =?us-ascii?q?7MNarTtVGS4ed8RovELIQRuTv7N70k/6u01S5/yQJbJPP5m8dKOziiE/9rIl?= =?us-ascii?q?uUey/2j9MIACEXuAt7TOHrhFCGWzNJaDC+UvFZhHlzBYS4AIPEXo3ojqaG2X?= =?us-ascii?q?LxHJpNa3hGTE+WEHjoa62BXO0KaSSdOdNoiGZCXr/nVoxrhnTM/EfqjqFqKO?= =?us-ascii?q?bZ4HhSt5X42cB1ofLJlB4y6RRxCN6b0meCVH19hDlOTDhwwaM18ikfgh+TlK?= =?us-ascii?q?N/hfJfD9la4fhEBxw7OZDrxOt/E9nuWwjFc47TGmyrSdinHzw9C+kJ7YRSPh?= =?us-ascii?q?RbHNOvxlDZ0i6jEvkIkb3OBJE1/q/Y1XXrKIBxxiSO0q5plFQgTsZVUA/uzq?= =?us-ascii?q?di6wjeAZLImESFhu6rc6obxivE6GaEyyKHokhZVAd6VaiNU2oYYwPaqtHw50?= =?us-ascii?q?WKSLHLa/xvKgxa1cuLMbdHcPXshFRCAejmYZHQPz/3lGC3ChKFgLiLacuiem?= =?us-ascii?q?kQ2jncFFlRkw0X+iXjV0B2DSOgrmTCST12QAi3MgW8rK8n8iP9EhJnhxuHZE?= =?us-ascii?q?BgybevrwQYgfWNDe4V3/cEtSYtpjF+EUyymd7bWL/i70JsertRZdQl7RJJz2?= =?us-ascii?q?Xc4kZ/OYetN6AkmUQffARrl0bpzRN2DIpbjcEw9jUhy0xvKujLtTEJPyPdxp?= =?us-ascii?q?32NrDNfyPq+wuzbqfNxlzE+NOf+6NK9/Fh7lu/4UemEU0t93gh2N5QmSj5hN?= =?us-ascii?q?2CHE8ZVpT/VVwy/h5xquTBYyUz0IjT0GVlLai+tjKbhoAZQdA9wxPlRO9xda?= =?us-ascii?q?OJEAioTp8fDsmqbfMvwh2nMk9CM+dV+6o5ecihcqnegf/5DKNbhDujyF9/zs?= =?us-ascii?q?V420OI+TB7T7SQjZMC2feZ2AScSz7m1hGqtYbqmtIcPG1ALi+E0SHhQbVpSO?= =?us-ascii?q?hqZ49RUTWrJNexx9NxnILkQSQe/1nlGlBUgMI=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0DfBQBEcU9fhi2AVdFgHQEBAQEJARI?= =?us-ascii?q?BBQUBQIFKgiOBTCMEN4Q4kRIIJZtEA1ULAQEBAQEBAQEBBwEvBAEBhEsCgiM?= =?us-ascii?q?CHAYGNBMCAwEBAQMCBQEBBQEBAQIBAwMEFAEBAQgLCwgphWMMhXMBAQEDAQE?= =?us-ascii?q?QERUIAQEjFQ8LGAICJgICNAEFARwFAQ0IAQEegwSCfaMFgQQ9iyiBMoMBAQE?= =?us-ascii?q?FgkuDVYE5CQkBCHwqhUsSOYcSD4FNP4ERJwwDglo+hCeDLYJgj3kyixmbACo?= =?us-ascii?q?HgmiBCwQLmQwFKJFwDQaOU6cDhn2EKAIKBwYPI4FIgXozGjQ/gmlQGQ2OHww?= =?us-ascii?q?OCYNOildAMwI1AgYKAQEDCY4EgkUBAQ?= X-IronPort-AV: E=Sophos;i="5.76,381,1592863200"; d="scan'208";a="79623747" X-MGA-submission: =?us-ascii?q?MDG0Y/TTLVFwvDO6R/Q51Dy8tLQVJ5aw1z7Ws7?= =?us-ascii?q?wOp1gZ4W3Rflw3neFzc+MWM0n9XL83BH2wSB3GZ3EnDSRyWGka55F4o+?= =?us-ascii?q?jb2FQAWlF7N8zKxjSLd7S/RhAopXKGcCE9EWGbOIYh4CnQ9PqOapItlJ?= =?us-ascii?q?g9tXx+OoGZKgMBvv2GvOQZqw=3D=3D?= Received: from mail-wm1-f45.google.com ([209.85.128.45]) by relay.uni-heidelberg.de with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Sep 2020 12:21:50 +0200 Received: by mail-wm1-f45.google.com with SMTP id v4so3924660wmj.5 for ; Wed, 02 Sep 2020 03:21:50 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=Utgl3xIFXtugzG2YVHj1iQ30plc8OyNN4yo2OmkdHlI=; b=b2/kZK0DNnWE7U2+wjVnvDZ3wepmkbuWfmsscigFJ3Dl79kRk9RH9ek1Kayv8/HC36 oY4/XXal4i3ze/VE3J/pjGc2XR3VvfHKpRT9Wbjnza+a3CFqJs6xuZ+RNRKA5zkZiZ9R A2QEFukHWW7DuYLa5c1DKAJtaZq306jfb8Fx2+FpGRuq7kKO4uoe9HDwQJib2X8uvHJ4 GOPg+GApNhsfNt5W+McbJH0qThHAJ8zOOVc7erYJzmaKLdgRBDp5ZKflf5bCIl+mArs2 mhNBOqCwT3xsAGUmWPeP6hwbgBk9DR3aU9wmleN9YaAhP6X1gQJkgs5sXAKnb9XOObux uAqA== X-Gm-Message-State: AOAM533NB4pOFplaC1aoYgALV+6c5KN5dVwlnCoEJYUWfYJ5ae5odYv+ 4SZik1Eo57E+bzqdrH6R/vma5JMNlkKsow== X-Google-Smtp-Source: ABdhPJzxBmcUgx6iKVZoQX/+1iqLYu+mOyZEZMwAe/tvo5voaSjVLursLeKLlvApNkRMLGjwWG1jcQ== X-Received: by 2002:a1c:4e17:: with SMTP id g23mr3025840wmh.135.1599042107847; Wed, 02 Sep 2020 03:21:47 -0700 (PDT) Received: from [139.222.115.64] (ueaczc002bk88.uea.ac.uk. [139.222.115.64]) by smtp.gmail.com with ESMTPSA id t25sm5598902wmj.18.2020.09.02.03.21.47 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 02 Sep 2020 03:21:47 -0700 (PDT) References: <20200821120423.GI26860@grihete> User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 7bit Message-ID: <06043efd-eaec-4484-4e80-1d072506d89c@morningstar2.co.uk> Date: Wed, 2 Sep 2020 11:21:46 +0100 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Joseph Wright Subject: Re: box manipulations, coffins and stacks To: LATEX-L@LISTSERV.UNI-HEIDELBERG.DE In-Reply-To: <20200821120423.GI26860@grihete> Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: Envelope-To: X-GMX-Antispam: 0 (Mail was not recognized as spam); Detail=V3; X-Spam-Flag: NO X-UI-Filterresults: notjunk:1;V03:K0:tgBNjBkLa+g=:NesYoBUuWkzlb3axWds5pjFXhB yiCQQEkKcT/M/EGUxoXJXCzvwIUHAms2LONtZ470Gy6rHxoafcd05xJPi2enGeHBEpR6hde4u uHy9TUB9OgsOd/AKy1FUca7w2yDXqcjRMcwAwjkzyyGZH7jNqrJVfiI2LWJpSI2DkCro5dW4/ ZpO+FdjNPVpuguGXLaLRMfDPSqYuhDRUmNbXORdm6O0uxpdfI1uiL3Gt5JgBjXeaj4TXFGYzN J9k2rnvpw9Wco4AJjAGfUc5g2it7/87GE3ZbvmWu3zD8Wrr42PjlQECOpqGX6i3CoAQQX6N9Y GnqqYGVGMA4suLumLLTrTbqfBODvHvgRR1gNunx03HR6OBVoDWlW4TG/5oMrlB1W9jP0fq2YT XBwNOBa8iY7Z8p8eiOsHQIAXtiGeCOb+ZDupxOrG3wKP5qYZw5mvI+FHAM8Xv947dAO7jJCiF TO0xmOcQ0sgLEHiPPDxm3bvP1Zf80g4JRiO3PQxVvk2K4idvG9ALi6xEuJMfg8/PJOU4Ul0rt RGeXZJ1jKLMm7nNyGkN9DRzVB6R6TY0xvsHCU31Ff5C+PDX86ZIronZkG6CDhkl7nKwYBXsX9 dhmODMGcqEFTb/NXpMGIAx8ounPnoJSFgVIMOm1SxD7lm2eqCBq8tz9w0GPdEmLqMQDrZfLoy i2riF9SGhrOGgCBrs+1a7QLRODQiN0NVGG92RTGNYgeD+wzKD8ax1bfUfAFo+zcLd4Xiai/XN cg/zsvYlTpi9L5vFjPgjVa0L+8workgr8XGbMWrKc8omcB8ffn3RputEAFG9jBqqEgcG60EbC oLxa3JFMStHiCDRImr/o03Gi7zuYEofMF+ymHLpmmLBcjgyBrM0c3Qxu2EYZB+nGOWTNY+1nO ceq614MUr9MnfpyShWqoBJpmHd2dGFqxxstID9mV9OAXMhkKhkEZ0UawkhjtXcIKWWkjwzRNs DyLIvngdNpnSEfLArc3oTtX7XC6PUkA8clnE+GL4NLTSFbLttu7DkWmE+gL+FdQP0DlLpVFTl 1pRDIbDQ7ff3TO1iWZr+Eeztwvv2YfJpaBeJriQBWJ/xOTJhXX8oCNxXoXsag6V7hIGIRW1Zl ZtuG9lyjabK+zu0bhNW48spvs2jOBtCThHriaQgwBHMyd0jA/vUN9abWEw77sw3Jd9k1mhy74 /+hg5f8r/Qmp5Wk8qn4kXX+euKN1EVoG16x1tFEnICBdGO6xyAVBD2dgW7ay00Ts3oPKa0BgX 9/N5FPvPpcGFMgb9bWjrUcKretPiJwnxBrBIG+FDNI8hLMFC0luF7g113bmX65o1ThweWob5d 2yRKU37fgqw2b0rcYrM9KpMBqgbxEtG04JAeYnFb/p6WJVzdx/hUfB+8MO7yuJ7CE8XCzZik8 4jK8tRQ8Vcyj55C+CZCARRDXE4G3BFJEyerD/Z6vJPhsrwMAQf9XC0xMq9UxhS7y+P8nLagCh tAJdxv5Cd7IKSmRxxC/eLrZCsV1e46juBewXmUi+pVFJ0fXtCkbieCU3bnDAq5JX73X2UGvRh a0sjOd97dOUiJtJaPUB0rynruJcJ4A1wWH3NOZ0fXtvWV4BLUHSeCTPfamD/6uVZv6fQ6uTWc Dpdeo02FvMbYKMCbQxSpOhnZ6clddk4W3vzfnnRlfaVPtwLiO+imAlr1PBVaTmWLzmV+O2mc7 UCSOEEy5hhr4F4+oIqU1pwt6Cm7ZFW4GYhjNHV2+plkZ7BuEFWh7JNDj3KnzvO2iJAFo6VLsl RNggSFLRjs6G8OzCHiuo3iZcpwB1kfKb35VAQhFC1Wrb94b6FuWmnmQtWTmjGir508tOeibx1 N+QrcaYwuEpD0tbTq1+coE5VqTCYH4AiS6BqTs18+YglMI70mTcXRqrzSp3dZ61EVY6HF1sGU yXH8DpbQNCWz6l4wov4xIKY30Iyuneu7fHw3YdCOqbiOux+IZdvuL8tNGBeIzcB0OpnhGyF2x q9R5PadPEe+Y3+j+Be89eYHfCN+5JIM/q3XtKVcjT0+TMt8+AxuvGAgr1FSYkUszhhSnb/voT ZPR89sAywuOyDRKSH/NIDiwbej127ej5LIU2a7cvQs1Rs1xU/ffEbUPIOcTG5uZ8w4Dz/arQi BFIatAbnTJp3r25F5wtlJTenyXym9okqMgIQB1xrhCkahFqItLk7dTiuW+PIoSg0MVPt52D5A qO+Q8AL8ieQV5HvCN1mXQg15DhElytu7xiMOAvMMACw3F5ihzN0L+78d7rI2x0h47+a14y1/o msD85TL5G9ZvyX2BllXiDZv0nyiw7UE3w7DHGd0HVl1ZaiM/bOSn+k6FDbpMIZ8aq2cD/tulZ 7Q63G6kBig22yD0qf3OvC6DrCGtN690bcCluY1c0H+9EZr2ZdhoVexTXX5pS6JdBVnnAfVfb9 Ge90+tZ68u+nryZ9+Ea0BxZ8BIicBounqx8Uk3qMYcswWz2ObAeda09nCKp9WaAGump2iQPSa DJ4kEpOl3tx8RnM2a16nSVhHZf2q0CxUmVq69ZDXIs0+UuepyBO6h5PyOIPYQXJcGF6glkiIQ 9dJgpYPg2rpRMpz4NsKLItzqIaD/O/pfZzdBuJ6w+ASIfp8VmV/hCoGBX6xuUuuevWA+O/sjB Y0TAC75iEUzdnAYaz+J5pfJTaxsIMrjROFtM+VbGw15rAN8K61wg7fLrk7NZpNFbajk76TA8Q 7dMiW/HOsP/bQUo8nhJzCEKjtd7bjhY7nkvSbf3xhn0sYMXaRAXlMcaGF03LVD5R9DoFNQxMp cyYnNSaNoZ9qN+PN+slpE5iSpn1kaii1sOqe+tf94ojTA2ET9heFW4q+wt2my/42olvBymZkM 6udQmmq17+BznrweYQNr05746iAPI0JljWwu5RfFPN36f6TCXFc1hZ69/1hFAO6wXTa0b0wL9 KHF153GmBnCnTqEvO8EQOxj69B7wgH7du0oOnMs9Q1gfCM7l0LXOPGmRXVj0/4sW3DSy/+dRK YsuJxlYuqcg1JBxlUaEfmTGmTYtp14hThJBnCTF177aaPC+02xjfcn7wAn9Wte1Cn17It8ctu E7xeNvW+hmGrVgOpWLk343cgpQD9dQgMR8QicUMJVgihk1DcYdLyx5uDkAJjB1RAtW1yunjpF rDIGcumYo3I9ZrqH3kWpQBb3auOJhbKOPeVDmzCOCTy9i8uk9baJCwVftA46vO3tRsd65giKh 6jn5EIWIRAk+DOvrT2oJ3wn/HeyIyBp16Q4OPW42M+DI2aaxx0V9zBSyrxkOBZk5kHcR86LXy U12nt6Zt90q4OMuCzTeA0T3n0or32Dtgy3P8Ftqdj+PhJskaPtTriEyqFLvsCw3+5aomP1CIM n9kbusMUSQrDqVOnOIHzuuORlZMLbmjsiXDJINH0kwi4HH9foDBKHC5YU8SAaCcbz0/omDowa 2DQYaZjwkeTxhC3pQU0oBNwuh2Rapywb+mZMCcv+ibhuYDk6qRTIn2V8kJFXaFJ66W8n+kp1y gLPli+ycqCEavywynTBoQY5LVkKgpf2tfLJCSldOgXg/X7irGz78GR+mU5ApRdpZkoPC8Da7A p4yp3tbPhzGyGYqiEgh2qSA2ip1lkb9sBdZXgi2D11FaOQafQreFJjz61LJ88u/YeLDTXE+3D QMYSgSB/hZqhJfu/73W8kSZjLm324Ob6wgqZzNpHJWhYikbEMEdV9aUE1pPD34e3q4DLiOSHj 5hqfdBHnZHSYDpUsKhYrAOdDcJZIavRvHunrwYbs8rP1tSS9C8o+JSZUeMtxwobscjvbzH3pZ FS687xCrXkgl41YFbf/8DGFDKtQe0TZBjvumxRJdscp/sMZAyXq0uws8A1n1/loHSfpwl3zW8 bqH+nd5tzJV/ALRbnsi5HtieA0qgyZllEVKPEzebRmzD5gHES0wlVNC+VwyLIkdKvsq7FRPX2 LCGKf2ixG5NivKeHYzU2YnKnDIjGR6Pgpk5AvhwLpJE9vWpxmF4ltPcZW9FyOMIU2rrz3ikYA UjygyumRQHwjYVCqbK+d2s4n+swFIZlUKI9vB5ZcbUZJbJH47uS4lYhBqy2kAeOWEkWnbUyj7 GttOL8X7tNiVf47LuszfVTsOQ9hG9DuWcXQ1JspIrLShz1wJ2/thMbP9M8zDQPmUWm5h57PI5 /5ZVJ0xnB9cqJr/GkJrcnbtmXRVGKyb2LxY+qEN+g3PKtc5Aw7k1rbyHS4hTx8ogFJrxuKaUq 32ZWYC3p44MuaX5QJp5zqKlT6agSatGrRHUwRTKjjIFg5t74KDtA6LPo9AujF2xZXQoRzDgVX ene7NxB+QCcL7PmqxNvzaocw2uqQPUIQXzOuR94oF2y9+5oDH4o3J2Zdmq1sI0H9LgCegJoPr SPE5sN0OtP78YBFngy8p8yg2Y/P5ptoU/xk5Z47/5KaLWiwAZcdMCm4hnM1PB5YxjwKu86ogJ Zl3uE1vRCN8/maSb7gDbKDR/pf2k6SJbP9s0APLwI04mIDZc1ZbuwDLX3CAZb2Vv6JJQh7V3s qzSoyd/2+hVfAqePakgFEWU6xI4eWKjE/R1QXZyssbTXJl7IBew9cMpP95PS5QoxqmnL5LE+V q+g0mhePmGfBVIlMSwyoc626z4G9i4MSvxz17onyIJmDzsapWj+edGj4VMNpo4KFmQwFD1Z/a nt8W1lhVcrBdioDIw9qKCU50Bxs/qGGzpgZBvvS8wSVL68kcBjkQWJ6AWjegrLs4veswY//zH s3COrsDjdbGfirid86njJErFe4vX4qzm6/1BJJFtTSZQlYsoIQlOSpGelsbLvdldO299MRiF5 BWci0DIR4D2VIvjby00WhICeQ1GrbtlZflTjTUVHdOcFxwKbSHCyvzNUozkJHQs9g3PXC35Z/ 9oPvXZzEdgmulLYdWLBmPl9ns1nCAkTqCGPa+o9zu1aUn37qkZC0UuX59krXLFck+BloETqVL +gxgTMt4PXpb5SsOIBnUxb882SR7KilMC6EATZEfqftK4BEPUf838Sd6x+4+6tlz1gEEVpMa6 usog/FbIRbSYfHkW2rVNA26Jkk5YlEd1Urrd7siL0ibUaWSphjt2B3eUNt61qseyT16msQ0KQ AcFtNC67aWWL++ce01yeA+BMDUjoNKwpYtiSTRO0P2E5J9mIaC+Fq80HQTBMVPdstSoYBBorc u8l37g+ddVA/noRGbYYneuztiUugxSCHNpFCh1yxb+dM2Px9Q52TlhyADk8OAC6RQndCH5TzZ 7GJasgZFhQcPZuR4dVbkhf1zkEGW4T2u6noFb1pr5bUgs0TsdRYEs7s1/e1KQTjhlHQ3/8t+s F9yNO7SMXaVnuM5j67AzatSIGEItt88PpRDyvwA7yXKQc5VvUGf3gqwnWkXNZbFOX2dUx8+6u 00RnfvpC7F6Cg4k+N1Ds8w/EHDD5uV0ENilRGTMQLd8AtDudHXI3ow4lZBLDlhDJdOoTT6+N4 UJSNMRlWQB0PrT7+XextT0gjyri/CVUDRx2ZzCsFA5lg9OVLg8+h4Q7BL3JtCMP3a+fH2hzg+ 0z6KRekNCZbxKZrYyB+1UUrij6qdM7y4/kbrDxaUlHrM4X8ZukQEmVlvhoMKfHK6LD6vcRy4O 320vBgymymjHlS6mmgBkAGUI3pM2lI5Nzy14SrX5UQUV1rVw8Cwy3A1VlwsQkTzD1YszzbcY/ NYmHVHK+DTGyFIk8tTM5dNf4fjYLwcZdYxTvRiIE1QTEcpOcyN84VYAlA8Pm6DJKuUZbAJJUd M2V4TIDL3UK9vmT3bVam0Rf8tgc+erkWw8aqLxWJrpila6RJMf0Fq9q9Gl7uUBXA9F8zXWsCt ZQDmdbxfpjBpUls/B61Wl/V8LFCeTLJFPKO2BuLvc2K/OUFAnsrL/1f0EdziIRukmMS0amS/n ETNhWTMWjegr9XklPMEQ+0QlvMnDEzMRpNOy6Zj6vso5l13e13PYyAgFcAIgL4gLOZ4juamW+ FoybL1V7pd5qV9CWoxtyVJFeoEIYlVWaM7ABu0GxYXW9U0mautymjrdvW/AsU5YCRQNtBgb5r 4i/af7A1RUaBgx5FE4SwZlDzDV9V+ehXIkig/s2r2GpdjqXNVBpmksz08q9 X-UI-Loop:V01:NbXmfU2FauA=:55RyaTukRnKgAgm6b/DDOxXw549WIw3Gj6Sm+Fs+XtE= X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:/zE9yLO3tIY=:fLoentW5QbI9DS/eO32RO/ JP29QWV5oLWo/0jLvxkNPl259KRhyWod5UF96DMg8vDtkfDoFupxeVF9O9tllQF7n7lGIwBzb oXHL5oH4HwdZOtpeClL5mSdIZfxaT/uTNR2toz6qZjwrFjXBj3TNX5mNkjInPRoKS0n0usYOS 6IYrkBIM2PB1mtLbAEwc+gIWrdxsvyb3FyqkMqLyEI1Vk3HX0VDNC5sYMEgJI5TtlhvHaIhcr l9TkR1uKr0piI5rLdU0JxA4SILGEy57XMFODWUHOEyaNMH7cxHtWavbYp7VsQko3JabmHlYyR 4q3R0FzPK1rDk+Lj3HR8W4ftTl4ogG7BdQJw2/e60QQUUbsfKP8qmsHT5JA2hiqZQAln0dJT9 rNv3Vbp5PbzRO/RerYwonLytGcbDLZd9BqfiUozGetWgFiv+vf7KbU2f5BgvEz00jkrNStJYZ opMGXt1BXInd1zSYXmtF2Y9ooGJPTnM= X-Scanned-By: MIMEDefang 2.78 on 81.169.212.23 Status: R X-Status: X-Keywords: X-UID: 8225 On 21/08/2020 11:04, Emmanuel Beffara wrote: > Hello, > > I have been reading this list for some time and I must say that I am > impressed and enthusiastic on the recent work done on LaTeX3 and that it > did renew my interest in TeX programming. > > I am developing the ebproof package using expl3. The point of this > package is to typeset proof trees made of inference rules, as people do > in logic and computer science, which involves precise alignment > operations and construction of boxes with precise dimensions. I just > uploaded a bugfix release to CTAN because it broke with the new LaTeX > release (this is my punishment for using a private function from the > kernel although I knew I should never have done that) and it reactivated > a few questions I had regarding the proper way of programming with > boxes, so I thought I would finally ask here. > > Firstly, the basic object that my package manipulates is a box equipped > with extra information about the position of some elements inside, used > for alignment. This is clearly the situation that coffins are designed > to address and I would love to use coffins with extra poles for the > operations I use. However I cannot do that currently (so I use boxes and > property lists by hand) because there is apparently no way to extract > information about the poles, a feature that is required for my use case. > Essentially, I need to be able to compute the distance between two > poles. More generally, I think getting the coordinates of a given handle > would be a very useful thing to add to the public interface of coffins. > Do you think it would make sense? > > Secondly, the package works logically by manipulating a global stack of > annotated boxes (this follows the tree structure of the material to be > typeset and it is pleasant to work with). However, there is no natural > way to implement stacks of structured data, the seq type only provides > this functionality for balanced token lists. So my implementation uses > (1) a global hbox to act as a stack of boxes, which works thanks to > \box_set_to_last:N, and (2) a global seq that acts as a stack holding > property lists, but that uses the fact that the prop type is actually > implemented using tokens, and I am not sure this is good practice. > Besides, if (when?) I move to using coffins, this will not work anymore. > Do you think of a better approach to manipulate a stack of objects? > The only robust approach I can think of is to allocate numbered > variables on demand (like \g__stack_item_N) and use that as storage for > the stack, but this unorthodox use of registers might cause problems I > fail to think of right now. > > Would someone have thoughts or insights on all this ? > > Cheers, > Hello Emmanuel, Others are more qualified than me to comment on trees, etc. What I would note is that coffin poles are *relative* structures: if the coffin is resized, the absolute gap between them will alter. Probably once the next LaTeX release is out, other team members will chip in. Regards, Joseph