Procedural Modelling in Computer Graphics automates content generation, where commonly manual methods have been employed, as in using modelling applications like Maya. Grammar-based methods allow to describe creation of objects at a higher level, encoding design decisions in rule files and enabling generation of infinite variations by just altering the parameters. Methods for the synthesis of landscapes, street networks, buildings, and vegetation have been described. In the context of the city generation, CityEngine combines some such techniques into a commercial solution that can be used to generate the whole city at once. In the context of park synthesis, the process is divided into layout generation and placement of objects in it. Typically, a park layout is either created manually and inserted into the reserved area, or a shape grammar designed for building synthesis is employed. In the first case, a change to the design or the surrounding regions could result in considerable modifications required of the user. At the present moment, generation of parks and green spaces in a city is rather limited and mainly focused on vegetation placement. The aim of our work was to design a method for park layout synthesis, which when combined with basic placement methods could be used to create believable park models. Based on the observation of real-life parks and 3D models of parks, we have derived a number of patterns, which have been translated into the rules of our novel shape grammar. In particular, we introduce a rule for creating curved regions, which, to our knowledge, has not been addressed yet at this level in grammar-based methods. We also introduce a novel way to index arbitrary subset of the boundary and provide an additional insetting operation based on that. In our work we have considered the context of CityEngine as a possible use case.