Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:124944 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by qa.php.net (Postfix) with ESMTPS id 17A961A00B7 for ; Thu, 15 Aug 2024 14:51:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1723733572; bh=cAyFGb6ZN1VmrMQuA9SA+7iB2IWKbhcqoUI/kgfLI7I=; h=Date:From:To:Cc:In-Reply-To:References:Subject:From; b=dB7LoIPRVkB//bAEnrUO2LYqRueZFO0Es+VisR9+NDlk4mtjaKpMKptZ7nwlWKhdy /xwB34gCIJg5GrFqHF4A/F00a1JbFPqbtIqTvBHezbvwRRrifAiry/9CY63k1jqaGs p1Bwiy1dJwu2ESZ3jUURfUMBh0EgDCflyd0prDRmQo5g8kZwJKzJ91UMtdFyDUlGq8 qLa4ngh1h2KfmmrMfXQq+9aZeSE9CD072LwRUcwM6lGewEXUO35xPtjiXkb0viwiij vUWq45h+kisnYuttRU5ftDXQAOyLXS17b24Aw7qYz/Qaz3nQwEj1kY24YQpWhZcr1P WofT8EXQ4U/Dg== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id A9E4718003E for ; Thu, 15 Aug 2024 14:52:47 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DMARC_MISSING,HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from mail-qv1-f48.google.com (mail-qv1-f48.google.com [209.85.219.48]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Thu, 15 Aug 2024 14:52:47 +0000 (UTC) Received: by mail-qv1-f48.google.com with SMTP id 6a1803df08f44-6bf7a2035d9so2583156d6.1 for ; Thu, 15 Aug 2024 07:51:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=coggenterprises-com.20230601.gappssmtp.com; s=20230601; t=1723733460; x=1724338260; darn=lists.php.net; h=mime-version:subject:references:in-reply-to:message-id:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to; bh=cAyFGb6ZN1VmrMQuA9SA+7iB2IWKbhcqoUI/kgfLI7I=; b=AT6jTprgFbA4IK8uSIwaeogP7WikWoI2JEOiGyKkanTJ4/aD0hKlCjXiSDrMltyC2s BDR/fIV56b9JU+KimlQfBUEHHbG8mR3B/cPFn9xge7Bamo00ZVOwljvt80XQLtGxx3zd ZHeKWk5vfLHLEBuGrRbpp+AJGmg5yp15bCR9hnoXiPJZ7ppNBcsTyz+g6t3iGizlTStj yAPx4JMI3k4FnDPoxjNsSy2EgD+0ODJHGdDj7lfw1kfR/zHLDnCICO0gkCcKyaqH3Bpc t5V4u+xW9MVb8ejXQGUQFsGlC/90vnQoqW2SSr+NBEqOvALRoKnsqdzMuPM43P8IX5KY hinQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723733460; x=1724338260; h=mime-version:subject:references:in-reply-to:message-id:cc:to:from :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=cAyFGb6ZN1VmrMQuA9SA+7iB2IWKbhcqoUI/kgfLI7I=; b=JHyPC23h+katIknYukyNzfBqppKDvXZl4YfYTSvry/mvKQz24usfkMSpsdkzR91egK 05jABcBxd25oED/OExfoobrnsbH8rZyV8Y/Rpcri4Ls/egXKtcxXjyb9CXvfmjcQsPEC SSPaAvELEJaK/nbo4SCYqEOPVy/+b71HRdGQjX84xJQrll5/TOL53qlNgsrgFh4rB/So RQOvJUvEtF6QW42sYGWIUcYhOHeB/eBKpHAZxfU91uT/HfHU6DRgw0/r+neSXnnTUw07 rr0jKf/iCF5pfT4n2oVJGhndAzCp2fGOEKKYO/SC9npXVuOhAAiqWczlHFBtcKkLV4Z3 x+fw== X-Forwarded-Encrypted: i=1; AJvYcCXQHYtalCKkz0FFGdffq/UjNAoyq71I9BFR0hH15903wyX5do0BJxP989jHqp0dAHbSTY45iXLygH+EsoFIrhwzW27i4WU1gQ== X-Gm-Message-State: AOJu0YwoqQ3D4oQprH0RCRg1/mlI2NwyMQ6lvCSeqTcSpfojC5r2FzYN GBRua+yzswTnCaAYBYLmclIRG0yydnALwMUZ61WwQAvA3v1AAwZNWrZbCqLVksQ= X-Google-Smtp-Source: AGHT+IGAPLDFZOYXN3AGu7gUWPdwaFo1UHA3UWBo/l0ghz6NQ2JH1ReO1EizunzVSukeWZoSt4RoTA== X-Received: by 2002:a05:6214:310d:b0:6b5:7f19:e61d with SMTP id 6a1803df08f44-6bf6dd45834mr57106336d6.6.1723733459453; Thu, 15 Aug 2024 07:50:59 -0700 (PDT) Received: from Johns-MacBook-Pro-2.local ([98.97.17.196]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-6bf6fe0ddd3sm6953626d6.48.2024.08.15.07.50.58 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 15 Aug 2024 07:50:58 -0700 (PDT) Date: Thu, 15 Aug 2024 10:50:57 -0400 To: Lanre Cc: Mike Schinkel , PHP internals , Pascal Chevrel , Levi Morrison , Arvids Godjuks Message-ID: In-Reply-To: References: Subject: Re: [PHP-DEV] [DISCUSSION] C++ Enhancements in Zend API X-Mailer: Mailspring Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="66be15d1_327b23c6_f0d9" From: john@coggeshall.org (John Coggeshall) --66be15d1_327b23c6_f0d9 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On Aug 14 2024, at 5:27 pm, Lanre wrote: > > Can you point out where either of us suggested writing PHP in another l= anguage=3F You might be mixing this up with the C11 thread, which has not= hing to do with this. All I'm proposing is improving the current C++ supp= ort in the engine. https://github.com/php/php-src/blob/master/Zend/zend=5F= portability.h already guarantees compatibility with c++ thanks to the BEG= IN=5FEXTERN=5FC() and END=5FEXTERN=5FC() macros defined right at the top = and that are used all around the engine. Notice how that macro compiles t= o nothing when C++ isn't being used=3F I'm simply proposing more of those= . You aren't simply =22proposing more of those =5Bmacros=5D=22. Per your or= iginal email: Key points: - **Struct-based Approach:** Everything will still use structs=E2=80=94no= classes or non-public/non-static members. - **Isolation:** Any enhancements that can be isolated from the C impleme= ntation will be, and they will reside in a common =60zend=5Fapi=5Fcxx=60 = header file. - **Proposed Enhancements:** - Constructors and destructors, along with comparison operator overloads = for =60zval=60. - Constructor overloads for common =60zval=60 initializations. - Member methods for common =60zval=60 operations. You have been asked three times now by two different people to put togeth= er an R=46C of exactly what you are proposing. You have also been asked b= y multiple people multiple times to stop hurling insults at people you di= sagree with. If you can't or won't do these things, then I don't see the = point in continuing this thread. --66be15d1_327b23c6_f0d9 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline

On Aug 14 2024, at= 5:27 pm, Lanre <lnearwaju=40gmail.com> wrote:

Can you point out = where either of us suggested writing PHP in another language=3F You might= be mixing this up with the C11 thread, which has nothing to do with this= .  All I'm proposing is improving the current C++ support in the eng= ine. https://github.com/php/php-src/blob/maste= r/Zend/zend=5Fportability.h already guarantees compatibility wit= h c++ thanks to the BEGIN=5FEXTERN=5FC() and END=5FEXTERN=5FC()= macros defined right at the top and that are used all around the engine.= Notice how that macro compiles to nothing when C++ isn't being used=3F I= 'm simply proposing more of those.

You aren't simply =22proposing mor= e of those =5Bmacros=5D=22. Per your original email:

Key po= ints:
- **Struct-based Approach:** Everything will still use st= ructs=E2=80=94no classes or non-public/non-static members.
- **= Isolation:** Any enhancements that can be isolated from the C implementat= ion will be, and they will reside in a common =60zend=5Fapi=5Fcxx=60 head= er file.
- **Proposed Enhancements:** 
  -= Constructors and destructors, along with comparison operator overloads f= or =60zval=60.
  - Constructor overloads for common =60zva= l=60 initializations.
  - Member methods for common =60zva= l=60 operations.

You have been asked three times now by two= different people to put together an R=46C of exactly what you are propos= ing. You have also been asked by multiple people multiple times to stop h= urling insults at people you disagree with. If you can't or won't do thes= e things, then I don't see the point in continuing this thread.

=
--66be15d1_327b23c6_f0d9--