On Tue, Jul 2, 2024 at 1:20 AM Rowan Tommins [IMSoP]
wrote:
> On 1 July 2024 15:37:49 CEST, Alexander Pravdin
> wrote:
> >I personally support the movement from the current "plain-text
> >template-first" language to a "coding-first" language, where f
aw strings in
PHP code so the usage in templates should not suffer. Or it can even
be simplified by introducing a better way to craft templates in the
new "coding-first" format of PHP files.
I also support the idea of having packages with private members,
autoloading constants and functions without using classes.
--
Alexander.
loat parameters
are converted to decimals implicitly according to the conversion rules
mentioned above.
I hope this version of the design is closer to being accepted by the
community. Please share your thoughts.
--
Best,
Alexander
--
Best regards,
Alex Pravdin
Interico
On Wed, Apr 10, 2024 at 1
ssible to make zval variable size - 64 or 128
bits? So the 128-bit decimal can be a struct that will be held in the
stack instead of pointer manipulations. Can it be achieved with the
help of macroses?
--
Best, Alexander
nd I may have a lack of knowledge
in some terms or details and may need help from more experienced
people. I'm discussing possible ways of the implementation and I would
like to help the community to develop some design that will make
future development aligned with some principles and eventually achieve
the final goal. I understand the complexity of the proposal so I'm not
standing on the implementation as a whole by some PHP version. But I
would be more than happy to know that the language is evolving in the
defined direction.
--
Best, Alexander
t; statement in the
file.
So users will be able to switch contexts explicitly and always know
what they're dealing with.
--
Best, Alexander.
On Tue, Apr 2, 2024 at 9:18 AM Ilija Tovilo wrote:
>
> Hi everyone!
>
> I'd like to introduce an idea I've played around with for a couple of
> weeks: Data classes, sometimes called structs in other languages (e.g.
> Swift and C#).
>
> ```php
> data class Vector {
> private $values;
>
> pu
Sorry for the so late reply, but I would like to continue the
discussion on this topic.
On Tue, Dec 12, 2023 at 10:04 PM G. P. B. wrote:
>> I didn't know that the strict types directive was a mistake. My intention is
>> to be able to write clean all-decimal units of code and not break the
>>
On Thu, Feb 8, 2024 at 6:25 PM Григорий Senior PHP / Разработчик Web
<6562...@gmail.com> wrote:
>
> PHPStan is out the case.
>
May I know why is it out?
I'm actively using it in my projects and it helps me a lot to not
relax and write safe code. It also helps a lot in cleaning up legacy
code. Som
On Thu, Feb 8, 2024 at 4:02 PM Григорий Senior PHP / Разработчик Web
<6562...@gmail.com> wrote:
>
> JIT I've had this solved, not only the application, but a way to.
>
> Am sharing my experience without labels "bad", "cood", "truth" or "correct",
> like you did.
>
> Your arguments are based on you
because of working with
shitty architecture.
It is always easy to write down some piece of shit just to close
tickets and fulfill initial requirements and don't care. But I still
don't understand why you keep asking the PHP language community to do
your job and fix your application instead
mb if PHP will collect
anything in its own memory in every iteration of this kind and not
dispose it during the whole request?
You don't need to reply to me, just take a deep breath and think about
it. I believe this kind of discussions is an off-topic in this mailing
list.
--
Best, Alexander
I would also suggest supporting readonly classes and creating special
attributes to help map data fields to constructor arguments. Something like
this:
readonly class User {
public function __construct(
#[PDOField('user_id')]
public string $userId,
#[PDOField('user_nam
>
> So you want to introduce a SAPI that doesn't work with any of the existing
> HTTP solutions people use that only supports HTTP requests? Or am I
> misunderstanding something?
>
> This sounds a bit like you want to merge in a tool that is designed for
> your personal product directly into core.
On Wed, Dec 13, 2023 at 6:11 PM Robert Landers
wrote:
I just ran `apt install php8.3-decimal` and tried this:
>
> $a = new Decimal\Decimal("1", 2);
> $b = $a + $a;
> PHP Warning: Uncaught TypeError: Unsupported operand types:
> Decimal\Decimal + Decimal\Decimal in
>
> So, it appears not.
>
I've
On Thu, Dec 7, 2023 at 3:36 PM Alex Pravdin wrote:
Ext-decimal:
> ...
> - Workaround: implements the Decimal class that allows basic regular math
> operations.
>
I just found out that under PHP 8.3, basic arithmetic operations on the
Decimal object variables are no longer supported and cause Typ
On Thu, Dec 7, 2023 at 11:36 PM G. P. B. wrote:
- Objects are always casted to true, GMP(0) will equal to true.
>>
>
> This is incorrect, GMP object do _not_ support casts to bool
> See https://3v4l.org/LHpD1
>
This is weird. Any PHP user would expect that a zero number can be easily
casted to b
On Thu, Dec 7, 2023 at 11:27 PM Jordan LeDoux
wrote:
You are going to run into some very difficult corners on this one. For the
> last... 8 years i guess? I have been working on an arbitrary precision
> library for PHP in userland. It utilizes BCMath, ext-decimal, and GMP,
> depending on what is
>
> Someone tangential to your proposal, have you given any thought to
> implementing this similar to how Python treats numbers?
>
Unfortunately, I don't know many details of numbers treatment in Python...
In Python, integers have unlimited precision. I’m not sure how they store
> the values int
On Thu, 27 Apr 2023 at 21:09, Rowan Tommins wrote:
> I still don't think it justifies the "mind-blowing" and "band-aid"
> hyperbole, though. It could give better errors, but the solution is still
> "never initialise decimals from floats", and that would be true whatever
> was built into PHP.
You
On Thu, 27 Apr 2023 at 07:03, Rowan Tommins wrote:
> You have to load the value somehow; bcmath accepts strings directly, so
> parses the values each time, which isn't very efficient; but php-decimal
> uses strings to construct objects, as does GMP. I guess the other option
> for a decimal would
On Wed, 26 Apr 2023 at 20:52, Benjamin Morel wrote:
> For what it’s worth, this is already solved in userland:
> https://github.com/brick/math
When I checked the sources, the first I saw was:
> final class BigInteger extends BigNumber
> {
> private string $value;
It also converts to strings ba
As a user, I want to have native decimal scalar type support. And at
the same time:
1) Use a native numeric variable type compatible with other numeric
types without typecasts: 1 + 0.5 (int + decimal).
2) Do not use BCMath that uses strings. In PHP8, passing float values
to BCMath may lead to issue
On 09/05/2021 09:48, Joe Watkins wrote:
Morning internals,
We have a spam problem on bugsnet, it's not a new problem. Nikita had to
waste time deleting 20 odd messages from bugsnet yesterday and this is a
common, daily occurrence. We clearly don't have time for this.
Quite aside from spam probl
Dear Internals,
Recently I started investigating how to migrate a fairly big project to
PHP 8 and while most of the changes looked safe-ish, there was one that
I was particularly worried about: few comparison rules were changed by
"Saner String to Number Comparisons."[1]:
Comparison| Before
I tried things like ZVAL_PTR and ZVAL_FUNC but the pointers became
invalid by the time HTTP request was served.
Alexander Mashin
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
tion and serving HTTP request.
I have made sure that scalar values in MYEXT_G survive from
PHP_MINIT_FUNCTION(myExt) into PHP method called from HTTP request.
So, how can I make sure that HashTable values are really persistent?
Alexander Mashin
/src/Matrix.php#L232-L276
)
Please share you thoughts about this.
Best regards,
Alexander
пн, 23 мар. 2020 г. в 20:58, :
> Hi internals,
>
> I have opened voting on
> https://wiki.php.net/rfc/userspace_operator_overloading, which allows
> users
> to overload operators in
regards,
Alexander
пн, 23 мар. 2020 г. в 19:04, Larry Garfield :
> On Mon, Mar 23, 2020, at 9:07 AM, Nikita Popov wrote:
> > On Fri, Mar 6, 2020 at 10:33 AM Nikita Popov
> wrote:
> >
> > > Hi internals,
> > >
> > > I've opened voting on https://
On 30/12/2018 23:29, Stanislav Malyshev wrote:
Hi!
There are 2 ways out:
* This PR https://github.com/php/php-src/pull/3698 aims to solve the
root cause: it modifies tests in order to make them generate
certificates on the fly and always be sure that their expiration date is
in the future (and
On 02/12/2018 09:16, Stanislav Malyshev wrote:
Hi!
I am seeing tons of broken openssl tests on Travis CI. Example:
https://travis-ci.org/php/php-src/jobs/462367522
All errors seem to be the same:
001+ Warning: stream_socket_client(): SSL operation failed with code 1.
OpenSSL Error messages:
002
On 02/12/2018 09:16, Stanislav Malyshev wrote:
Hi!
I am seeing tons of broken openssl tests on Travis CI. Example:
https://travis-ci.org/php/php-src/jobs/462367522
All errors seem to be the same:
001+ Warning: stream_socket_client(): SSL operation failed with code 1.
OpenSSL Error messages:
002
usenameis alexanderholman and i was just looking for ways to contribute or
just get more involved.
Regards,
*Alexander Holman MBCS <http://www.bcs.org/> AMIAP
<http://www.iap.org.uk/main/>*
07949 982 196 | 01392 669 893
mapping it to the common class or
interface, like iterable => Traversable, callable => Closure, etc
Best regards, Alexander
2017-12-26 18:59 GMT+03:00 Andreas Heigl :
> Hey All.
>
> > Am 26.12.2017 um 14:38 schrieb Sebastian Bergmann :
> >
> >> Am 24.12.2017 um 1
flectionParameter API.
What is your opinion about this? Thanks!
Best regards,
Alexander Lisachenko
way to subscribe to repo/issues/summons.
Maybe it's a good time to move internals to the public open-source system?
Best regards, Alexander
2017-10-26 1:28 GMT+03:00 Tom Samplonius :
>
> > On Oct 25, 2017, at 2:17 PM, Aidan Woods wrote:
> >
> >> anyways, don
2016-12-29 16:12 GMT+03:00 Mathieu Rochette :
> I find that using the decorator pattern is very verbose and maybe
> something could be done about that,
> an article[1] I saw proposed a "decorates" keyword to solves this, here is
> how it might look like in PHP:
>
> * the constructor is optional
There was small typo in my previous link to object comparison: new one is
https://3v4l.org/tMokY
2016-12-27 14:33 GMT+03:00 Alexander Lisachenko :
> Hi, internals!
>
> I want to propose to deprecate one more weird feature of PHP called
> "comparison of different types" ht
Hi, internals!
I want to propose to deprecate one more weird feature of PHP called
"comparison of different types"
http://php.net/manual/en/language.operators.comparison.php#language.operators.comparison.types.
Here you can check one simple example https://3v4l.org/kCOAf to see why it
should be d
Hi, internals!
Today I detected interesting difference in getting prototype methods with
reflection API.
Could you please check this https://3v4l.org/LLebD
Was it intended change?
Thanks!
2016-08-23 18:05 GMT+03:00 Lauri Kenttä :
> Could you do it without reflection, then? I don't think so.
> Thus, I think your "use case" is broken by design.
>
FYI: This use case is used by Go! AOP Framework and AspectMock libraries
that can mock even static methods in the classes, allowing testi
2016-08-23 16:40 GMT+03:00 Julien Pauli :
> My patch allows that, but I can't find a use case to it.
My use case for that was decorating of static methods with additional
behaviour, so it's possible to cache the result of static methods, etc.
Unfortunately, reflection API doesn't provide me suc
2016-08-23 16:13 GMT+03:00 Julien Pauli :
>
> No, How can this be ? B extends A , not A extends B ...
> In this case, B'sfoo() will be called , which is the equivalent to
> having a reflectionMethod from B , so useless to me.
Ok, how can I invoke Parent::whoami() with reflection and get exactl
2016-08-23 16:01 GMT+03:00 Julien Pauli :
> This :
>
> class A { public static function foo() { } }
> class B extends A { public static function foo() { } }
>
> $a = new reflectionMethod('A', 'foo');
> $a->invoke('B');
>
It's perfect way for me.
Just to be sure: in this case we will invoke A::f
2016-08-23 14:51 GMT+03:00 Christoph M. Becker :
> I suggest to deprecate all other types than NULL as first arg for static
> methods, because passing an int, for instance, makes even less sense as
> Rowan has already pointed out elsewhere in this thread.
>
Alternative suggestion (vote for Julie
First argument can be a normal string with a valid scope class name for
static methods. This can be useful for calling parent static methods, see
my example.
I think this will be comparable with Closure::call() method and scope
binding.
понедельник, 22 августа 2016 г. пользователь Rowan Collins н
Hello, there is one more issue with ReflectionMethod::invoke() for static
methods: it's impossible to call an overridden parent static method and
preserve a scope information:
// https://3v4l.org/ASntq
class foo
{
static function bar()
{
echo self::class, ' vs ', static::class, PH
If the first argument for invoke() and invokeArgs() for static methods will
be a string with compatible class name for the scope, then it can be used
as a scope modifier (like second argument for Closure::bind($instance,
$scopeClassName))
2016-08-22 17:29 GMT+03:00 Alexander Lisachenko :
> He
Last try to highlight this thread
--
With regards, Alexander Moskalev
ir...@irker.net
ir...@php.net
a.moska...@corp.badoo.com
, Alexander Moskalev
ir...@irker.net
ir...@php.net
a.moska...@corp.badoo.com
tents($fp); //<- this will work
Or you mean something else?
--
With regards, Alexander Moskalev
ir...@irker.net
ir...@php.net
a.moska...@corp.badoo.com
Sorry for annoying mail, but it's really small and simple feature, which
can be implemented by few lines of curl options. But with API realisation
questions.
Please, help me to choose correct way, and I will create new pull-request
with code and tests.
, and please help me to finish this small feature.
--
With regards, Alexander Moskalev
ir...@irker.net
ir...@php.net
a.moska...@corp.badoo.com
On Fri, Jun 17, 2016 at 6:47 PM, Christoph Becker wrote:
>
> try {
> require $fileName;
> } catch (Error $e) {
> echo "Oops, maybe deleted? " . $e;
> }
> functionDefinedInFileName();
If anyone chooses to write this kind of code, then let them figure out
why their f
Nikita, Dmitry, ping. What do you think, shouldn't we replace all possible
places with Fatal Errors with correct throwing of Error exceptions? In
this concrete case it's for "require" operator.
>From what I can see Error will give us more control over the file loading
process and make it more ato
2016-06-15 22:28 GMT+03:00 Niklas Keller :
> didn't read it was planned for all file functions.
Let's restrict my first suggestion only for "require" expression for now.
So proposal is following:
Rewrite "require" to throw an Error instead of current Fatal Error if some
file can not be loaded.
Hi, internals!
For PHP7 we have pretty errors for almost everything, even eval can throw a
ParseError exception, but not for the require expression, because it's
still producing an uncatchable fatal errors:
try {
require('no.php');
} catch (Throwable $e) {
echo 'Catch!';
} finally {
e
Hello, internals!
2016-05-05 9:48 GMT+03:00 Stanislav Malyshev :
> Maybe that's what we want to have here - freedom for everybody to invent
> their own languages - but I fear the danger of fragmentation here and
> also people implementing tons of slightly different incompatible parsers
> for AST
2016-04-26 11:15 GMT+03:00 Nikita Popov :
> As an update here, I plan to create an RFC for bundling the php-ast
> extension (maybe with minor modifications) with php-src. This was planned
> for 7.1 anyway, and with the annotations RFC under discussion, this seems
> like a good time.
>
...
>
I'll t
o the core,
providing an API via static class, for example "Php\Parser".
2015-03-03 19:12 GMT+03:00 Leigh :
> On 3 March 2015 at 11:56, Alexander Lisachenko
> wrote:
> > Good morning!
> >
> > I have cleaned https://wiki.php.net/rfc/parser-extension-api and
> re
Hello, internals!
Go! AOP was used closure rebinding to an incompatible context only for one
minor specific feature, called privileged advices, where method was
executing in the context of target class. But all main closure binding in
the framework core work only with compatible contexts, so every
2016-01-05 2:04 GMT+03:00 Andrea Faulds :
> I agree that we could do something with interfaces. I would like to point
> out that we actually already have an example of this, in the form of the
> \ArrayAccess interface, which requires you to implement all the different
> indexing operations at once
Hello, internals!
We discussed this topic early, see this thread:
http://www.serverphorums.com/read.php?7,1123371,1124223 for any additional
thoughts and ideas. I want to attach a link to the Java draft of partial
immutability of objects:
http://cr.openjdk.java.net/~jrose/values/values-0.html, it'
2015-11-02 12:22 GMT+03:00 Rowan Collins :
> Should they? func_get_args() can be used to simulate any function
> signature, so you could equally say that the following are "compatible":
Hello! Thank you for the answer.
However, question is not about func_get_args() at all, it can be removed to
Hello, internals!
I have a question about changed behavior in 7.0 for matching signature of
variadic method.
Here is an example of code:
class Foo {
public static function test($bar = null) {
var_dump(func_get_args());
}
}
class Baz extends Foo {
public static function test(
2015-10-22 18:48 GMT+03:00 Julien Pauli :
> This is very tricky use case IMO.
>
> We should absolutely focus on stability, and if we can't find a way to
> make things safe, we forbid them
> for the stability sake. If there are no way to have stable things,
> well, that's pitty but it's like that.
2015-10-19 12:19 GMT+03:00 Nikita Popov :
> This change is primarily targeting userland methods, so your use-case is
> exactly the one this is supposed to prevent. Note that you can still use
> ->bindTo($object). The only thing you cannot do is ->bindTo($object,
> get_class($object)).
It's very
Hello, internals!
Just noticed this thread and want to clarify some things with getClosure()
method. If i understood correctly, ReflectionFunctionAbstract::getClosure()
should return non-rebindable closure ONLY for internal functions, but for
userland functions binding should be still possible, ri
2015-08-03 16:10 GMT+03:00 Etienne Kneuss :
> As for PHP, It seems like what people actually want is a unique identifier
> for objects (for the lifetime of the request), but they compromise and use
> the handle instead as it is available without userland counter.
Probable, there is no actual nee
Hello, internals!
I like the idea to assign a custom identifier to the object, but why this
should be only in the core? Java has a method 'hashCode' which can be used
to return an unique identifier for specific object. So, my suggestion is to
add 'Hashable' interface for that into the PHP.
Then,
Greetings from Germany!
I work with PHP since early 2007, and would love to improve the core
functionallity. Maybe the registration on the https://wiki.php.net site is a
pretty good first step.
The registration mentions, that i should mail this adress to get full
authorization.
So, my username
Hello, internals!
I remember the crazy code for invalidating the opcache/realpath entries
from CLI.
Logic was the following: tool asks for the server name with php-fpm to
connect to via ssh connection, then it prepares a small PHP-file and
uploads it to the temp directory on this server and then
Hello.
I am Linux System Administrator since 2007. Working with php every day. I think
i actively working with php since 2008. I wanted to help php in some way for a
long time. Time goes and seems to be a good to idea to start, at least. I doubt
that my C skills will be enough to write somethi
Hi!
PR: https://github.com/php/php-src/pull/1283
--
With regards, Alexander Moskalev
ir...@irker.net
ir...@php.net
a.moska...@corp.badoo.com
ntain not a string - we report error
6) If file name cast to false - we use buffer
Please, check my commit and later I will create new pull request.
Thank you!
--
With regards, Alexander Moskalev
ir...@irker.net
ir...@php.net
a.moska...@corp.badoo.com
2015-04-24 11:10 GMT+03:00 Alexander Moskalev :
> I think It same as my current pull-request - another class with duplicate
> functionality and duplicate code. We save only few strings from base class
> with $postname field.
> What benefits we will add using inheriting from CURL
Zakhlestin написал:
>
> > On 23 Apr 2015, at 14:26, Alexander Moskalev > wrote:
> >
> > Because currently CURLFile have this constructor:
> > public __construct <http://php.net/manual/en/curlfile.construct.php> (
> > string $filename [, string $mimetype [, s
;
> On 22 Apr 2015 10:27, "Alexander Moskalev" wrote:
> >
> > Thanks to all for feedback!
> >
> > Let's try to integrate new feature to old class.
> > We have constructor in CURLFile with one required parameter: $filename .
> > To avoid BC b
Thanks to all for feedback!
Let's try to integrate new feature to old class.
We have constructor in CURLFile with one required parameter: $filename .
To avoid BC break we cannot replace this parameter. So I suggest to do it
optional and add setBuffer() method.
So we can create CURLFile with empt
use object can contain very big file)
b) Accept
Thanks!
--
With regards, Alexander Moskalev
ir...@irker.net
ir...@php.net
a.moska...@corp.badoo.com
I want to mention
http://php.net/manual/en/opcache.configuration.php#ini.opcache.enable-file-override
option, that can cache positive checks information between subsequent
requests.
Thanks!
2015-03-20 9:13 GMT+03:00 Stanislav Malyshev :
> Hi!
>
> > We're doing some performance work in WinCache,
Hello!
2015-03-05 22:40 GMT+03:00 Anthony Ferrara :
> This requires use to immediately follow namespace declarations:
>
> namespace Foo {
> use Bar; //valid
> }
> namespace Bar {
> use Foo; //valid, second namespace in file
> }
> namespace Baz {
> echo "Hi!";
> use Foo; // Invalid
Good morning!
I have cleaned https://wiki.php.net/rfc/parser-extension-api and restricted
it's scope only to the parsing API. Extension API can be implemented later
on top of
https://github.com/php/php-src/commit/1010b0ea4f4b9f96ae744f04c1191ac228580e48
and current implementation, because it requi
2015-02-25 13:37 GMT+03:00 Thomas Gielfeldt :
> Yeah, but the "problem" with this, is that your class' sort method, you
> have to implement all the possible permutations the flags can produce. This
> basically just squeezes the 11 functions into 1. The 1 interface with
> sort() and usort() splits
2015-02-25 13:21 GMT+03:00 Thomas Gielfeldt :
> I have some more proposals for how to implement this interface. Should we
> create an RFC for purposes of discussion, or do you usually do this in the
> mailing lists?
>
Best interface is described by the one single method: sort() that accepts
opti
Morning!
I want to ask this question one more time before PHP7 feature freeze: can
we the engine case sensitive from PHP>=7.0?
There is a draft for that: https://wiki.php.net/rfc/case-sensitivity
(mostly empty), so I decided to ask this question in the internals mail
list.
Pros: more simple O(1
with public properties, but only
children field will be a generator.
What do you think?
2015-02-18 22:34 GMT+03:00 Alexander Lisachenko :
>
> 2015-02-18 22:22 GMT+03:00 Dmitry Stogov :
>
>> I think the AST API shouldn't use "public" properties.
>> Using it, we w
2015-02-18 22:22 GMT+03:00 Dmitry Stogov :
> I think the AST API shouldn't use "public" properties.
> Using it, we will have to construct the whole tree of objects, duplicating
> information from AST.
> I would propose SimpleXML approach instead - construct object only for
> node(s) we currently a
> I'm okay with having stuff like ->getKindName() on the nodes, however I'd
> still keep around the free-standing functions, because they can be used
> without a node (i.e. you only need the kind AST_FOO and not an instantiated
> node).
I think that getting name of kind is useless without value o
2015-02-18 17:59 GMT+03:00 Nikita Popov :
> Alexander, I would recommend you to split this into two RFCs, one dealing
> only with AST export (and maybe pretty printing) and the second one with
> the compilation hooks. There's probably a few questions about the export
> A
2015-02-17 20:35 GMT+03:00 Tim Bezhashvyly :
> this is my first RFC proposal and I am not sure if in this email is
> supposed to contain all RFC details or just a brief idea .. which is to
> drop PHP constants in favour of “final" immutable variables.
Hello, Tim
Recently, I asked this question
Hello, Lars!
2015-02-17 22:09 GMT+03:00 Lars Strojny :
> Looks cool and I could see a couple of interesting possibilities arising.
> One thing: any particular reason ExtensionInterface is static? I could see
> a couple of benefits having extensions carry state and registerExtension()
> taking an
2015-02-17 19:25 GMT+03:00 Dmitry Stogov :
> I think yes,
> However, Alexander thinks differently
> https://wiki.php.net/rfc/parser-extension-api
> Of course this is not for 7.0
>
This RFC consists of two parts: parsing API and parser extension API. Last
one can be rejected, ho
2015-02-17 16:35 GMT+03:00 Rowan Collins :
> I think "should" is OK for extensions, but not for userland hooks. There
> needs to be a very firm definition of the right and wrong way to implement
> these hooks, which can at the very least warn the user when they are
> slipping into undefined behavi
2015-02-17 15:48 GMT+03:00 Leigh :
> So: Internal Parse AST -> Extension Parse AST -> Generate OpCodes ->
> OpCache?
>
Yes, it's correct flow.
2015-02-17 15:48 GMT+03:00 Leigh :
> So if the parser extension does anything dynamic, then OpCache will
> have the wrong version cached.
>
This restri
2015-02-17 15:29 GMT+03:00 Benjamin Eberlei :
> Well not really, depending on the path towards a require a parser
> extension is already registered or not. Or you have conditional
> registration of extensions. So you could load a file with an extension
> registered, but it still serves the old opc
2015-02-17 15:09 GMT+03:00 Benjamin Eberlei :
> The visitor API is the essential part here and you left it out.
Yes, I decided not to put Visitor in the RFC (this was added as open
question to the RFC). But this part can be discussed in the case of general
acceptance.
2015-02-17 15:09 GMT+03:0
2015-02-17 15:06 GMT+03:00 Leigh :
> Does the AST provided by the internal parser provide all of the
> information required to be able to turn it back into source code?
>
> Yes, this should be possible, via zend_emit_op*() and zend_compile*()
2015-02-17 15:06 GMT+03:00 Leigh :
> Re: Extending t
Hello, internals!
I want to introduce a RFC for providing a userland API for accessing an
Abstract Syntax Tree of the source code and to provide userland parser
hooks for source code modification:
https://wiki.php.net/rfc/parser-extension-api
Thanks!
2015-02-16 15:31 GMT+03:00 Benjamin Eberlei :
>
> My question is how do i evaluate this at runtime? I suppose a function is
> necessary like evaluate_ast(...), but that requires passing the context.
> many many open questions and as nikic points out this should probably be
> delayed to 7.1 becaus
1 - 100 of 242 matches
Mail list logo