From nobody Tue Jan 23 19:38:52 2024 X-Original-To: freebsd-arch@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TKHTL6Txzz5801M for ; Tue, 23 Jan 2024 19:39:02 +0000 (UTC) (envelope-from lexi@le-fay.org) Received: from thyme.eden.le-Fay.ORG (THYME.EDEN.LE-FAY.ORG [IPv6:2001:8b0:aab5:107::10]) by mx1.freebsd.org (Postfix) with ESMTP id 4TKHTK4p0Jz4VfK for ; Tue, 23 Jan 2024 19:39:01 +0000 (UTC) (envelope-from lexi@le-fay.org) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=le-fay.org header.s=thyme header.b=ke9b9UlU; dmarc=none; spf=pass (mx1.freebsd.org: domain of lexi@le-fay.org designates 2001:8b0:aab5:107::10 as permitted sender) smtp.mailfrom=lexi@le-fay.org Received: from iris.eden.le-Fay.ORG (IRIS.EDEN.LE-FAY.ORG [IPv6:2001:8b0:aab5:106::18]) by thyme.eden.le-Fay.ORG (Postfix) with ESMTP id 01A8D29F79 for ; Tue, 23 Jan 2024 19:38:53 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=le-fay.org; s=thyme; t=1706038733; bh=xK8IprJvf4fCWVwaEjUIf4aPSjVmA7HFPAU5jGf5HYg=; h=Date:From:To:Subject; b=ke9b9UlU7Zj2wfH+bJh1ahUJ0er5P1EtARW450lRHgxtPVWT/dW94zplVsKA+GUxD xhElYIFIM2b9n/6mSqaiRxxnOj2hzOUFtJoMCBhOGtdH7tD8aRKC4NUEL+96QvGl+k 4yXqDvDc55OFTiVvTjN1qOjmzI/xcgswQveXZmqc= Received: from ilythia.eden.le-fay.org (ILYTHIA.EDEN.LE-FAY.ORG [IPv6:2001:8b0:aab5:104:3::101]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by iris.eden.le-Fay.ORG (Postfix) with ESMTPSA id DF3F98887 for ; Tue, 23 Jan 2024 19:38:52 +0000 (GMT) Date: Tue, 23 Jan 2024 19:38:52 +0000 From: Lexi Winter To: freebsd-arch@freebsd.org Subject: C++ in base, async wrappers Message-ID: Mail-Followup-To: freebsd-arch@freebsd.org List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@freebsd.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="lyoiWGA3ZE5ThIAU" Content-Disposition: inline X-Spamd-Bar: ----- X-Spamd-Result: default: False [-5.50 / 15.00]; SIGNED_PGP(-2.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-1.000]; R_DKIM_ALLOW(-0.20)[le-fay.org:s=thyme]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; R_SPF_ALLOW(-0.20)[+ip6:2001:8b0:aab5:107::10]; RCVD_NO_TLS_LAST(0.10)[]; ARC_NA(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; ASN(0.00)[asn:20712, ipnet:2001:8b0::/32, country:GB]; MISSING_XM_UA(0.00)[]; FROM_HAS_DN(0.00)[]; DWL_DNSWL_NONE(0.00)[le-fay.org:dkim]; TO_DN_NONE(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; DMARC_NA(0.00)[le-fay.org]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MID_RHS_MATCH_FROMTLD(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[freebsd-arch@freebsd.org]; MLMMJ_DEST(0.00)[freebsd-arch@freebsd.org]; DKIM_TRACE(0.00)[le-fay.org:+] X-Rspamd-Queue-Id: 4TKHTK4p0Jz4VfK --lyoiWGA3ZE5ThIAU Content-Type: text/plain; charset=us-ascii Content-Disposition: inline hi list, i've recently been working on a FreeBSD-specific project[0] written in C++, as part of which i wrote some lightweight C++ wrappers for kqueue which allow C++ users to consume kqueue in a more modern manner. for example, using coroutines (async) to replace C-style callbacks with code which is much easier to write and to read using co_await. it occurred to me that if this wrapper was included in base, it might be useful for various daemons and other bits of software that exist in base. would there be any interest if i were to submit a patch with a new base library along these lines? [0] https://git.sr.ht/~lw/netd --lyoiWGA3ZE5ThIAU Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQGzBAABCAAdFiEEuwt6MaPcv/+Mo+ftDHqbqZ41x5kFAmWwFckACgkQDHqbqZ41 x5mdqwv/Y/AjSr6dXg0zcVkyoG+Ndat+IpUQIZYxy+RqWahp/kyVwJ99Z7W8Leyg 4C5Ni1lqW+bZ9j60EGOTwix68BRHDAZb77OISVRCKdk1dbJYYlxbH23hOvdaQ3Zz PTITJhjG5CrImeEOmibiQmBONNSwNkNOHczbBCpS9ljDXV6LpkeoHCHHf0hJPozs 4o0kG2hRzXB/3xbfsIGU08NBO6uhGVb7R0YkoEEPrp0Z9dbIzglR4OP+uQ6B9DE5 bbCk8FhvVWH/Z6y+7F11cfrZuwnB8rLJZL4G99hvYOvRy0zjQFbBjdEoClcB7RJU jsJ7mp0rC87Ttt2AxCaNWkXD/S/eJBA4dSjHYWnJRt1aizInHXsPQS4+ZFzsItG6 3HtxbLa21QhBrTTFEsiQVH0fWNKuDiYinaRPnqg4sn87QeZVLYYdMWgISiYnmP2v v/ND4t6KxbASVY9Ml5sqeO6VI9j5gJ8q4MfinX0+252sphu5/rRz44MY7X2f6rCn UvNz30fm =Vn6T -----END PGP SIGNATURE----- --lyoiWGA3ZE5ThIAU--