writing.exchange is one of the many independent Mastodon servers you can use to participate in the fediverse.
A small, intentional community for poets, authors, and every kind of writer.

Administered by:

Server stats:

336
active users

#peg

0 posts0 participants0 posts today

Context free grammars (CFG) are better than parsing expression grammars (PEG), because CFGs represent how we think.

Parser combinators are similar to PEGs, so they are worse than CFGs, too.

So, don't use Rust libraries nom, combine. Use lalrpop.

Don't use Haskell libraries parsec, gigaparsec, attoparsec, megaparsec, trifecta. Use Earley, happy.

See more detailed story in my new article safinaskar.writeas.com/this-is .

The story also includes some cases, where PEG and parser combinators may still be useful. Also, the article gives links to my Haskell parsing libraries.

Askar Safin · This is why you should never use parser combinators and PEGLet me tell you why you should (nearly) never use PEG (parsing expression grammars). Nearly everything I will say applies to parser combi...
#haskell#rust#parsing
Continued thread

Took my spouse nearly an hour to ask what I was doing… & I wasn’t exactly quiet😂

Me: I read an article so now I’m moving your crème de corps into a glass bottle

I do not like #loreal & they just bought another really great company #aesop & this lotion has #PEG but they do sell it in refillable form, my product usage is bare minimal so & not learning to make lotion

Everything should be refillable & sold in glass containers but what do I know🙄 #climatecatastophe

#scotland #uk #england #peg #johnbull

John Bull, that stout yeoman of distilled Englishness was, it might surprise you to know, created by a Scot called John Arbuthnot. A contemporary and friend of Jonathan Swift, Arbuthnot satirised the inter-union relationship between England and Scotland around the turn of the 18th century, personifying the two countries as siblings John and Peg.

For whatever reasons Peg slowly faded into obscurity, while Bull was embellished and reused by other later authors and cartoonists. The excerpt below, taken from Arbutnot's
THE HISTORY OF JOHN BULL describes the awkward sororal/fraternal relations:

John had a sister, a poor girl that had been starved at nurse. Anybody would have guessed Miss to have been bred up under the influence of a cruel stepdame, and John to be the fondling of a tender mother. John looked ruddy and plump, with a pair of cheeks like a trumpeter; Miss looked pale and wan, as if she had the green sickness; and no wonder, for John was the darling: he had all the good bits, was crammed with good pullet, chicken, pig, goose, and capon; while Miss had only a little oatmeal and water, or a dry crust without butter. John had his golden pippins, peaches, and nectarines; poor Miss, a crab-apple, sloe, or a blackberry. Master lay in the best apartment, with his bedchamber towards the south sun. Miss lodged in a garret exposed to the north wind, which shrivelled her countenance. However, this usage, though it stunted the girl in her growth, gave her a hardy constitution; she had life and spirit in abundance, and knew when she was ill-used. Now and then she would seize upon John's commons, snatch a leg of a pullet, or a bit of good beef, for which they were sure to go to fisticuffs. Master was indeed too strong for her, but Miss would not yield in the least point; but even when Master had got her down, she would scratch and bite like a tiger; when he gave her a cuff on the ear, she would prick him with her knitting-needle. John brought a great chain one day to tie her to the bedpost, for which affront Miss aimed a penknife at his heart
www.gutenberg.org The History of John Bull, by John Arbuthnot, M.D.

#Janet is a #functional and imperative embeddable language.

Janet features a #Lisp-like s-expression syntax, with direct support for additional data structures like tuples, buffers, and structures. Janet has special support for tail call optimization, macros, as well as interacting with #C programs. Janet's library features cooperative and true multitasking, #PEG parsing (extended #regex), and more.

Website 🔗️: janet-lang.org

janet-lang.orgThe Janet Programming LanguageJanet is a functional and imperative programming language. It runs on Windows, Linux, macOS, FreeBSD and *nix.

#COVID-19 mRNA Shots 💉 Are Legally NOT Vaccines
👉Did you know that mRNA COVID-19 vaccines aren’t vaccines in the medical and legal definition of a vaccine? They do not prevent you from getting the infection, nor do they prevent its spread. They’re really experimental gene therapies.
👉Are You in a High-Risk Group for Side Effects? The chart below lists 35 diseases that are likely to render you more susceptible to severe side effects or death from COVID-19 gene therapy injections.
👉Many of the symptoms now being reported are suggestive of neurological damage. They have severe dyskinesia (impairment of voluntary movement), ataxia (lack of muscle control) and intermittent or chronic seizures. Many cases detailed in personal videos on social media are quite shocking. According to Mikovits, these side effects are due to neuroinflammation, a dysregulated innate immune response, and/or a disrupted endocannabinoid system.
👉Another common side effect from the vaccine we’re seeing is allergic reactions, including anaphylactic shock. A likely culprit in this is PEG (polyethylene glycol), which an estimated 70% of Americans are allergic to.
#CoronaCON #VaccineInjury #mRNA #GeneTherapy #PEG #dyskinesia #seizures #neuroinflammation
https://www.lewrockwell.com/2021/02/joseph-mercola/covid-19-mrna-shots-are-legally-not-vaccines/

Replied in thread
Example: I had the rule "node <-- bare-node / component-node;" where simple-node matches e.g. "asdf" and component-node matches e.g. "asdf(qwer)".

This failed to ever recognize a component-node, because the first part of a component-node is a valid bare-node, so I got the complaint that what followed (i.e. the "(") wasn't the whitespace or port that is supposed to come after a node. With "node <-- component-node / bare-node;" it works, because the component-node can either match a component node, or in the case of a bare node it fails to match, so the choice operator goes on to try a bare-node.

#peg #brag #bnf #ebnf