text:
Saint Michael: Early Anglo-Saxon Tradition/Appendix: Saint Michael and Saint George

"Officially the patron saint of England since the Order of the Garter (1348), St George had been invoked by British soldiers who cried ‘Before George!’* [*some years before exclaiming ‘By George!’] as early as the Crusades at Antioch (1089). Though George was undoubtedly a historical character, the apocryphal tale of his slaughtering the dragon (at a pond near Silene, Libya) is more in keeping with the flavour of the modern interjection."

Alongside St Michael there is a second saintly dragon slayer, St George. That there are links and confusions in the popular mind between St Michael and St George is indisputable because of the pest-control they both offer and because their iconographies show similarities. One day many years ago, in Braemar, I was in the company of Father Morrow of Humanum Vitae as we strolled through the chapel of Mar Lodge (now a National Trust property). This chapel is decorated with a series of pictures of a purely Biblical nature, and we were identifying the depicted characters when we came to a representation of a dragon-slayer whom Father Morrow named ‘St George’ until I pointed out that St George was not in the Bible but St Michael surely was; besides, the figure was wingèd. Yet this incident serves to point out the need for the present appendix since St George is often regarded as an earthly manifestation of St Michael and sometimes confused with the archangel.

April 23rd in the Gregorian calendar, May 4th in the older Julian one, is the feast-day of St George, dragon-slayer, Christian martyr, and patron saint of England, Ethiopia, Georgia, Malta, Gozo, Portugal, Aragon, Catalonia, and so forth—the list of patronages is lengthy, as is that of St Michael. The name ‘George’ comes simply from the Greek word for a farmer: Γέ, ‘the earth’ and εργόν, ‘to work,’ giving γεώργιος, ‘earth-worker, farmer,’ as in Virgil's treatise on farming, the Georgics. This suggests that St George is to be regarded in the first instance as a homely, hard-working, and down-to-earth saint—no archangel, he, but apparently a martyr.

Donald Attwater sums up what little is known of GEORGE, martyr:

"Third-fourth century; feast-day 23 April. St George, patron saint of the kingdom of England, of soldiers, of boy-scouts, and titular saint of numerous churches throughout the world, was one of the most famous of the early martyrs, and his reputation is still alive, especially in the East. But no historical particulars of his life have survived; and such are the vagaries of his legend that earnest endeavours have been made to prove that he never existed, or that he was somebody else, or that he represents a Christianized version of one or other of the pagan myths. These endeavours are more remarkable for their ingenuity than for their cogency. Veneration for St George as a soldier saint was widespread from early times, and its centre was in Palestine, at Diospolis, now Lydda. St George was probably martyred there, at end of the third or the beginning of the fourth century. That is all that can be reasonably surmised about him; as early as the beginning of the sixth century he was referred to as a good man ‘whose deeds are known only to God’. Wikipedia, loc. cit., identifies the quote: Pope Gelasius I stated in 494 that George was among those saints ‘whose names are justly reverenced among men, but whose actions are known only to God’ and credits the remark to Encyclopaedia Britannica."

Trying to find out more than this brief bulletin conveyed, I did the only thing a Church of Scotland preacher could do under the circumstances—I looked him up in my breviary. And there he was: ‘April 23rd. Sancti Georgii Martyris—Semiduplex: St. George, Martyr—Semi-double—Red vestments.’ The Mass Protexisti, from the Common of a Martyr in Paschal Time, except for the following:

"Collect.

Deus, qui nos beati Georgii martyris tui meritis et intercessione lætificas: concede propitius; ut, qui tua per eum beneficia poscimus, dono tuæ gratiæ consequamur. Per Dominum nostrum.

O God, who doest gladden us by the merits and intercession of blessèd George, thy Martyr: grant, in thy mercy, that we, who ask for thy blessings through him, may obtain them by the gift of thy grace. Through our Lord."

Because of mediaeval additions to the original legends about St George, the reform of the Roman Calendar of 1969 reduced his cult to a local one, but this happened to other favourite saints, too, even to St Christopher who was described as a canine giant twelve fathoms high; the Old English Martyrology says that St Christopher ‘had a dog's head, and his locks were extraordinarily long, and his eyes gleamed as bright as the morning star, and his teeth were as sharp as a boar's tusks.’ It's no wonder he got struck off!

Attwater summarizes the tale of St George succinctly:

"Legends of St George exist in a large variety of forms, in which scholars have not been able to detect a single reliable detail. A very great number of recensions of the supposed Acts of St George exist not only in Greek and Latin, but in Syriac, Coptic, Armenian, Ethiopian, and Turkish, differing often very widely in their contents. The story popularized by the book called the Golden Legend by St James de Voragine in the later Middle Ages represents George as a ‘knight’ from Cappadocia, who at Silene in Libya rescued a princess from a dragon ‘which envenomed all the country.’ George's dragon-control service led to the baptism of thousands of persons. Then, after a number of crude miraculous happenings, George fell a victim to Diocletian's persecution, being tortured and beheaded at Nicomedia, for his Christian faith. The Golden Legend was translated and published in England by William Caxton."

In his famous essay on Clive of India, Lord Macaulay remarked, ‘Every schoolboy knows who imprisoned Montezuma, and who strangled Atahualpa.’ He could also have said, with justification, ‘Every schoolboy knows St George slew the dragon,’ but the knowing schoolboys date from only the twelfth century, before which date there is no mention of George's doing anything of the sort. Alban Butler, in his Lives of the Saints, notes:

"The story of the dragon, though given so much prominence, was a later accretion, of which we have no sure traces before the twelfth century. This puts out of court the attempts made by many folklorists to present St George as no more than a Christianized survival of pagan mythology, of Theseus, for example, or Hercules, the former of whom vanquished the Minotaur, the latter the hydra of Lerna. There is every reason to believe that St George was a real martyr who suffered at Diospolis (i.e., Lydda) in Palestine, probably before the time of Constantine. Beyond this there seems to be nothing which can be affirmed with any confidence."

The legend of St George reached England at an early date, perhaps the seventh century, as witness an early stained-glass window at Jarrow, Bede's Martyrology, the Old English Martyrology, and a metrical homily by Abbot Ælfric of Eynsham. The homily survives in a manuscript in Cambridge University Library while three others that originally belonged to Sir Robert Cotton were burned in the fire of 1731; the remnants are now in the British Library in London. NR Ker lists the manuscripts:

 * {| style="white-space: nowrap;" cellspacing="0"

 * Cambridge, University Library Ii. I. 33 (s. xii2), ff. 144-7 VIII k mai. passio Sancti Georgii martiris. Beg. ‘Gedwolmenn awriton gedwyld.’ Coll. Skeat, i. 306. [Walter W. Skeat Ælfric's Lives of the Saints (1881-1900)]
 * British Museum, Cotton Julius E. vii (s. xi in), ff. 72-74 VIIII k maii natale Sancti georgii martyris. Pr. Skeat, no. 14.
 * British Museum, Cotton Otho B. x, ff. 1-28, 31-50, f. ‘190’ Natale Sancti Georgii Martyris. As Skeat, i. 306. All lost.
 * British Museum, Cotton Vitellius D. xvii (s. xi med), ff. 4-92, f. ‘142v’ IX. K. Mai. Natale Sancti Georgii. As Skeat, i. 306. All lost.
 * }
 * British Museum, Cotton Otho B. x, ff. 1-28, 31-50, f. ‘190’ Natale Sancti Georgii Martyris. As Skeat, i. 306. All lost.
 * British Museum, Cotton Vitellius D. xvii (s. xi med), ff. 4-92, f. ‘142v’ IX. K. Mai. Natale Sancti Georgii. As Skeat, i. 306. All lost.
 * }
 * }
 * }

Ælfric makes no mention of the dragon, and the same holds true for the Early South-English Legendary. St George was a holy man of Cappadocia and a convert to Christianity:

 * {| style="white-space: nowrap;" cellspacing="0"

 * Seint George þe holie man : ase we findez i-write
 * In þe londe of Cappadoce : he was i-bore and bi-ȝite.
 * Þe false godes he for-sok : and tornede to cristine-dom,
 * And louede Iesu crist swiþe wel : and holi man bi-com....
 * }
 * Þe false godes he for-sok : and tornede to cristine-dom,
 * And louede Iesu crist swiþe wel : and holi man bi-com....
 * }
 * }
 * }

He refused to worship Dacian's false gods and was horribly tortured—he was scourged and salted, put on a Catherine wheel of swords, and thrown into a furnace of boiling lead. He prayed to Christ for a boon, after which his head was struck off:

 * {| style="white-space: nowrap;" cellspacing="0"

 * Aungles nomen is swete soule : and to heuene beren on heiʓ.
 * Þare he is in grete Ioye : þat last with-outen ende.
 * Nov god for seint Georges loue : late ore soule þudere wende.
 * }
 * Nov god for seint Georges loue : late ore soule þudere wende.
 * }
 * }
 * }

But whence and when did the dragon become part of the legend? The dragon slaying is not in Ælfric or Early South-English Legendary but comes to England in the mid-thirteenth-century Golden Legend of St Jacobus de Voragine as noted above. A water-dwelling dragon threatens a town in Libya usually called Silene. Sheep are fed to the dragon to appease it, then a girl and a sheep each day. By lot the king's daughter is chosen. She is rescued by the knight-errant St George who wounds the dragon with his spear. The princess ties her girdle round the dragon's neck and leads it like a dog to the city. St George refuses great riches from the king, but asks the king to promise to succour the poor, maintain churches, honour priests, and keep all religious services. After other adventures, including another dragon fight, St George dies under torture.

This dragon addition to the earlier tradition elevates St George from the realm of myth to that of chivalric, Christian warrior and martyr, the miles Christianus armoured by St Paul (Ephesians 6:11-18) ‘since it presents him in the guise of a gallant Christian knight who defeats the ultimate enemy, the Devil, rather than a mere heathen host. The motif of St George fighting a dragon is by far the most frequently depicted subject drawn from his iconography; indeed, it is one of the most popular images in Christian art, with several hundred medieval examples extant.’

Riches notes that in the earliest written version of his dragon legend (twelfth century) St George subdues the dragon with the sign of the cross, like SS Margaret and Martha. She adds an interesting parallel to Beowulf, for Grendel was also the inhabitant of a swamp. Both Beowulf and his dragon die. Beowulf also kills Grendel's Dam, a specifically female monster, and in some later versions of his story St George kills a specifically female monster. St George kills human foes, often female ones. The dragon represents darkness and evil in opposition to the light and good of the heroic saint, and St George's dragon is also found as the serpent in the Garden of Eden; The German panel painting The Paradise Garden (1410? 1450?) by the Master of Oberrheimischten shows the hortus conclusus of amour courtois but it is also the Garden of Eden. Sometimes the serpent is depicted as having an angel's head or very obvious female attributes, so it is Lucifer/Satan or Lilith; the German artist Lucas Cranach the Elder's The Fall of Man (late fifteenth century) shows St Michael on foot, wingèd, wearing contemporary armour confronting a fig-leafed Adam, a naked Eve, and Satan in the shape of Lilith, with a serpent's tail but a full-breasted female figure from the waist up and with a human face.

The late mediaeval idea of the imitatio Christi as expounded by such as Thomas à Kempis signifies copying the life of Christ leading to resurrection and salvation rather than dwelling on Purgatory and threats of eternal pain and the cult of the Virgin intersects with that of St George, ‘Our Lady's Knight,’ who is the Virgin's champion, as in the theme of ‘courtly love’ where there is ideally chastity rather than the consummation of desire (pp. 68-69); ‘men callis hym oure lady knycht’ (Scottish Legendary l. 14) and ‘oure ladyes owen knycht’ (Lydgate, l. 85), and MS British Library, Egerton 3307, fol. 63b urges

 * {| style="white-space: nowrap;" cellspacing="0"

 * Enfors we us with all our might
 * To love Seint George, our Lady['s] knight (frontis).
 * }
 * To love Seint George, our Lady['s] knight (frontis).
 * }
 * }

And the next question must be when and how does this militant saint become the patron saint of England, for the answer is not immediately obvious. He was supposedly born very far away, and would never have even heard of England. He is patron saint of many very distant towns, counties, and countries—Ethiopia, the Mediterranean islands of Malta and Gonzo, Portugal, Aragon, Catalonia, and so forth. Riches claims the country of Georgia too, but Wikipedia considers this attribution a back-formation from the English name.

In Germany he was one of the Vierzehn Heiligen, the ‘Fourteen Holy Helpers,’ and in Bohemia, in Prague, atop Hradčany Hill are Pražský Hrad (Prague Castle) and Katedrála Svatého Víta; and in the shadow of the neo-Gothic splendour of St Vitus Cathedral are to be found a statue of St George slaying the dragon, St George's Square, and the Convent of St George, founded in 973 to mark the elevation of Prague to a bishopric; it survived as a Benedictine nunnery until Joseph II turned it into a barracks in 1782, and it is now the Czech National Gallery. To the east of the mighty cathedral, behind a somewhat incongruous Baroque façade, lies the Romanesque Basilica of St George, founded about 920 and boasting a marvellous twelfth-century crypt.

In Normandy one can discover early veneration of St George, as Riches notes: Before the Crusades, in Europe as early as the sixth century, St Gregory of Tours (d. c. AD 594) tells of the veneration of St George relics in France and early in the same century Clovis, king of the Franks, dedicated a monastery to the saint near Cambrai and his wife Clotilda dedicated a nunnery near Paris in his name. St George supposedly first aided the Normans against the Saracens at Cerami in 1063, then at Jerusalem and Antioch in 1098. The Jerusalem rescue is told in the Golden Legend; the Christians are assisted by a figure in white armour marked with a red cross:

"Then come St George, clothyd yn whyte and a red cross on his brest and yode up the laddyrs and bade the cristen men com affyr hym."

The similar Antioch episode is in the anonymous Gesta Francorum and is repeated by William of Malmesbury (p. 12). So St George the warrior was the patron military saint upon whom both the English and the French called in the battle of Crecy, for instance. Cook and Herzman explain:

"The military character of Germanic society posed the same difficult problem of cultural assimilation that the conversion of Constantine had earlier, for Christianity in its origins was essentially pacifist. As late as the fourth century the most popular saints included men who refused to fight in the army or who left the military in order to pursue lives of holiness (for example, Saint Sebastian and Saint Martin of Tours). Although Ambrose condoned violence and Augustine developed a theory of the just war, the Church hardly glorified violence to the extent that the Germans did. When Germans like Clovis accepted Christianity, they saw Christ not as the Prince of Peace but as a warrior god; that is, to accept him in terms they understood, they interpreted his life and teachings in ways different from their original intent. During the time of the Germanic kingdoms, legends of warrior saints such as Saint George were created. Yet though the Church tolerated and sometimes even encouraged violence, as late as the tenth and eleventh centuries it organized peace movements to try to diminish the violence within Europe. Only in the twelfth century, the heyday of the Crusades, did the glorification of violence become a part of the Catholic tradition."

The primary ‘national’ saints in mediaeval England were St Edward the Confessor and St Edmund of East Anglia, who are often found side by side on rood screens in East Anglia, for instance, or invoked in a single breath by someone like Edward I, who attributed his successes against the Welsh and Scots to these saints, and who visited St Edmund's shrine in Bury St Edmunds to give thanks; St Edmund is depicted in the chapel of St Edward the Confessor in Westminster, and so forth—they are constantly mentioned together as the principal saints of England. The problem, however, is that the legends of both of these men made them appear pacifistic, more intellectual than military, and not altogether amenable to the purposes of encouraging militarism as part of a newly emerging sense of nationalism and French conquest.

So St George's pre-eminence as patron of England is a late, even ‘post,’ mediaeval development. As mentioned in an earlier chapter, at the time of the Norman Conquest Robert of Mortain fought at Senlac Hill under the banner of St Michael, whom the French took as their new patron after the Hundred Years' War, their previous one, St Denys, not having proven as helpful as desired during that conflict for all he was the most famous cephalophore in Christian lore and one of the Fourteen Holy Helpers. In England, when Edward III c. 1348 was looking for a patron saint for the Order of the Garter (which has everything to do with the Hundred Years' War against France), George the patron of soldiers seemed a more appropriate choice than Edward or Edmund, patrons of England but pacifistic. Thereafter, in the time of the Lancastrians and the Tudors, George emerged as patron saint of England because he was patron saint of the Garter, and his patronage was then extensible to the country as a whole. St George's adoption as patron saint was not a religious or popular culture decision but a political one.

St George's replacing of SS Edmund and Edward was a gradual process. William of Malmesbury states that SS George and Demetrius, ‘the martyr knights,’ were seen assisting the Franks at the battle of Antioch in 1098, and similar visions of his favouring the English occurred during the First Crusade (1096-1099) at Jerusalem and Antioch and at Acre during Richard Coeur-de-Lion's Third Crusade (1189-1192); Richard I and the crusaders returned from the East with a great idea of the power of St George's intercession, and at the national synod of Oxford in 1222 St George's day was included among the lesser holidays. Edward I Longshanks, the Malleus Scotorum, on his way to hammer the Scots had his ships fly St George's ensign, the red cross on white which is the flag of the city of London, the white ensign of the Royal Navy, and one of the elements in the Union Jack.

But it was not until 1351 that there is the first clear reference to St George as patron saint of England: ‘The English nation... call upon [St George], as being their special patron, particularly in war.’ And in 1347-48 Edward III founded the Order of the Garter based in St George's Chapel at Windsor Castle, a royal chapel previously dedicated to St Edward. The red cross on a white background is from the Knights Templar and the crusades. RM Wilson notes, ‘An inventory of the goods of St George's Chapel, Windsor, made in 1384, includes a wooden table containing the passion of St George.’

By the mid-1400s the code of chivalry drew on such as Geoffrey of Monmouth and Wace to promulgate the picture of Arthur and his Knights of the Round Table widely in Britain and Europe, with ‘Round Tables’ being set up at tournaments. Alfonso XI of Castile led the way forward by founding his Order of the Band c. 1330, then Edward III in 1344 held a ‘Round Table’ tournament at Windsor, which led to building works at Windsor Castle's chapel and, four years later, to the institution of the Order of the Garter with 26 founder knights. One might presume that the Garter in question is that of the Lady of the legend, which was used to lead the dragon to the town like a little dog. Not so:

"The knights wore blue robes, and adopted a blue garter as their badge. According to legend the king's mistress, the countess of Salisbury, lost her garter while dancing at festivities held at Calais in 1348. To save her embarrassment, the king refastened the loose article to his own knee, rebuking amused onlookers with the French word ‘honi soi qui may y pense,’ or ‘evil to him who thinks evil of it’ (the subsequent motto of the order).... Within two years John of France had founded a rival order, the Star, and by the end of the century no great prince lacked an order of chivalry."

Thanks to Shakespeare's Henry V, Macaulay's schoolboy knows about Henry V (reigned 1413-22) and his behaviour in France during the Hundred Years' War. Christopher Hibbert's A Brief History of the Battle of Agincourt has relevant points to make about that vital battle on 25 October, 1415 when Henry V of England defeated the army of Charles VI of France :

"At anchor off Spithead was the Trinité Royale, the King's flagship and the finest ship in his navy. Flying above the masthead was the Trinité's banner woven with representations of the three persons of the Godhead and Our Lady and the arms of St Edward, St George and England. (p. 33) They (Henry's men) were now compelled to wear...a large red St George's cross on both chest and back. (p. 45) There were those of his [Henry's] soldiers who had beheld a vision of St George in the sky above their heads. Henry had never doubted that St George would be there [at Agincourt]. (p. 120) Henry gave the command, 'Banners Advance! In the name of Jesus, Mary and St George!'.... They marched slowly, steadily and firmly, ‘in very fine order,’ shouting ‘St George!’ repeatedly, ‘and with their trumpets sounding.’"

At Harfleur the banner of St George was flown over the gates, and when the victorious army came home to England there could be no doubt who was their patron saint:

"Beyond the bridge [London Bridge] they came towards an immense arch raised across the street, and on top of the arch, inside a pavilion of crimson tapestry, there was a statue of St George in armour, his helmet covered with a laurel wreath studded with pearls and precious stones. (p. 132)"

In 1415 the constitution of Archbishop Chichele made St George's day one of the chief feasts of the year. During the seventeenth and eighteenth centuries (till 1778) St George's feast was a holiday of obligation for English Catholics, and Pope Benedict XIV recognized him as the Protector of the Kingdom.

Later concerns anent St George mainly lie outwith the bailiwick of mediaevalist studies of St Michael and are admirably dealt with by Riches—miracle plays, mumming plays, pageants, George and the Dragon public houses, paintings (by Tintoretto and Gustav Moreau, e.g., in the National Gallery), altar pieces, carvings, WWII adverts, and the like. The most complete cycle of the George legend survives in the early sixteenth-century glass at St Neot's Cornwall, while Edmund Spenser declares to the Red Crosse Knight in Book I of The Faerie Queene:

 * {| style="white-space: nowrap;" cellspacing="0"

 * Thou, among those saints which thou doest see,
 * Shalt be a saint, and thine own nation’s friend
 * And patron; thou Saint George shalt called be,
 * St George of merry England, the sign of victory.
 * }
 * St George of merry England, the sign of victory.
 * }
 * }
 * }

Riches notes a rejoinder from north of the world's most important border in an anonymous tract A Comparison between St Andrew and St George (1634?), which contrasts St Andrew as a true apostle of Christ with the pseudo-historical St George:

 * {| style="white-space: nowrap;" cellspacing="0"

The Red Crosse, in people or in priest,
 * Was a foule marker upon a scotishe breist...
 * St Andrew is for men, St George for clownes.
 * }
 * St Andrew is for men, St George for clownes.
 * }
 * }

Towell more matter-of-factly gives the picture of the St George cult in Scotland:

"The first mention of George from Scotland is in the little-known book Concerning the Holy Places, written by St Adamnan who had himself never been to the East but who got material from Arculf, a Gaulish bishop. It mentions a knight who ‘commended himself and his horse to St George’ but veneration of the saint made little progress in Scotland probably because he had been adopted by her English rivals."

Towell notes that the few dedications of chantries and chapels are not of early date as is true of the nine churches bearing St George's name. George Street in Aberdeen and in Edinburgh could be named after the saint but could equally well be named after the king. In Edinburgh, for example, George IV Bridge is certainly so called following the monarch's visit to the city.

In England of note alongside the late mediaeval guilds of such places as Exeter, Lydd, Bassingbourne, New Romney, and Norwich are John Ruskin's Guild of St George (1871), the Royal Society of St George (1984), the Prestatyn Guild of St George (c. 1940), and the League of St George. And the popular imagination has given the saint a fuller curriculum vitae, for he has been given an English birth-place and royal lineage at Coventry, where he is believed to have been born in Caludon Castle. Richard Johnson says St George was born in Coventry, son of Lord Albert, the ‘High Steward’; his horse was called Bayard, his sword Ascalon, the rescued princess Sabra, daughter of the Sultan of Egypt. St George kills lions with his bare hands, slays a giant, like King Arthur draws a magic sword from a stone, goes home to Coventry with his now wife Sabra; one of their three sons is the monster-slayer Guy of Warwick. George fights a second dragon, and both dragon and saint are killed, ''cf. Beowulf''.

Local tradition has St George closely linked to the Lady Godiva story in Coventry, Sir Guy of Warwick slew the Dun Cow at Dunstable, there is also a connection to the Gunpowder Plot, and there are some caves near Coventry where the dragon was said to lurk. Queen Elizabeth I sent Mary, Queen of Scots to do penance in Brinklow, near Coventry, and Mary was to speak to no-one but her jailor, being thus ‘sent to Coventry.’

The English have to share St George with all the world's yeomen soldiers, boy-scouts, and crusaders, and he has been invoked against the plague, leprosy, and syphilis as well as chivalry, whereas St Michael is invoked as patron saint of police officers, paramedics, and the military as well as chivalry. St George remains somewhat of a contradiction as warrior and holy knight, standing for fertility and yet virginity, a pagan Roman soldier who is nevertheless fidie defensor fighting for honour and compassion. He has become a warrior saint guarding the green realm of England, and he stands for all of England—for London and York, for the Cambridgeshire fens, for the warm stones of a Cotswold village, for a wuthering height in Yorkshire, for the Welsh marches where Piers the Plowman dreamt his dream on a Malvern hillside. And he stands for all of that Englishness for which Rupert Brooke would gladly die in ‘some corner of a foreign field [t]hat is forever England,’ for the great speeches in Henry V and the marvellous apostrophe by John of Gaunt in Richard II, II. 1.

This lengthy appendix is necessary for the contrast it affords between St George and St Michael inasmuch as the two saints share features. It cannot be denied that (especially in the popular mind) there are seen to be similarities and differences between St George and St Michael, particularly in iconography. The major difference is that St Michael is Biblical, an archangel, and eternal where St George is mythical, supposedly human, and mortal. St Michael is nearly always wingèd and either on foot or flying, as in the illumination in Jean, Duc de Berry's Book of Hours showing St Michael soaring high above Mont St Michel in contrast to the miniature of St George found there where St George is mounted and earthbound. This is the best clue by which to tell the saints apart, then—St Michael is winged and St George rides a (normally white) horse named, we are told, Bayard.

Both saints are armed for combat with their dragons, equipped with spears often but more usually with swords; and here hangs a tale, as every important sword is ancestral, named, and often forged from fragments of even older weapons. For example: Beowulf the dragon-fighter has Hrunting, ‘thrusting,’ given him by Unferth (ll. 1455-58) and Næġling, ‘little nail,’ given him by Hygelac (ll. 2190-94); King Arthur pulls from a rock one of the Seven Wonders of Britain, the sword of Rhydderch that becomes his Excalibur (Welsh Caledfwlch, 'hard lightning'); the dvergr or dwarf Reginn Fáfnirsbruder, son of Hreiðmarr, is depicted in Schloß Neuschwanstein forging the broken pieces of his father Sigmund's sword, Gram, with which his foster-son Sigurd slays the Wurm or dragon his brother Fáfnir has become (these characters are sources in Wagner's Der Ring des Nibelungen for Mime, Siegfried, and Fafner); and drawing on Fáfnismál, JRR Tolkien gives the world Glaurung, the first ormr or dragon in Middle Earth, and Smaug in The Hobbit, while in The Lord of the Rings Aragorn's sword Andúril is forged in Rivendell from the fragments of Narsil. So these motifs of named swords and dragons fit happily with St George and his sword, Ascalon, for the sword (sometimes the spear) Ascalon recalls the fortified mediaeval city of Ashkelon, the site of the last action of the First Crusade when the Knights of Jerusalem captured the city from the Fatimids in 1153.

But what of St Michael's sword, since he is neither (pseudo)historical or corporeal? It is obvious that any stray feathers or the sword in the rock or the alleged footprint at Monte Galgano cannot be relics of an archangel. No, St Michael's sword is suitably supernatural, for it is an imaginary straight line on the face of the earth over 2,000 km in length linking seven high places or islands on most of which the archangel is reputed to have appeared. Supposedly the line represents St Michael's death blow with which he will strike Lucifer/Satan at the end of time. Here is the list:

 * {| style="white-space: nowrap;" cellspacing="0"

 * Skellig Michael, an island of the coast of Ireland, settled by Celtic monks.
 * Saint Michael's Mount, an island off the coast of Cornwall, England.
 * Mont St Michel, an island off the coast of Normandy, France.
 * Sacra di San Michele, an abbey built on top of Mount Pirchiriano, near Turin, Italy, where St Michael appeared to San Lorenzo Maiorano in the fifth and sixth centuries.
 * Sanctuary of Monte Sant'Angelo sul Gargano, on top of a mountain in Gargano, Italy.
 * Monastery of the Taxiarchis (Panormitis Monastery), Symi Island, Greece.
 * Stella Maris Monastery, Mount Carmel, Israel, where folk legend has it St Michael gave Elijah the thunder he wrested from Satan.
 * }
 * Sanctuary of Monte Sant'Angelo sul Gargano, on top of a mountain in Gargano, Italy.
 * Monastery of the Taxiarchis (Panormitis Monastery), Symi Island, Greece.
 * Stella Maris Monastery, Mount Carmel, Israel, where folk legend has it St Michael gave Elijah the thunder he wrested from Satan.
 * }
 * Stella Maris Monastery, Mount Carmel, Israel, where folk legend has it St Michael gave Elijah the thunder he wrested from Satan.
 * }
 * }
 * }

There is another fanciful ley or ‘line of power’ in the form of a straight line through South England joining St Michael's Mount, St Michael's Church Brentor, St Michael's Church Burrowbridge, St Michael's Church Othery, St Michael's Church Glastonbury Tor, Stoke St Michael Church Avebury, and Bury St Edmunds. Lengthened into Europe, the ley meets the German coast near Hamburg between Sylt and Amrum.

The saints' dress can vary somewhat. Both are usually clad in Roman-looking armour with cloaks, but St Michael is sometimes in flowing robes. Both carry shields; St Michael's carries his motto ‘Quis ut Deus’ but not always with the question mark, while St George's bears his red cross on a white background, the motif often repeated on his surcoat. St George usually wears a helmet, but St Michael does so about half of the time, sometimes sporting a crown as in Monte Sant'Angelo sul Gargano. Helmets often carried ornaments of solid metal to ward off sword blows to the head—one thinks of the boar images in Beowulf or Sutton Hoo. Sometimes local fashions make changes. In the apse of the throne room without a throne in Schloß Neuschwanstein is a large picture of St George as a Knight of the Swan with the image of a swan atop his helmet, picking up on the traditions of the High Place of the Swan, of Schwangau, Hohenschwangau, Neuschwanstein, Lohengrin, and the illumination of Hiltbolt von Schwangau in the Codex Manesse/Große Heidelberger Liederhandschrift Middle High German manuscript of Minnesang poems, c. 1304, in which Hiltbolt sports an outsize swan on the crest of his helmet with the same image on his shield and in several places on his surcoat. Dieter Maier notes, ‘The apse of the throne room in Neuschwanstein castle was designed to personify the idea of kingship by divine right.... The detail... illustrates St George overcoming the physical forces of evil.’ Elsewhere in the castle St George appears writ large on the face of the building and also shows up in a stone statue on one of the towers, and so on. Also wearing a swan helmet is Lohengrin, in paintings throughout Hohenschwangau and in Neuschwanstein in the Lohengrin mural cycle, by Wilhelm Hauschild (1827-1887).

St Michael does not always wield a sword or spear but sometimes carries the scales of eternal justice—often both together. In the Alpine regions of Austria and Bavaria can be found the art of Luftmalerei, painting on the walls of buildings private and public. The pictures are designed to show the piety of the owners and the fact that they are rich enough to afford commissioning the artists to paint them. In the small village of Pürgg-Trautenfels near Lietzen in Austria is a large depiction of St George in black and white in a delicate lace pattern mounted and spearing the dragon. Not far away in the Gasteinertal is Dorfgastein, where a drawing by H Speckbacher, ‘Michael-Archangelus,’ shows St Michael surrounded by cherubs and with sword drawn holding in his left hand chains for either Satan or the scales of judgment.

In Axams in the Tirol, the Romanesque parish church dedicated to John the Baptist has, attached to the vestry, a still Romanesque St Michael chapel, and the village fountain shows St Michael with his foot on the neck of the serpent about to behead it with his sword. In the old Austrian Celtic salt-mining town of Hallstatt, the Romanesque twelfth-century parish church has a small building next to it in the graveyard consisting of a crypt, which is a Beinhaus filled with skulls and, above, the Gothic Michaelskapelle. The altarpiece in the little chapel shows a normal image of St Michael in Roman armour, wingèd, helmeted, surrounded by cherubs, and using a long spear surmounted with a cross to push Satan into Hell along with other devils. But what is interesting is a small, very early stained-glass window to the right, dating from 1450-60, showing St Michael, wingèd, but wearing only a multi-layed surcoat. He brandishes his sword over his head, but there is no Satan; rather, St Michael carries a large pair of scales in which small figures may be discerned. And in a corner sits a scribe who is recording the judgments in his ledger.

There is no doubt as to why St George is wielding his sword—he uses it to behead the dragon. But it is by no means as clear in the case of St Michael. Possibly the best-known statue of St Michael is that atop the Castel Sant'Angelo in Rome. To commemorate the end of the plague in 590 and the apparition of the archangel to Pope Gregory the Great, a marble statue was raised here by Nicholas V. It was blown to pieces in 1497 by accident; it was replaced by Raffaello de Montelupo's St. Michael the Archangel of 1544, which was also damaged in 1747. It is now in the Courtyard of Honour, and was in turn replaced by the gigantic bronze angel cast in Rome by the Flemish artist Pieter van Verschaffelt in 1752, St. Michael the Archangel Sheathing his Sword, that now dominates the Angel Courtyard with St Michael spreading his wings over the Castel Sant'Angelo, his garments fluttering in the breeze—a marvel of eighteenth-century sculpture. It is notable that the archangel is not brandishing his sword in his usual manner, and that none of the many St Michael statues in Castel Sant'Angelo shows Satan being killed. The assumption is always that Michael is sheathing his sword to end the plague in 590, but could he be re-sheathing his sword after using it to inflict a punitive plague on Rome? Here is Laura Baini's discussion (Nunzio Giustozzi, ed. Texts by Laura Baini and Nunzio Giustozzi, Jeremy Scott, trans. Castel Sant’Angelo Guide. [Milan: Mondadori Electa S.p.A., 2003, repr. 2008), p. 151]:

"The nuance here is rather different, resulting in an interpretation that is almost the very opposite of the more widespread depiction of the angel as guardian of the Christian people. The association of the Angel and the mausoleum is linked to the legendary apparition of 590, when in re-sheathing the sword St. Michael decreed the end of the epidemic of the plague. Hence, in this case his weapon had not been turned against the devil, and the angel had not been acting as a protection against evil. He himself was the agent of God’s wrath, the plague having been unleashed as punishment for the Romans' sins. St. Michael acted at the emissary who inflicted that terrible sentence. The numerous depictions of the archangel created for Castel Sant'Angelo might reveal a variety of techniques and styles, yet in each one of them what we see is a St Michael who is not reassuring and protective but awesome and ruthless—an image that is perfectly in keeping with the fact that he was here associated with a place that was both fortress and prison."

In some instances it is difficult to tell which of the saints is portrayed. Apart from St Michael's wings and St George's horse, the presence of the Virgin Mary signifies St George as chivalric rescuer of maidens, purity, and virginity. An example is found in the Czech Republic; in the Šumava foothills and lying on the River Vltava is Vyšší Brad (literally ‘higher ford’), a monastery of the Cistercian order on the walls of whose Church of the Assumption of the Virgin Mary is a painting of St George on a white horse spearing the dragon. But it is not always quite so easy to tell which saint is intended.

One of the best-known lüftlbemalt house façades, the Schlipferhaus in Mittenwald, Bavaria, at Goethestraße 23, is famous for the baroque lüftlmalerei painted by Franz Karner. A large one dated 1767 shows St Michael with a halo like a sunburst, wingèd, and wielding a sword pushing into Hell a wingèd Satan whose body is twined around by a serpent issuing from Satan's mouth while another horned devil looks on from behind a sulphurous cloud. St Michael carries on his left his shield with the motto ‘Quis ut Deus?’ and under his arm the Christ child clinging to the top of the shield. Usually the Child appears with the Virgin and maybe St George, not St Michael.

The parish church of Weyarn in the district of Miesbach, Bavaria, is dedicated to SS Peter and Paul. It was once the church of an Augustine canonical foundation, and is well known for the figures by Franz Ignaz Günther, one of the leading Rococo sculptors. His figure of Maria vom Siege dates from c. 1764, and is a curious mixture of iconographies. It shows the Virgin Mary holding the Christ child who is holding a long crosier, which at the bottom is a spearhead in the mouth of a serpent whose coils encircle a globe of the world on which the Virgin is standing. The protection of the Virgin, the sign of the cross and the slaying of a serpent smack of St George, but the rescue of the whole world harks back to St Michael—and the holy baby is one answer to the question, ‘Quis ut Deus?’ Günther also has a statuette of St Michael about to behead a wingèd and human Satan.

These two instances illustrate the idea that St Michael represents the pre-incarnate Christ. While we realise that ‘Quis ut Deus?’ is a rhetorical question that presupposes the answer ‘nemo,’ especially Lucifer, we also realise that the answer is actually ‘Jesus Christ.’

Often it seems that iconographies of various saints become mixed, and sometimes it seems that every saint worth the name has to slay a dragon at some point. For instance, in the fields around the Wieskirche, the beautiful Rococo pilgrimage church or Wahlfahrtskirche near Steingaden in Bavaria, there stands a carved wooden shrine of St Magnus of Füßen, patron saint of the Allgäu; the shrine shows St Magnus and a dragon, but there is no tale anywhere featuring St Magnus as a dragon-slayer. Of course, as Riches points out, during the Crusades a variety of warrior saints appeared to aid the Christians, including George, Theodore, Demetrius, Maurice, and Mercurious who were all believed to have died in the persecutions of Decian and Diocletian and who were identified as the assistants of the Archangel Michael ; it would be no surprise if they were suspected of dragon-slaying too.

To add to possible confusion of St George and St Michael, the two saints sometimes appear together. Riches mentions that in a Nubian fragmentary text of c. AD 350-500 from Q'as Ibrim St Michael frees St George from prison and heals his wounds. The German panel painting The Paradise Garden (1410? 1450?) by the Master of Oberrheimischten shows the hortus conclusus of amour courtois but it is also the Garden of Eden. ‘St Michael, with wings, has a small figure of a demon at his feet while St George, wearing a rather colourful combination of armour and flowing robes, has a small dragon by his side.’ St Michael never encounters dragonlets, but instead sometimes finds fallen angels. Henry VII (reigned 1485-1509) and his wife Elizabeth of York are depicted with St George and St Michael on an altarpiece now in the Royal Collection, Windsor; St George slays a flying dragon while St Michael stands between the husband and the wife in his role of the judge of souls. And in St George's supposed English home base of Coventry, on the wall of the rebuilt Cathedral of St Michael, is the Basil Spence statue of St Michael wingèd, on foot, holding a spear, and at his feet a bound, human Satan.

The two saints come together in The Most Distinguished Order of St Michael and St George, which is formally described thus:

"Founded in 1818, this is the usual reward for distinguished service in the British Empire and Commonwealth. Its ribbon is saxon blue with a scarlet centre, and its motto Auspicium Melioris Aevi. There is a King of Arms and a Gentleman Usher of the Blue Rod. The grades are Knight Grand Cross (g.c.m.g.), Knight Commander (k.c.m.g.) and Companion (c.m.g.)."

And of course in works of fiction all sorts of myths and legends can become confused. Sarah Anne Matson as ‘Guanon’ (1885) has St George come from Cornwall; the dragon is killed at St Michael's Mount. The anonymous ‘Recorder of Avalon’ in St George at Glastonbury (1929) has St George born in Cornwall and entrusted with the sword Excalibur; Cornwall, the Mount, and Glastonbury are associated with St Michael and King Arthur, not St George.

Both St George and St Michael are associated with the navy. The White Ensign, also called the St George's Ensign because of the existence of a cross-less version of the flag, is flown by the British Royal Navy ships and shore establishments, the Royal Yacht Squadron, and Trinity House ships escorting the monarch. It consists of the red cross of St George on a white background with the Union Jack in the upper canton. It has been in use since the sixteenth century, was redesigned in 1630 and again in 1707 following the Union of the Crowns, then it was updated in 1801 after the Union of the Parliaments of 1800. St Michael's connection was with the Royal Scots Navy and the royal sponsorship was from James IV of Scotland who commissioned the largest and most heavily armed vessel of its time, The Great Michael, a 1,000-ton carrack or floating fortress with both a forecastle and an aftercastle and a vast array of cannon; from the first and second mast she flew the cross of St Andrew, and atop the main mast the red Lion Rampant of Scotland. Launched at Newhaven in 1511, the huge flagship really had no one to fight, and when King James died at Flodden in 1513 The Great Michael was sold to France, where she rotted away. Her first principal captain was The Lord High Admiral Sir Andrew Wood of Largo, ‘Scotland's Admiral,’ who is part of Scottish literature in that his name is substituted for that of the hero of Sir Patrick Spens in some recorded variants of that ballad in Child's Ballads and in that he is the subject of Nigel Tranter's novel, The Admiral. Towell notes that not long after the 1603 Union of the Crowns, ‘In 1606 James VI and I placated rivalry between his sailors by commanding them to fly on the mainmasts the St George and St Andrew crosses interlaced, each flying their own flag at the stern.’ Images of St George have often appeared on British coinage, and particularly on gold sovereigns. Bernard Cornwell offers an example from the reign of King George III, the time of the Napoleonic Wars:

"...the ‘golden cavalry of Saint George’ was one of Britain's most potent weapons in the long wars against France and was used to subvert, bribe and persuade countless rulers. Between 1793 and 1815 the British Treasury spent no less than £ 52,000,000 on such ‘subsidies.’"

The purpose of this Appendix is to differentiate the two saints who share certain similarities and can therefore be confused. Iconography can help—St Michael is wingèd, St George rides a white horse; St Michael's shield has the motto ‘Quis ut Deus?,’ St George's a red cross on a white field to match his surcoat; St Michael's sword is a spiritual entity, St George's a named, purely physical weapon. St George operates near a pond and a city, St Michael is associated with mountain peaks and high places. St George is probably a Christianized version of a pagan myth (the Green Man, Theseus, Herakles) or an earthly manifestation of St Michael, an archangel. St George kills human foes, often female ones, as well as dragons; St Michael expels Lucifer/Satan and his angels from Heaven with Satan appearing as an animal dragon or in human form.

St George can be self-contradictory, as imitatio Christi representing virginity and chastity, especially the Virgin Mary, but in the realm of amour courtois representing the hope of the consummation of desire and, in his pagan manifestation, fertility alongside his role as fidei defensor. St George the human has left relics all over the place, it would seem, including five skulls; the archangel does no such thing, having had no supposed human existence.

St George is tormented and tortured as a Christian martyr; St Michael in his role of judge carrying scales for the weighing of souls does the punishing, especially if the interpretation of his behaviour in Rome in 590 sheathing his sword after inflicting plague on the city is correct. For all he is a confliction of classical Graeco-Roman religion, St George can fight under the sign of the cross and wear that emblem of shield and surcoat; St Michael cannot use the sign of the cross, of course, but can be considered the preincarnate Christ; and therefore prayer to St George hopefully leads to intercession, prayer to St Michael is a direct appeal to Deity.

In the final analysis, St Michael and St George are both paradigms of the triumph of good over evil in that perpetual struggle, but St Michael the Biblical eternal represents that fulfilled triumph while St George the supposed mortal represents the hope that good will eventually conquer evil. Ultimately, they both stand for the human hope of resurrection and everlasting life.


text:
Making Websites with Flask/Introduction

What is Flask?
Flask is a microframework for making websites with Python. It's super easy to get started. However, Flask does not have features like authentication or database connecting built-in, unlike other web frameworks. However, it is designed to make programming these easy.

Flask is a backend web framework which means that it handles everything behind the scenes. This means that Flask handles the user requests in the server.

Flask is used by LinkedIn and Pinterest.

History
Flask was created by Austrian programmer Armin Ronacher in 2010.

Prequesites

 * Experience with Python 3
 * Experience with HTML

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

title: Making Websites with Flask/Introduction


text:
User:Nidademirr

BLENDED LEARNING

title: User:Nidademirr


text: Data Mining Algorithms In R/Print version


text:
User talk:58.97.182.242

Blocked
You cannot edit for 6 hours due to disruptive editing. You are welcome to contribute constructively when editing privileges are restored. You may appeal this action with a reasonable argument by adding the text below. —Atcovi (Talk - Contribs) 01:30, 18 February 2022 (UTC)

title: User talk:58.97.182.242


text: R Programming/Print version

title: R Programming/Print version


text:
Template talk:Printable

usage
I'm trying to use this template / script at R Programming/Print version and Data Mining Algorithms In R/Print version. However, *most* of the content of those two books is not showing up on their "print version" page. (Such as, for example, any of the text at R Programming/Introduction, or any of the text at Data Mining Algorithms In R/Dimensionality Reduction/Principal Component Analysis).

I followed the brief 3-step process listed at Help:Print versions.

Is there something else I'm missing that needs to be done to get this template/script to show the entire printable contents of these books? --DavidCary (discuss • contribs) 01:56, 18 February 2022 (UTC)
 * Hello, this is not a common config bug it was planned. To debug that, I use printable/test in preview mode.
 * In R Programming/Print version, it doesn't find the page R Programming/Navigation/TOC, so it's trying to parse the cover to get the pages to display.
 * If I call to avoid that, another error occurs: the book subpage is not a subpage of "Template:R Programming/Navigation/".
 * But with, it's pretty much better. JackPotte (discuss • contribs) 15:24, 18 February 2022 (UTC)
 * In Data Mining Algorithms In R/Print version, unfortunately we didn't develop a recursive system which would handle several TOCs scattered among books pages. For now it's one printable per TOC. JackPotte (discuss • contribs) 15:33, 18 February 2022 (UTC)

title: Template talk:Printable


text:
User:Fish and actor/sandbox

<!--

Biography
Merajul Islam Musician,Author and of knowledge. was born on 30 October 1995. Being optimistic about his chosen career, he has an outstanding Digital Marketer m that says much about the prosperous future of Merajul Islam khulna big name

Early life
Merajul Islam was a student at Khulna Zilla School & Khulna university Merajul Islam father Name Mahmood Hossain He is Khulna university vice chancellor & Mother name is Tanisha she is housewife, Merajul Islam From childhood, He wanted to do something different. He started working in Author,& music when he was only 10 years old. Since then he started to working as a child musical artist& writer. He has been brought up in the midst of songs and music since childhood.

Career
Merajul Islam has many credentials as a music composer, Author, blogger, lyricist and essayist. But he feels more comfortable in his career as a Author knowledge.

BOOKS
1.মুগল গীবত

2.নার্সিসাসে প্রজাপতি

3.সত্য ও মিথের বয়ান - ১ম খণ্ডইতিহাসের পাতা থেকে

4.রবীন্দ্রওয়ালা

5.Summery boxes, Tables & Illustrative figures of Bailey&Love (27th edition).pdf Very clear and colourfully organized

title: User:Fish and actor/sandbox


text:
User:Stang/common.css

 * 1) p-Sister_projects { display: none; }

title: User:Stang/common.css


text:
History of wireless telegraphy and broadcasting in Australia/Topical/Biographies/Harold Edward William Banks

Harold Edward William Banks
A comprehensive biography of Harold Edward William Banks has not yet been prepared for this Wikibook, however the following resources have been assembled in preparation:

 * Research - Harold Edward William Banks - Summary of research to date

 * Transcriptions and Notes - Harold Edward William Banks - More than 10 transcriptions

 * Photos, QSL cards and other graphics - Harold Edward William Banks - Nothing uploaded as yet, but many relevant QSLs held

 * Incubator of Wikipedia Article on Harold Edward William Banks - Coming real soon now!

Key internet links: Nil yet identified


text:
Wikibooks:Requests for permissions/Gifnk dlm 2020

(Administrator)
I think Wikibooks would really beniefit with this user as an admin. T. Gregtregretgtr (discuss • contribs) 23:31, 14 January 2022 (UTC)
 * 1) He is a good user.
 * 2) Wikibooks would really beniefit with another admin.
 * 3) He is one of the BEST non-admins, and so admin tools would be a great idea.
 * . You will need to accept the nomination first. Thanks. MarcGarver (discuss • contribs) 21:44, 16 January 2022 (UTC)
 * Unfortunately I’m not interested in admin privileges. Also I don’t think they will help to my editing. Thanks for the thought. -Gifnk dlm 2020 Happy New Year 🎄❄⛄🎇 (talk) 10:28, 17 January 2022 (UTC)
 * due to canvassing behaviour on the incubator. I haven't been fully looking into it, but @Liuxinyu970226 would know more about this. SHB2000 (discuss • contribs) 11:08, 17 January 2022 (UTC)
 * Per SHB2000, plus uncertain m:Meta:Requests for CheckUser information results gave me no support. Liuxinyu970226 (discuss • contribs) 11:12, 17 January 2022 (UTC)


text:
Cookbook:No-Bake Cheesecake

This is a recipe for a basic unbaked cheesecake. The measurements can easily be doubled if needed to make it bigger.

Ingredients

 * 75 g (5 Tbsp + 1 tsp) butter
 * 200 g (7 oz) tennis biscuits or digestive biscuits, crushed to fine crumbs
 * 540 g (19 oz) cream cheese, softened to room temperature
 * 750 g (26.4 oz) tinned sweetened condensed milk
 * 10 ml (2 tsp) lemon juice

Special equipment

 * Springform pan
 * Handheld mixer/beater or stand mixer
 * Measuring cups and spoons

Procedure

 * 1) Combine melted butter with biscuit crumbs. Press into a pie dish to make a crust.
 * 2) Beat cream cheese until smooth and fluffy.
 * 3) Beat lemon juice and condensed milk together.
 * 4) Mix the condensed milk mixture into beaten cream cheese until thoroughly combined.
 * 5) Pour filling into the prepared pie dish.
 * 6) Refrigerate for minimum of 24 hours until set.

title: Cookbook:No-Bake Cheesecake


text:
Cookbook:Cornbread (disambiguation)

Cornbread is a type of quick bread made of cornmeal and sometimes supplemented with wheat flour. Some variations may include whole corn kernels. It has its origins in America, with notable influence from Native American cuisines. It can range from sweet to savory, and recipes vary depending on the region and the cook. Cornbread is often eaten on its own, but it can also be used as an ingredient, such as in cornbread dressing or stuffing.

title: Cookbook:Cornbread (disambiguation)


text:
Cookbook:Cake Mix

Cake mix is a type of preformulated baking mix typically sold in grocery stores.

Characteristics
Cake mix generally consists of the "dry" ingredients typically called for in a cake, such as flour, leavening, sugar, salt, etc.

Common Varieties

 * Yellow cake
 * White cake
 * Chocolate cake
 * Devil's food cake
 * Red velvet cake
 * Brownie

Use
To use cake mix, the cook adds the required liquid ingredients such as eggs, oil, and milk/water. Many recipes will call for cake mix as a component—however, due to the variation in pre-packaged commercial cake mixes, the cook may get different results depending on which brand is used.

title: Cookbook:Cake Mix


text:
Natural Disasters/Earthquake

Severe earthquakes tend to happen in geologically active areas, though they may also occur more rarely elsewhere.

In the event of an earthquake, the safest way to move is the get down and crawl.

title: Natural Disasters/Earthquake


text:
Making Websites with Flask/Getting Started

Installation
Flask is a Python library, so you first of course need Python installed. Then, you can use the pip package manager to install Flask: To make sure you installed Flask correctly, run the following Python script: If it runs without any errors, you have successfully installed Flask!

Hello World!
In programming, it is a tradition to make a program that displays "Hello World!". So, we will make a website that returns "Hello World!" when we visit it.

In your code editor, write the following code: Now, save the Python code and run it as you would any other Python program. Then, when you visit localhost:7070, you should "Hello World!".

Code Breakdown
Now, let's break down the code that we just wrote line by line.

First of all, we need to import the things we need from the Flask module (line 1): Then, we need to create an instance of the  object, which represents our web app (line 3): Then, we create a decorator. Decorators are functions that modify the next function. In this case, the decorator shows the user whatever is returned by the next function when the user visits the root page (line 5): Then, we actually create the function which will be modified by the decorator and make it return "Hello World!" (lines 5 and 6): We could also make the function return some HTML: Then, we run the Flask object at port 7070 (lines 9 and 10):

Adding More Routes
Of course, there's nothing stopping us from having more routes. For example, let's add the following code: For the sake of completeness, here's the entire code with the new code block: Now, whenever we visit localhost:7070/about, we see "This is my first Flask website" in headings (notice that we added HTML tags to the output of the function).


text:
User talk:Vanished user 698180

Welcome!
Welcome to Wikibooks, Calgary341!

 First steps tutorial Wikibooks is for collaborative development of free textbooks.

You do not need technical skills to contribute. You can easily change most books. Please introduce yourself, and let us know what interests you.

If you already contribute at other Wikimedia projects, our Wikimedia Orientation should quickly get you started. (Would you like to provide feedback on this message?)

  Getting help   Made a mistake?   Goodies, tips and tricks
 * Read the Using Wikibooks book for a friendly introduction to the project, or our help pages for more information.
 * You can get friendly help from the community in the user assistance room or our IRC channel.
 * Upload freely licensed files to Wikimedia Commons. You may request permission to upload fair use files locally. Please include author and source information and a non-free use rationale for non-free files.
 * You can restore a previously saved version.
 * Pages should follow the  naming convention.
 * Need to rename a page? Use the move tab (is available once your account is 4 days old - until then, ask for help).
 * To request a page be deleted, add to the top of the page.
 * Was a page you made deleted? Please read the deletion policy, and check the deletion log to find out why. Also check the RFD archives if applicable. You can request undeletion at WB:RFU, or ask the administrator who deleted the page.
 * Please fill in the edit summary and preview your edits before saving.
 * Sign your name on discussion pages by typing ~~~~
 * User scripts can make many tasks easier. Look at the Gadgets tab of my preferences; check off the boxes for the scripts you want, and hit save!

Thanks for your contributions -- Jules (Mrjulesd) 21:59, 18 February 2022 (UTC)

Making Websites with Flask
A query note has appeared at Making Websites with Flask.

Basically you need to justify your contributions to the book. Is it going to be developed further? At the moment there is very little there.

-- Jules (Mrjulesd) 22:02, 18 February 2022 (UTC)

 * Yes, I will. I just started it, so that's why there isn't much. Calgary341 (discuss • contribs) 22:49, 18 February 2022 (UTC)

 * OK I'll remove the template. But be warned that creating "stub" books in mainspace can sometimes lead to them being deleted. Its often safer to create them in userspace, for example User:Calgary341/Making Websites with Flask. -- Jules (Mrjulesd) 23:00, 18 February 2022 (UTC)

title: User talk:Vanished user 698180


text:
Talk:Making Websites with Flask

Not finished Book
This book was left unfinished for almost two years, so I decided to add a page about creating a basic app to teach people as the final lesson TreaderUltra (discuss • contribs) 16:06, 19 February 2024 (UTC)

 * Also it is a better fit in Wikiversity. TreaderUltra (discuss • contribs) 16:09, 19 February 2024 (UTC)

title: Talk:Making Websites with Flask


text:
User:SoftwareEngineerMoose

Projects

 * C++ Language - I started this book to provide a comprehensive and well-organized hierarchy of various topics about the C++ programming language.

title: User:SoftwareEngineerMoose


text:
Oberon/ETH Oberon/Tutorial/Rembrandt

Rembrandt User's Guide

[ Text | Contents | Index | Master index]

Tutorial Objective
Learn how to create and modify raster pictures using the special purpose editor and the companion panel Rembrandt. This simple and handy tool is very useful to draw artful and suggestive pictures which may among others serve as captions for buttons or icons. A RembrandtDocs.NewDoc is a document containing a single Rembrandt.Frame which is linked to a picture as model. We shall call it Rembrandt document. Picture is defined in the Pictures module.

This picture editing tool shows however some imperfections: the most flagrant shortcoming is its sluggishness.

Pictures may be collected in a private or a public library with the help of the Libraries.Panel

Estimated time: 40 minutes.

Using the Rembrandt panel
Desktops.OpenDoc Rembrandt.Panel The panel offers three sets of tools as suggested by the button row [Drawing], [Operation] and [Color] in the Tools section at the top of the panel. The panel just opened already presents a Drawing Tool section and a Color Tool section. In fact, the panel is a "variable geometry" gadget which may contain only just the Tools section or one or more of the other sections which can be inserted by clicking the corresponding button at the top.

In order to practice drawing and editing of drawings while you read this, you are invited to open an Operation Tool first, and then to open an empty Rembrandt document by clicking the [New Picture] button. Adjust the size and the position of the picture to make room for viewing this text and the empty picture on your desktop. You will most probably need a very small surface picture to practice. If you are working in tracks, open the picture directly in the system track or move it there.

The Rembrandt document is very similar to the familiar text document viewer. Noticeable differences are: the mouse focus, the caret, the menu bar and the properties of the special purpose editor.

The mouse focus, or simply mouse, is a cross formed by intersecting horizontal and vertical line segments. It appears as soon as the mouse focus crosses the boundary of the picture. The caret, or insertion point, is set as usual by clicking the left mouse key. It is also a cross, but rotated by 45 degrees. Text may be typed in from the keyboard at the insertion point, but it cannot be edited in place. The backspace key for instance, is inoperant. To switch to another font, you have to set the system font with the command System.Set Font fontName. The menu bar layout is described in Editing a picture.

Most of the work can be performed with mouse clicks or interclicks - keyboard input is rarely needed, sometimes used.

The following description reflects the panel division described earlier.

Drawing Tool section
The objects drawn, such as lines, circles or spray traces, have attributes, such as color or width, which must be set first. They are described now.

Drawing attributes
Color : the color attribute determines which color is used - when drawing lines, polygonal lines, rectangles, circles, or with the pen, - when spraying, smearing, or filling an area, or - when erasing a color.This attribute is not set by a GUI component in the "Attributes" section, but with the color picker or with the pick color button.

Width : the width attribute determines the thickness, graded from 1 to 50 pixels, of lines, polygonal lines, the perimeter line of rectangles or circles, and other objects. It is adjusted with the slider or by keying a value in the text field gadget.

Spray : the spray attribute determines the intensity of spraying, graded from 1 to 100. It is adjusted with the slider or by keying a value in the text field gadget.

Smear : the smear attribute determines the intensity of blotting, graded from 1 to 8. It is adjusted with the slider or by keying a value in the text field gadget.

Fill : When the check box is checked, rectangles and circles are filled using the current color.

Double : When the check box is checked, the trace of the pen or the spraying can is doubled by another parallel trace. Set the caret in the picture (left click) at the starting point of the double. Then follow the instructions for drawing with the pen or for spraying. The coordinates of the caret's position relative to the starting point, i.e. the distance between the two traces, are memorized and used again for subsequent pen drawing and spraying operations.

Mirror : the mirror attribute determines the mirroring of lines, pen and spray traces, and erasures. Set the caret in the picture (left click) at the point which will become the relative centre of symmetry. The drawing or the erasure action can be mirrored with respect to the X-axis, the Y-axis and a 45 degree bisecting line. It is controlled by the three check boxes in the Mirror frame. If the 45 deg check box is checked, the other two are also. If one of the axis check boxes is deactivated, the 45 deg one is also.

Drawing operations
The group of 12 + 1 icons at the left offers all the operations which can be directly executed by mouse clicks; that is, without first having to select an area. The icons and their function are described below in the order in which they appear in the panel, from left to right and from top to bottom. The 12 icons are captions of radio buttons: only one button at a time can be pressed (red LED lit). Clicking on one of the buttons selects the drawing action which will be controlled with the middle mouse key. The last drawing operation can be undone by clicking the Undo button. Each description ends with a list of attributes that may modify the operation.

Draw a line or a polygonal line : Move the mouse to the starting point of the line in the picture, and press the middle mouse key. Now, as you move the mouse around, you will notice a "rubber band" line with one end fixed to that point and the other end following the mouse. If you release the mouse key, the rubber band is fixed between the two points. If on the other hand, you click the right mouse key, the rubber band is also fixed but you may continue moving the mouse. A new rubber band will start at the end point of the first line. Release the right mouse key. A polygonal line is being drawn.

Finally, a freehand arbitrary line can be drawn by dragging on the right mouse key, a limit case of polygonal line. Attributes: color, width, mirror.

Draw a rectangle : Move the mouse to the starting point of the rectangle in the picture, and press the middle mouse key. Now, as you move the mouse around, you will notice a rubber band rectangle with one end fixed on that point and the diagonally opposite end following the mouse. When the rectangle has the correct size, release the mouse key to fix it. Attributes: color, width, filled.

Draw a circle : Move the mouse to a point in the picture which will become the centre of a circle, and press the middle mouse key. Now, as you move the mouse around, you will notice a rubber band circle with it's center fixed on that point and the circle's perimeter following the mouse. When the circle has the correct size, release the mouse key to fix it. Attributes: color, width, filled.

Draw with a pen : Move the mouse to a point in the picture, and drag on the middle mouse key to draw a freehand line until the mouse key is released. Note: This line seems to have the same properties as the limit polygonal line, however it is drawn using a single mouse key, and it can be doubled. Attributes: color, width, double, mirror.

Erase color : Move the mouse to a point in the picture where you want to start erasing a specific color, and press the middle mouse key. Now, as you move the mouse around, every point covered by the round eraser is erased until the mouse key is released. Attributes: color, width.

Erase : Move the mouse to a point in the picture where you want to start erasing, and press the middle mouse key. Now, as you move the mouse around, every point covered by the round eraser is erased until the mouse key is released. Attributes: width, mirror.

Spray : Move the mouse to a point in the picture where you want to start spraying, and press the middle mouse key. Now, as you move the mouse around, droplets of the selected color are sprinkled randomly within the specified width, until the mouse key is released. Attributes: color, width, double, mirror, spray.

Smear : Move the mouse to a point in the picture where you want to start smearing, and press the middle mouse key. Now, as you move the mouse around, spots of the selected color are smeared within the specified width, until the mouse key is released. Attributes: color, width, smear.

Stamp : Copies the contents of the clipboard any number of times at specified locations. Move the mouse to a point in the picture where you want to insert (paste) the clipboard contents, and press the middle mouse key. Drag on the key to move the clipboard picture. Interclicking the left mouse key copies the clipboard to the picture. The operation is not performed if the clipboard is empty. Attribute: none.

Clone : Attribute: width.

Pick a color : Move the mouse to a point in the picture where you want to pick a color, and press the middle mouse key. Now, as you move the mouse around, you will see the picked color appear in the rectangle, in the Color Tool section. When you release the mouse key, that color will be used for the next operations until it is changed again. Also, when the mouse key is released, the last operation selected is active again. Attribute: none.

Fill a closed area : Move the mouse to a point inside a closed area to fill with a specific color, and press the middle mouse key. Attribute: color, mirror.

Undo last operation : reverses the last operation. This applies to all of the drawing operations described before, except picking a color, and also to the operations on a selection move and cut. Attribute: none.

Operation Tool section - Kind of selection
There are three methods for selecting objects in a picture. To select one, middle click on one of the three buttons "Kind of selection". They are radio buttons.

Area selection
To select all the objects or parts of objects contained in a rectangular area, move the mouse to the starting point of the rectangle in the picture, and press the right mouse key. Now, as you move the mouse around, you will notice a rubber band rectangle with one end fixed on that point and the diagonally opposite end following the mouse. When the rectangle has the correct size, release the mouse key to fix it. To deselect the area, click the right mouse key again or press ESC.

Object selection
To select an object, move the mouse on any point of the object and click the right mouse key. All the contiguous points with the same color will be selected. It is thus possible to select a very complicated area with a single click. The selected object is entirely contained in a thick selection frame. If the selected object is too large to be entirely visible in the viewer, the selection frame will also not be entirely visible. To deselect the object, click the right mouse key again or press ESC.

Freehand selection
To select an arbitrary area (of any shape) in a picture, move the mouse to the starting point of what will become the perimeter line of the area, and press the right mouse key. Dragging on that key causes a rubber band line to appear. Repeatedly interclicking the middle key while dragging, causes a polygonal line to be drawn. When both keys are released, the polygon is closed and a selection frame appears. If you drag of both keys (right + middle) a freehand line is drawn. If the selection frame subsumes to a simple line (not enclosing an area), the entire picture is selected. To deselect the area, click the right mouse key again or press ESC.

Selection of the entire picture
??

Operation Tool section - Operations on selection
These operations are controlled with the middle mouse key, only if a selection exists. Otherwise, a drawing operation is executed.

The three following buttons are radio buttons.

[Move] Move or copy the selection. Move the mouse inside the picture, and press the middle mouse key. Drag on that key until the new position is reached, then release the mouse key to end the operation. If you interclick with the left mouse key before releasing the key, the selection is copied at the new position (instead of being moved).

[Scale] Scale the selection. Move the mouse inside the picture, and press the middle mouse key. A rubber band rectangle showing the new dimensions of the selected area appears. Now, as you move the mouse around, one corner of rectangle will follow the mouse. The current scaling, relative to the original size, is displayed in a highlighted text field, in the form "X: 79 % Y: 114 %". When the correct scaling is obtained, release the mouse key to end the operation. The transformed selection is presented in a new unnamed picture frame, thereby leaving the original picture unchanged.

[Rotate] Rotate the selection. Move the mouse inside the picture, and press the middle mouse key. A rectangle showing the dimensions of the selected area appears. Now, if you move the mouse horizontally to the right, the rectangle rotates anticlock-wise. Conversely, it rotates clockwise when the mouse moves to the left. The current rotation angle is displayed in a highlighted text field, in the form "xy". When the correct rotation angle is obtained, release the mouse key to end the operation. The transformed selection is presented in a new unnamed picture frame, thereby leaving the original picture unchanged.

[Mirror vertically] Mirror the selection with respect to the horizontal axis. The transformed selection is presented in a new unnamed picture frame, thereby leaving the original picture unchanged. If there is no selection but a picture is marked, the entire picture is mirrored. If there is no selection and no marking, no action is performed.

[Mirror horizontally] Mirror the selection with respect to the vertical axis. The transformed selection is presented in a new unnamed picture frame, thereby leaving the original picture unchanged. If there is no selection but a picture is marked, the entire picture is mirrored. If there is no selection and no marking, no action is performed.

[Make icon] Make an icon of the selected area. Click on the little square in the iconizer to flip it, and key in the width and height of the icon in pixels. The default dimensions are 32 * 32. The transformed selection is presented in a new unnamed picture frame, thereby leaving the original picture unchanged. If there is no selection but a picture is marked, the entire picture is mirrored. If there is no selection and no marking, no action is performed.

[Print *] Print the marked picture on the printer defined on the other side of the iconizer. Click on the little square in the iconizer to flip it, and key in the printer name. The default value is "LPT1".

The next three buttons control operations making use of the clipboard.

[Cut] Cut the selected area from the picture and copies it to the clipboard. No action is performed if there is no selection.

[Copy] Copy the selected area to the clipboard. No action is performed if there is no selection.

[Paste] Paste the contents of the clipboard in a picture, set the caret first. The caret's position determines the lower left corner of the pasted area. Then, clicking on this button, inserts the clipboard contents at that position. No action is performed if the caret is not set, or if the clipboard is empty.

[New Picture] Open an unnamed Rembrandt document, ready for editing a picture. The picture is either the selected area of a picture or by default, an empty picture. Click on the flip button in the iconizer to flip it, and key in the width and height of the picture in pixels. The default dimensions are 640 * 400.

[Show] Update the list of currently available pictures in the list gadget. A picture in this list may be opened directly by middle clicking on it.

Color Tool section
This section serves as a control panel for selecting the color attribute, for changing a color, and for setting the color palette. Windows reserves 20 colors (out of 256) for itself. Hence, these colors cannot be changed under Oberon and have been allocated as the first 20 colors in the Oberon palette. If you require more color use the instructions in UserGuide.Text. For MacOberon, the 16 first colors cannot be changed.

To set the color used by the drawing tools use the color picker to select a color. The selected color is displayed in the rectangle at the right and is assigned to the color attribute. You can define your own color by adjusting the three sliders R, G, B, which define the amount of primary colors to use. Alternatively, you may use the three associated text fields. Changes are immediately reflected in the color sample rectangle.

The [Dither] iconizer is used to change the colors of the marked picture as follows:

Click on the flip button in the iconizer to flip it, and adjust the intensity and the saturation of colors with the sliders.

The buttons have the following meaning:

[Load Palette] loads the display palette from the marked picture.

[Store Palette] stores the display palette in the marked picture.

[Darken] darkens the display palette.

[Lighten] lightens the display palette.

[Reset Palette] resets the display palette to its standard value.

[Reset Color] resets the selected color to its standard value.

Editing a picture
Using the Rembrandt panel, you have learned how to start editing a picture, either a new one by clicking on New Picture, or an existing one selected among the pictures stored on your system. In both case the Oberon command executed is (try it): Desktops.OpenDoc pictureName.Pict

The menu bar features two buttons used for zooming.

[+] magnifies the selection, or the entire picture if there is none. The button may be clicked 5 times in succession to obtain a magnification of 16. This makes it very easy to retouch pictures pixel-wise.

[-] reduces the entire picture. The button may be clicked a maximum of 5 times in succession until the original size is restored, and not beyond.

Useful hint: to ease picture retouching, make a copy of the picture first, then magnify either of the two views as required. Whatever is retouched in the zoomed picture will be reflected in the original.

Editing with the mouse
You have learned how drawing is performed with the middle mouse key that is, inside the drawing area, middle mouse clicks have a different meaning. Otherwise, mouse clicks and interclicks fully comply with the Oberon standard described by Wirth and by Fischer & Marais.

Selection

Clicking the right mouse key (anywhere in the viewer) selects the entire picture. The cursor changes to a flat hand and the entire white area is surrounded by a frame. Clicking again, deselects the picture and restores the cursor.

Pressing the key and dragging on it, tracks the selection which is delimited by a rubber band rectangle. When the key is released, a selection frame is drawn. When copying a selection, the caret may be set in a Rembrandt document different from the viewer containing the selection.

Moving a picture

Moving the white area in the viewer can be done in two ways. First, select the entire area with a right mouse click, then press the middle mouse key and drag. Second, if the area does not cover the viewer entirely, place the mouse focus outside the area, press the middle mouse key (the cursor changes to a flat hand), and drag. In both cases, when the white area is correctly positioned, release the key.

When editing is completed, name the picture by editing a name in the nameplate and store the picture. Picture names must be suffixed with ".Pict".

To print a picture you may either:

 * mark it and click the "Print *" button in the panel or
 * execute the command: Desktops.PrintDoc printDevice (pictureName | *) ~

Index
[ A | C | D | E | F | L | M | O | P | R | S | U | W | Z ]

A

area selection

C

circle clipboard clone color copy cut

D

double attribute

E

edit picture erase color erase

F

fill attribute fill freehand selection

L

line

M

make icon mirror attribute mirror horizontally mirror vertically move moving picture

O

object selection

P

paste pen pick color polygon print picture

R

rectangle Rembrandt panel retouch picture rotate

S

scale selection method selection smear attribute smear spray attribute spray stamp

U

undo

W

width attribute

Z

zoom

Revised, 22 Nov 1996 Installed on 30 05 1997

title: Oberon/ETH Oberon/Tutorial/Rembrandt


text:
C++ Language

Preface
This wiki book describes the C++ programming language.

Thank you for reading this wiki book!

Table of Contents

 * 1) Overview
 * 2) Preprocessing
 * 3) Macros
 * 4) Tokenization
 * 5) Preprocessing Strings
 * 6) Compile-time Constants
 * 7) Compile-time Assertions
 * 8) Conditional-Compilation
 * 9) Namespace
 * 10) Namespace Shortcuts
 * 11) Nesting
 * 12) Splitting across Files
 * 13) Named and Unnamed
 * 14) Type
 * 15) Hungarian Prefixes
 * 16) Boolean
 * 17) Literals
 * 18) Financial 1000-Markers
 * 19) Binary and Hexadecimal
 * 20) Custom Literals
 * 21) Bitwise Representation
 * 22) Ordering of Bytes
 * 23) Negative Value
 * 24) Bit Shifting
 * 25) Non-char Byte
 * 26) Bit Flags
 * 27) Max Value
 * 28) Overflow
 * 29) INT_MAX
 * 30) Conversion
 * 31) Promoting Small Integers
 * 32) Coercion
 * 33) Casting
 * 34) Enumeration
 * 35) Shortcuts
 * 36) Templated typedef
 * 37) From Another Variable
 * 38) From Initialization
 * 39) From a return Statement
 * 40) Trailing Return Type
 * 41) Variant
 * 42) Any-Variant
 * 43) Templated-Variant
 * 44) Optional-Value
 * 45) RTTI: RunTime Type Information
 * 46) Variables
 * 47) Lifetime and Scope
 * 48) Initialization
 * 49) Uniform Initialization
 * 50) Initialize without Constructor
 * 51) Decomposing-Auto
 * 52) Define at Same Time as Type
 * 53) Indirection
 * 54) Pointers
 * 55) Typed NULL
 * 56) Arrays
 * 57) Reference Variables
 * 58) Rvalue-References
 * 59) Move-Semantics
 * 60) Moving from this
 * 61) Perfect Forwarding
 * 62) Smart Pointers
 * 63) Risk from Raw Pointers
 * 64) Unique Ownership
 * 65) Shared Ownership
 * 66) Ownership Cycle
 * 67) Owning an Array
 * 68) Pointer to Base-Class
 * 69) Returning this
 * 70) Smart Compiler-Temporary
 * 71) Custom Destruction
 * 72) Template-Parameter
 * 73) Expressions
 * 74) Precedence
 * 75) Chain of Assignment
 * 76) Program Flow
 * 77) Loops
 * 78) Basic Loops
 * 79) Looping over a Collection
 * 80) The break Statement
 * 81) A Break in a Nested Loop
 * 82) Fallthrough in a Switch
 * 83) Return Value
 * 84) Parameters
 * 85) Default Parameter
 * 86) Unused Parameter
 * 87) Variable Number of Parameters
 * 88) Function Overloading
 * 89) Discrimination Criteria
 * 90) Across Inheritance
 * 91) Function-Pointer
 * 92) Deprecating a Function
 * 93) Objects
 * 94) Accessibility
 * 95) Unwanted Compiler-Generated Functions
 * 96) Constructors
 * 97) Ordering
 * 98) Initialization by Copy-Constructor
 * 99) Initialization by One-Parameter-Constructor
 * 100) Keeping Default Constructor
 * 101) Delegation within Class
 * 102) Memory Full
 * 103) Placement New
 * 104) Destructors
 * 105) Const Members
 * 106) Const Data Members
 * 107) Const Member Functions
 * 108) Static Members
 * 109) Static Data Members
 * 110) Static Member Functions
 * 111) Inheritance
 * 112) Polymorphism Syntax
 * 113) Qualification Syntax
 * 114) Restricted Overriding
 * 115) Multiple Inheritance
 * 116) Operator Overloading
 * 117) Nested Classes
 * 118) Pointer to Members
 * 119) Low-Level C Structures
 * 120) Union
 * 121) Flexible-Array-Member
 * 122) Bitfield
 * 123) Templates
 * 124) Templated-Functions
 * 125) Templated-Classes
 * 126) Templated-Variables
 * 127) Template-Parameters
 * 128) Default Template-Parameters
 * 129) Deducing Template-Parameters
 * 130) Variable Number of Template-Parameters
 * 131) Traits
 * 132) Unary Predicate Traits
 * 133) Binary Predicate Traits
 * 134) Array Traits
 * 135) Unary Transform Traits
 * 136) Binary Transform Traits
 * 137) S.F.I.N.A.E. Conditional-Compilation
 * 138) Metaprogramming
 * 139) Numeric Template-Parameters
 * 140) Collection of Types
 * 141) Concepts
 * 142) Error Handling
 * 143) Returning an Error Code
 * 144) Assertions
 * 145) C++ Exception Handling
 * 146) Standard Libraries
 * 147) C-Runtime
 * 148) Math
 * 149) Basic Math
 * 150) Trigonometry
 * 151) Rational Numbers
 * 152) Complex Numbers
 * 153) Miscellaneous Math
 * 154) Heap Memory
 * 155) Allocation
 * 156) Memory Manipulation
 * 157) Leaks
 * 158) Time
 * 159) Time as a String
 * 160) Precise Time
 * 161) Timespan as CPU Clockticks
 * 162) Basic Algorithms
 * 163) Search
 * 164) Quick Sort
 * 165) Executing a Shell Command
 * 166) STL: Standard Template Library
 * 167) Collection Classes
 * 168) Sequence Collections
 * 169) Vector
 * 170) Construction
 * 171) Size
 * 172) Equality
 * 173) Indexing
 * 174) Removing Items
 * 175) Inserting Items
 * 176) Assignment
 * 177) Vector of Bool
 * 178) STL-Array
 * 179) Deque
 * 180) List
 * 181) Forward-List
 * 182) Sorted Collections
 * 183) A Pair as one Item
 * 184) Tuple
 * 185) Map
 * 186) Construction
 * 187) Sort-Class
 * 188) Custom Sort-Class
 * 189) Size
 * 190) Equality
 * 191) Indexing
 * 192) Removing Items
 * 193) Inserting Items
 * 194) Assignment
 * 195) Multimap
 * 196) Set
 * 197) Multiset
 * 198) Hash-Table
 * 199) Iterators
 * 200) Basic Iterators
 * 201) Ranges
 * 202) Insert-Iterators
 * 203) Reverse-Iterators
 * 204) Stream-Iterators
 * 205) Custom Iterators
 * 206) Adapters
 * 207) Stack
 * 208) Queue
 * 209) Binary-Heap
 * 210) Callable-Objects
 * 211) A Function Name as a Value
 * 212) Member Function
 * 213) Implicit Getter-Function
 * 214) Functor
 * 215) Lambda
 * 216) Generic Lambda
 * 217) Binding a new Function
 * 218) Algorithms
 * 219) Usage with a C-Array
 * 220) Querying
 * 221) Counting
 * 222) Searching
 * 223) Accumulating
 * 224) Applying Item-by-Item
 * 225) Processing Item-by-Item
 * 226) Ignoring Prior Values
 * 227) Item-by-Item Combination of Two Collections
 * 228) Modifying
 * 229) Copying
 * 230) Removing
 * 231) Reordering
 * 232) Strings
 * 233) Unicode
 * 234) Avoiding Buffer-Overrun
 * 235) Character Categories
 * 236) C-String Manipulation
 * 237) String Class
 * 238) Construction
 * 239) Equality
 * 240) Indexing
 * 241) Inserting Characters
 * 242) Algorithms
 * 243) Casting Numeric Values
 * 244) Number to String
 * 245) String to Number
 * 246) AliasedStrings
 * 247) Regular Expressions
 * 248) Locale
 * 249) IOStreams
 * 250) Stringstream
 * 251) Streaming Custom Types
 * 252) Filesystem Access
 * 253) Moving and Deleting
 * 254) Directories
 * 255) Binary-Files
 * 256) Formatted I/O
 * 257) Newline-Converted-Files
 * 258) Size of a File
 * 259) Redirecting stdout
 * 260) Pipes
 * 261) Console I/O
 * 262) Streamed I/O
 * 263) Multithreading
 * 264) Thread Creation
 * 265) Critical Section
 * 266) Atomic Values
 * 267) Locks
 * 268) Events
 * 269) Return Value
 * 270) Semaphores
 * 271) Resource Management
 * 272) Fragment Ordering
 * 273) Ring Buffer
 * 274) Readers and Writers
 * 275) Monitors and Channels
 * 276) RNG: Random Number Generator
 * 277) Obsolete Features
 * 278) Trigraph Characters
 * 279) An Obsolete Smart Pointer
 * 280) Variadics before ANSI
 * 281) Obsolete Function Binding
 * 282) Boost Feature Graduation

Guidelines for Editors

title: C++ Language


text:
C++ Language/GuidelinesForEditors

This wiki book describes the C++ programming language.

The goal of this writing, and what will hopefully distinguish it from other resources, is that it should be comprehensive and organized:
 * Comprehensive: The goal is to cover all topics of C++. It should discuss both basic concepts (what is a variable?) and advanced concepts (e.g., template-metaprogramming). Modern aspects of the language (e.g., move semantics) are included alongside traditional ones. This book is about the language proper, excluding most libraries with the exception of the Standard Libraries and occasional references to important platform considerations.
 * Organized: An effort is being made to list more basic and fundamental concepts before others, to aid a student who is linearly reading the book from beginning to ending. At the same time, the topics are given a hierarchical structure, so the book is also useful to a more experienced engineer who needs to lookup a specific issue.

Attention is being given to limit the amount of writing in this book, with the understanding that too much detail in one publication can easily scare away potential readers. Instead, this book aims to give the reader a clear initial introduction to each topic that is being discussed. And then, at the end of nearly every section of this book, will be an external link that readers can follow if they want to supplement their learning with additional details. It's important to the goals of this writing for those supplemental links to be a video (easy to digest for casual readers), in the public domain, and they must be precisely about that very specific topic that section of this book was discussing.

Contributions to this book are welcomed (as always with wikibooks). A set of conventions and structures are in mind for the formatting of this book, so please use the discussion area to talk about them with the book's existing authors, prior to making any significant planned changes to the published pages.

Thank you for reading this wiki book!

title: C++ Language/GuidelinesForEditors


text: Template:C++ Language

title: Template:C++ Language


text:
C++ Language/Overview

Like many programming languages, C++ uses a "variable" to name a memory location which can store some value. A running C++ program executes an assignment statement  to assign value   into variable. But first, each variable has a "type" (its way of using its memory bits to represent its values, such as ) which must be specified by the programmer "defining" that variable within some "scope".

Assignment is only one example of a statement; a sequence of statements can be grouped into a code block (written within braces). The execution of that code block can be conditional, depending on the result of testing a "relational expression" (e.g., the equality of two sub-expressions in ). Generally, a program's execution linearly flows from first statement to last statement, but that program flow can jump around as controlled by loops or by "calling a function". Information can be "passed" into the function (via its "parameters"), and/or returned from the function (by a  statement).

C++ enables object-oriented programming (OOP), where an "object" is an instance of a type whose data is a combination of "data members" (as had already been listed in some "class" definition). That class definition also describes "member functions", whose usage is designed to manipulate a specific instance of those data members (i.e., to manipulate a specific object).

title: C++ Language/Overview


text:
C++ Language/Preprocessing

When you run the C++ compiler on your source file, the first thing the compiler does is to process your source file using its "preprocessor" component.

 * 1) Macros
 * 2) Tokenization
 * 3) Preprocessing Strings
 * 4) Compile-time Constants
 * 5) Compile-time Assertions
 * 6) Conditional-Compilation

title: C++ Language/Preprocessing


text:
C++ Language/Namespace

Anything defined with  will require additional qualification (writing variable   as  ).

 * 1) Namespace Shortcuts
 * 2) Nesting
 * 3) Splitting across Files
 * 4) Named and Unnamed

title: C++ Language/Namespace


text:
C++ Language/Preprocessing/Macros

A "preprocessor macro" enables the effect of cut-and-paste of source code, from that macro's definition (in a  statement) to anywhere the programmer "expands" that macro.

This cutting-and-pasting action could be parameterized. If a macro has been defined to accept a parameter, its expansion is allowed to pass nothingness. A "variadic macro" is written to accept a variable number of macro-parameters.

Additional information about macros (includes interactive examples)

title: C++ Language/Preprocessing/Macros


text:
C++ Language/Preprocessing/Tokenization

When your C++ source file is being compiled, one of the first things that happens is your compiler uses its preprocessor to "tokenize" your program.

Tokenization would process code like  by splitting it into four tokens (variable identifier , then operator  , then operator  , then variable identifier  ).

A preprocessor macro is able to use  within its definition, to construct a compilation-token while the macro expands.

Additional information about tokenization (includes interactive examples)

title: C++ Language/Preprocessing/Tokenization