|
Bill Allombert on Fri, 24 Oct 2025 23:32:21 +0200
|
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
|
Re: [EXTERN] Re: Definition of tokens in GP language
|
- To: pari-dev@pari.math.u-bordeaux.fr
- Subject: Re: [EXTERN] Re: Definition of tokens in GP language
- From: Bill Allombert <Bill.Allombert@math.u-bordeaux.fr>
- Date: Fri, 24 Oct 2025 23:32:18 +0200
- Cc: Hong-Phuc Bui <hong-phuc.bui@htwsaar.de>
- Delivery-date: Fri, 24 Oct 2025 23:32:21 +0200
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/simple; d=math.u-bordeaux.fr; s=2022; t=1761341539; bh=TAB17GPmnDKhX0yP2b1AvZToZ8kjvWT/NONKTWhjkDA=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=O970+J2q7ga4EIHWYYim4qA+xAMw6ZKwfsfn/5qBtVqeL/4PmsTnC/EE6fHtFq5Uy 9IpskISD0TgWqqSwkGPDQRGNBMzV/NVnHWokUhtYk8l03QSrcIjFowOARh9URDk8rl e/56Nl/VIsg/lK962nUaU8wuLQ+Pdlw6rnnlcV6glvS1AQVJnsqU42porppKvcParQ ISTDTwMsdo3hh5ExsxeQreQ9lj+F9jq28iNbFGFRxgbldWn57Jh1t3ckWvVO3+VCxM e5MJ9w5JOPSvveDKlEdlvZK/gX/Eguqn2v5OEbYXJnWUGWJFiO35yWshu3AeO2R2l8 15xahdRBYQul94ZLG+Q/OTvDY2eC0GN29EI8QudwgexAgfw7qoRrm2kVGTA7Hq+B8D eonjfwAhBYBIqA3T28qCHMTdk/sibj6yPYJm/1q7Jxf4LeNoBfOBJjn/6kr218uYzl qHOfaHf3KaJ7fe7RGAkTI2IxiHiBBSioGEFY8+VrQBPB/hXI48otaWUCf1chGSDTQU 5aiEwDSC+bN0Z35EglMpQX+EJnVvy5Td/x9/jVfTYl1871OvdvgBsD01RU4CZJ88N/ 1K5OXjO7nuv9YX1By22LOj315mSEz1aBGjvOlq9c8Ns2AjTN7/7l4GLhNa7BaW9G6S zqmhS9UQLVTQvq32/dkft970=
- In-reply-to: <576d82e9-acca-4933-9740-d4739d63bfe0@htwsaar.de>
- Mail-followup-to: pari-dev@pari.math.u-bordeaux.fr, Hong-Phuc Bui <hong-phuc.bui@htwsaar.de>
- References: <f090408a-1c65-49a8-bd20-8c4c582724dd@htwsaar.de> <aPt14M-wo7Hq_YUv@seventeen> <576d82e9-acca-4933-9740-d4739d63bfe0@htwsaar.de>
On Fri, Oct 24, 2025 at 09:59:38PM +0200, Hong-Phuc Bui wrote:
> Hi Bill,
>
> I took a look at the function. It is not really long, but I'm not sure about complexity:
> Is it possible to recognize all tokens of GP by using regular express?
Strictly speaking it is not possible using regex due to ambiguities.
For example
3!=6 is 3 != 6 (3 tokens)
while
3!==6 is 3 ! == 6 (4 tokens)
and
3!===6 is 3 ! === 6 (4 tokens)
There are other corner cases, depending how you define a token.
Note that all spaces are removed before parsing so for example
a ! = b is a != b (3 tokens)
Cheers,
Bill.