Parsica - PHP Parser Combinators
@parsica_php
Followers
169
Following
12
Media
14
Statuses
112
The easiest way to build robust parsers.
Joined June 2020
We released v0.6! The killer feature is an easy way to parse expressions, with operator precedence, associativity, unary & binary operators, parentheses, ... All in a few lines of code!
2
3
13
Sad news: Toon Daelman (@tinydroptest2) has passed away from cancer. He was the co-author and lead maintainer of Parsica. He also blogged about PHP, FP, & software development, and organised the DDD Belgium meetup. We will miss you Toon.
3
1
22
Finally had an opportunity to use @parsica_php today. Congratulations to the team! (afaik that must be @tinydroptest2 and @mathiasverraes) It works really well, and after fighting for a few hours with the concepts, now I'm making a simplified @markuadoc parser.
2
4
17
Looks like we're featured in this week's @phpweeklynews! 🆒😎
0
1
1
We just released Parsica version 0.8.1, with some minor speed improvements over the previous version. Check it out! https://t.co/fC9xo6cUB4
github.com
PERFORMANCE: use static keyword on all closures PSALM: update some annotations to work with newer psalm versions PERFORMANCE: simplify appendSuccess in the Succeed class PERFORMANCE: reduce indirec...
0
1
4
Last week we released v0.8.0, with some nice performance improvements. The JSON parser became twice as fast, and the changes made will also improve the speed of your own Parsica parsers ⚡️ https://t.co/v9YBRO6R9N
github.com
PERFORMANCE: Use strlen() instead of mb_strlen() to find EOF DEPENDENCY: Add phpbench as a dev dependency PERFORMANCE: Succeed: use property instead of internal getter call on the hot path PERFORMA...
1
1
11
Is there anybody in my timeline working with PHP Psalm that understands why I have to suppress MixedReturnTypeCoercion in this change? I'm pretty sure the types are the same as before the change... 🤔💭 https://t.co/cxgZ1alx6c
github.com
Added a benchmark which encapsulates the old implementation and compares to the new implementation Created the new implementation based on a while loop This is 4 times faster than the old many in ...
1
1
0
20:15 CET we'll be live coding on @parsica_php on @beausimensen 's stream. We have some major performance problems, and we're about to find out where we can improve! 🙌🏇 https://t.co/z7EIVEyx4e
0
2
1
@DouglasShieldo @parsica_php Cool, Parsica was the first thing that came into my mind when thought of building a parser for this language
0
1
1
@parsica_php is fun! Although ... Instead of writing 2 regular expressions, I spent quite some time searching for and experimenting with the parsers :)
1
1
2
@tcoopman @jovaneyck @parsica_php I'm on my phone but basically go here https://t.co/5bVbGmtQpk, scroll to the 6th example, replace the line for division with line for addition. You also need some setup code from the start of the page. No challenge at all, it's like 10 lines total.
0
0
0
And @Wasquen who was the very first sponsor! (Sorry, could't find the right Twitter handle to match with your really name)
0
0
2
Try the new Parsica 0.6 to build your first parser in PHP in *minutes*: https://t.co/XvFJrijySY Thanks to @tinydroptest2 @clementd @marcoshuttle @malk_zameth @gnumoksha @ocramius @fabiocarneiro and everybody we're forgetting who contributed brain power or sponsorships ❤️
1
3
7
We believe the expression parser generator is something never before done in an open source PHP project, so we're very excited :-) We also did some performance improvements and other small things.
1
3
3
We added a bunch of documentation, which will allow you to build your own expression language in no time.
1
1
0
Should we have PHP8 as the minimum? Considering that Parsica 1.0 is still a long time away, but also considering that we don't really *need* PHP8, but also considering that we really want ✨Shiny✨New✨PHP✨🤩
3
1
2
We have a new sponsor, thanks @gnumoksha for your support! 🙏
0
1
2