text:
Robert Hooke

Robert Hooke (18 July 1635 – 3 March 1703) was an English polymath who was active as a physicist ("natural philosopher"), astronomer, geologist, meteorologist and architect. He is credited as one of the first scientists to investigate living things at microscopic scale in 1665, using a compound microscope that he designed. Hooke was an impoverished scientific inquirer in young adulthood who went on to became one of the most important scientists of his time. After the Great Fire of London in 1666, Hooke (as a surveyor and architect) attained wealth and esteem by performing more than half of the property line surveys and assisting with the city's rapid reconstruction. Often vilified by writers in the centuries after his death, his reputation was restored at the end of the twentieth century and he has been called "England's Leonardo [da Vinci]".

Hooke was a Fellow of the Royal Society and from 1662, he was its first Curator of Experiments. From 1665 to 1703, he was also Professor of Geometry at Gresham College. Hooke began his scientific career as an assistant to the physical scientist Robert Boyle. Hooke built the vacuum pumps that were used in Boyle's experiments on gas law and also conducted experiments. In 1664, Hooke identified the rotations of Mars and Jupiter. Hooke's 1665 book Micrographia, in which he coined the term cell, encouraged microscopic investigations. Investigating optics – specifically light refraction –  Hooke inferred a wave theory of light. His is the first-recorded hypothesis of the cause of the expansion of matter by heat, of air's composition by small particles in constant motion that thus generate its pressure, and of heat as energy.

In physics, Hooke inferred that gravity obeys an inverse square law and arguably was the first to hypothesise such a relation in planetary motion, a principle Isaac Newton furthered and formalised in Newton's law of universal gravitation. Priority over this insight contributed to the rivalry between Hooke and Newton. In geology and palaeontology, Hooke originated the theory of a terraqueous globe, thus disputing the Biblical view of the Earth's age; he also hypothesised the extinction of species, and argued hills and mountains had become elevated by geological processes. By identifying fossils of extinct species, Hooke presaged the theory of biological evolution.

Early life
Much of what is known of Hooke's early life comes from an autobiography he commenced in 1696 but never completed; Richard Waller FRS mentions it in his introduction to The Posthumous Works of Robert Hooke, M.D. S.R.S., which was printed in 1705. The work of Waller, along with John Ward's Lives of the Gresham Professors, and John Aubrey's Brief Lives form the major near-contemporaneous biographical accounts of his life.

Hooke was born in 1635 in Freshwater, Isle of Wight, to Cecily Gyles and the Anglican priest John Hooke, who was the curate of All Saints' Church, Freshwater. Robert was the youngest, by seven years, of four siblings (two boys and two girls); he was frail and not expected to live. Although his father gave him some instruction in English, (Latin) Grammar and Divinity, Robert's education was largely neglected. Left to his own devices, he made little mechanical toys; seeing a brass clock dismantled, he built a wooden replica that "would go".

Hooke's father died in October 1648, leaving £40 in his will to Robert (plus another £10 held over from his grandmother). At the age of 13, he took this to London to become an apprentice to the celebrated painter Peter Lely. Hooke also had "some instruction in drawing" from the limner Samuel Cowper but "the smell of the Oil Colours did not agree with his Constitution, increasing his Head-ache to which he was ever too much subject", and he became a pupil at Westminster School, living with its master Richard Busby. Hooke quickly mastered Latin, Greek and Euclid's Elements; he also learnt to play the organ and began his lifelong study of mechanics. He remained an accomplished draughtsman, as he was later to demonstrate in his drawings that illustrate the work of Robert Boyle and Hooke's own Micrographia.

Oxford

In 1653, Hooke secured a place at Christ Church, Oxford, receiving free tuition and accommodation as an organist and a chorister, and a basic income as a servitor, despite the fact he did not officially matriculate until 1658. In 1662, Hooke was awarded a Master of Arts degree.

While a student at Oxford, Hooke was also employed as an assistant to Dr Thomas Willis – a physician, chemist and member of the Oxford Philosophical Club. The Philosophical Club had been founded by John Wilkins, Warden of Wadham College, who led this important group of scientists who went on to form the nucleus of the Royal Society. In 1659, Hooke described to the Club some elements of a method of heavier-than-air flight but concluded human muscles were insufficient to the task. Through the Club, Hooke met Seth Ward (the University's Savilian Professor of Astronomy) and developed for Ward a mechanism that improved the regularity of pendulum clocks used for astronomical time-keeping. Hooke characterised his Oxford days as the foundation of his lifelong passion for science. The friends he made there, particularly Christopher Wren, were important to him throughout his career. Willis introduced Hooke to Robert Boyle, who the Club sought to attract to Oxford.

In 1655, Boyle moved to Oxford and Hooke became nominally his assistant but in practice his co-experimenter. Boyle had been working on gas pressures; the possibility a vacuum might exist despite Aristotle's maxim "Nature abhors a vacuum" had just begun to be considered. Hooke developed an air pump for Boyle's experiments rather than use Ralph Greatorex's pump, which Hooke considered as "too gross to perform any great matter". Hooke's engine enabled the development of the eponymous law that was subsequently attributed to Boyle; Hooke had a particularly keen eye and was an adept mathematician, neither of which applied to Boyle. Hooke taught Boyle Euclid's Elements and Descartes's Principles of Philosophy; it also caused them to recognise fire as a chemical reaction and not, as Aristotle taught, a fundamental element of nature.

Royal Society
According to Henry Robinson, Librarian of The Royal Society in 1935: "Without his weekly experiments and prolific work the Society could scarcely have survived, or, at least, would have developed in a quite different way. It is scarcely an exaggeration to say that he was, historically, the creator of the Royal Society."

The Royal Society for the Improvement of Natural Knowledge by Experiment was founded in 1660 and given its Royal Charter in July 1662. On 5 November 1661, Robert Moray proposed the appointment of a curator to furnish the society with experiments, and this was unanimously passed and Hooke was named on Boyle's recommendation. The Society did not have a reliable income to fully fund the post of Curator of Experiments but in 1664, John Cutler settled an annual gratuity of £50 on the Society to found a "" lectureship at Gresham College on the understanding the Society would appoint Hooke to this task. On 27 June 1664, Hooke was confirmed to the office and on 11 January 1665, he was named Curator by Office for life with an annual salary of £80, which consisting of £30 from the Society and Cutler's £50 annuity.

In June 1663, Hooke was elected a Fellow of the Royal Society (FRS). On 20 March 1665, he was also appointed Gresham Professor of Geometry. On 13 September 1667, Hooke became acting Secretary of the Society and on 19 December 1667, he was appointed its Joint Secretary.

Personality, relationships, health and death

Although John Aubrey described Hooke as a person of "great virtue and goodness". much has been written about the unpleasant side of Hooke's personality. According to his first biographer Richard Waller, Hooke was "in person, but despicable", and "melancholy, mistrustful, and jealous". Waller's comments influenced other writers for more than 200 years such that many books and articles – especially biographies of Isaac Newton – portray Hooke as a disgruntled, selfish, anti-social curmudgeon. For example, Arthur Berry said Hooke "claimed credit for most of the scientific discoveries of the time". Sullivan wrote he was "positively unscrupulous" and had an "uneasy apprehensive vanity" in dealings with Newton. Manuel described Hooke as "cantankerous, envious, vengeful". According to More, Hooke had both a "cynical temperament" and a "caustic tongue". Andrade was more sympathetic but still described Hooke as "difficult", "suspicious" and "irritable". In October 1675, the Council of the Royal Society considered a motion to expel Hooke because of an attack he made on Christiaan Huygens over scientific priority in watch design but it did not pass. According to Hooke's biographer Ellen Drake: "if one studies the intellectual milieu of the time, the controversies and rivalries of the type in which he was involved seem almost to be the rule rather than the exception. And Hooke's reaction to such controversy involving his own discoveries and inventions seems mild in comparison to the behaviour of some of his contemporaries'."

The publication of Hooke's diary in 1935 revealed previously unknown details about his social and familial relationships. His biographer Margaret said: "the picture which is usually painted of Hooke as a morose ... recluse is completely false". He interacted with noted artisans such as clock-maker Thomas Tompion and instrument-maker Christopher Cocks (Cox). Hooke often met Christopher Wren, with whom he shared many interests, and had a lasting friendship with John Aubrey. His diaries also make frequent reference to meetings at coffeehouses and taverns, as well as to dinners with Robert Boyle. On many occasions, Hooke took tea with his lab assistant Harry Hunt. Although he largely lived alone – apart from the servants who ran his home – his niece Grace Hooke and his cousin Tom Giles lived with him for some years as children.

Hooke never married. According to his diary, Hooke sexually abused his niece Grace, who was in his custody between the ages of 10 and 17; and he also had sexual relations with several maids and housekeepers.

Since childhood, Hooke suffered from migraine, tinnitus, dizziness and bouts of insomnia; he also had a spinal deformity that was consistent with a diagnosis of Scheuermann's kyphosis, giving him in middle and later years a "thin and crooked body, over-large head and protruding eyes". Approaching these in a scientific spirit, he experimented with self-medication, diligently recording symptoms, substances and effects in his diary. He regularly used sal ammoniac, emetics, laxatives and opiates, which appear to have had an increasing effect on his physical and mental health over time.

Hooke died in London on 3 March 1703, having been blind and bedridden during the last year of his life. A chest containing £8,000 in money and gold was found in his room at Gresham College. His library contained over 3,000 books in Latin, French, Italian and English. Although he had talked of leaving a generous bequest to the Royal Society, which would have given his name to a library, laboratory and lectures, no will was found and the money passed to a cousin named Elizabeth Stephens. Hooke was buried at St Helen's Church, Bishopsgate, in the City of London but the precise location of his grave is unknown.

Science
Hooke's role at the Royal Society was to demonstrate experiments from his own methods or at the suggestion of members. Among his earliest demonstrations were discussions of the nature of air and the implosion of glass bubbles that had been sealed with enclosed hot air. He also demonstrated that a dog could be kept alive with its thorax opened, provided air was pumped in and out of its lungs. He noted the difference between venous and arterial blood, and thus demonstrated that the Pabulum vitae ("food of life") and flammae [flames] were the same thing. There were also experiments on gravity, the falling of objects, the weighing of bodies, the measurement of barometric pressure at different heights, and the movement of pendulums up to 200 ft. His biographer described him as England's first meteorologist, in her description of his essay Method for making a history of the weather. (Hooke specifies that a thermometer, a hygrometer, a wind gauge and a record sheet be used for proper weather records.)

Astronomy

In May 1664, using a 12 ft refracting telescope, Hooke observed the Great Red Spot of Jupiter for two hours as it moved across the planet's face. In March 1665, he published his findings and from them, the Italian astronomer Giovanni Cassini calculated the rotation period of Jupiter to be nine hours and fifty-five minutes.

One of the most-challenging problems Hooke investigated was the measurement of the distance from Earth to a star other than the Sun. Hooke selected the star Gamma Draconis and chose the method of parallax determination. In 1669, after several months of observing, Hooke believed the desired result had been achieved. It is now known his equipment was far too imprecise to obtain an accurate measurement.

Hooke's Micrographia contains illustrations of the Pleiades star cluster and lunar craters. He conducted experiments to investigate the formation of these craters and concluded their existence meant the Moon must have its own gravity, a radical departure from the contemporaneous Aristotelian celestial model. He also was an early observer of the rings of Saturn, and discovered one of the first-observed double-star systems Gamma Arietis in 1664.

To achieve these discoveries, Hooke needed better instruments than those that were available at the time. Accordingly, he invented three new mechanisms: the Hooke joint, a sophisticated universal joint that allowed his instruments to smoothly follow the apparent motion of the observed body; the first clockwork drive to automate the process; and a micrometer screw that allowed him to achieve an precision of ten seconds of arc. Hooke was dissatisfied with refracting telescopes so he built the first practical Gregorian telescope that used a silvered glass mirror.

Mechanics
In 1660, Hooke discovered the law of elasticity that bears his name and describes the linear variation of tension with extension in an elastic spring. Hooke first described this discovery in an anagram "ceiiinosssttuv", whose solution he published in 1678 as Ut tensio, sic vis ("As the extension, so the force"). His work on elasticity culminated in his development of the balance spring or hairspring, which for the first time enabled a portable timepiece – a watch – to keep time with reasonable accuracy. A bitter dispute between Hooke and Christiaan Huygens on the priority of this invention was to continue for centuries after the death of both but a note dated 23 June 1670 in the journals of the Royal Society, describing a demonstration of a balance-controlled watch before the Royal Society, may support Hooke's claim to priority for the idea. Nevertheless, it is Huygens who is credited with building the first watch to use a balance spring.

Hooke's announcement of his law of elasticity using an anagram was a method scientists, such as Hooke, Huygens and Galileo, sometimes used to establish priority for a discovery without revealing details. Hooke used mechanical analogues to understand fundamental processes such as the motion of a spherical pendulum and of a ball in a hollow cone, to demonstrate central force due to gravity, and a hanging chain net with point loads to provide the optimum shape for a dome with heavy cross on top.

Despite continuing reports to the contrary, Hooke did not influence Thomas Newcomen's invention of the steam engine; this myth, which originated in an article in the third edition of "Encyclopædia Britannica", has been found to be mistaken.)

Gravitation
While many of Hooke's contemporaries, such as Isaac Newton, believed in aether as a medium for transmitting attraction and repulsion between separated celestial bodies, Hooke argued for an attracting principle of gravitation in Micrographia (1665). In a communication to the Royal Society in 1666, he wrote: "I will explain a system of the world very different from any yet received. It is founded on the following positions. 1. That all the heavenly bodies have not only a gravitation of their parts to their own proper centre, but that they also mutually attract each other within their spheres of action. 2. That all bodies having a simple motion, will continue to move in a straight line, unless continually deflected from it by some extraneous force, causing them to describe a circle, an ellipse, or some other curve. 3. That this attraction is so much the greater as the bodies are nearer. As to the proportion in which those forces diminish by an increase of distance, I own I have not discovered it. ..."

Hooke's 1674 Gresham lecture, An Attempt to Prove the Motion of the Earth by Observations (published 1679), said gravitation applies to "all celestial bodies" and restated these three propositions.

Hooke's statements up to 1674 make no mention, however, that an inverse square law applies or might apply to these attractions. His model of gravitation was also not yet universal, though it approached universality more closely than previous hypotheses. Hooke did not provide accompanying evidence or mathematical demonstration; he stated in 1674: "Now what these several degrees [of gravitational attraction] are I have not yet experimentally verified", indicating he did not yet know what law the gravitation might follow; and about his whole proposal, he said: "This I only hint at present ... having my self many other things in hand which I would first, and therefore cannot so well attend it" (i.e. "prosecuting this Inquiry").

In November 1679, Hooke initiated a notable exchange of letters with Newton that was published in 1960. Hooke's ostensible purpose was to tell Newton he (Hooke) had been appointed to manage the Royal Society's correspondence; Hooke therefore wanted to hear from members about their research or their views about the research of others. Hooke asked Newton's opinions about various matters. Among other items, Hooke mentioned "compounding the celestial motions of the planets of a direct motion by the tangent and an attractive motion towards the central body"; his "hypothesis of the or causes of springinesse"; a new hypothesis from Paris about planetary motions, which he described at length; efforts to carry out or improve national surveys; and the difference of latitude between London and Cambridge.

Newton's reply offered "a of my own" about a terrestrial experiment rather than a proposal about celestial motions that might detect the Earth's motion; the experiment would use a body suspended in air and then dropped. Hooke wanted to discern how Newton thought the falling body could experimentally reveal the Earth's motion by its direction of deviation from the vertical but Hooke went on hypothetically to consider how its motion could continue if the solid Earth had not been in the way, on a spiral path to the centre. Hooke disagreed with Newton's idea of the body's continuing motion. A further short correspondence developed; towards the end of it, writing on 6 January 1680 to Newton, Hooke communicated his "supposition ... that the Attraction always is in a duplicate proportion to the Distance from the, and Consequently that the Velocity will be in a subduplicate proportion to the Attraction and Consequently as Kepler Supposes to the Distance". (Hooke's inference about the velocity is incorrect.)

In 1686, when the first book of Newton's Principia was presented to the Royal Society, Hooke said he had given Newton the "notion" of "the rule of the decrease of Gravity, being reciprocally as the squares of the distances from the ". At the same time, according to Edmond Halley's contemporaneous report, Hooke agreed "the Demonstration of the Curves generated thereby" was wholly Newton's.

According to a 2002 assessment of the early history of the inverse square law: "by the late 1660s, the assumption of an 'inverse proportion between gravity and the square of distance' was rather common and had been advanced by a number of different people for different reasons". In the 1660s, Newton had shown for planetary motion under a circular assumption, force in the radial direction had an inverse-square relation with distance from the centre. Newton, who in May 1686 was presented with Hooke's claim to priority on the inverse square law, denied he was to be credited as author of the idea, giving reasons including the citation of prior work by others. Newton also said that, even if he had first heard of the inverse square proportion from Hooke (which Newton said he had not), he would still have some rights to it because of his mathematical developments and demonstrations. These, he said, enabled observations to be relied upon as evidence of its accuracy while according to Newton, Hooke, without mathematical demonstrations and evidence in favour of the supposition, could only guess it was approximately valid "at great distances from the centre".

Newton did accept and acknowledge, in all editions of the Principia, Hooke and others had separately appreciated the inverse square law in the solar system. Newton acknowledged Wren, Hooke and Halley in this connection in his "Scholium to Proposition 4" in Book1. In a letter to Halley, Newton also acknowledged his correspondence with Hooke in 1679–1680 had reawakened his dormant interest in astronomical matters but that did not mean, according to Newton, Hooke had told Newton anything new or original. Newton wrote: "Yet am I not beholden to him for any light into that business ... but only for the diversion he gave me from my other studies to think on these things & for his in writing as if he had found the motion in the Ellipsis, which inclined me to try it."

Whilst Newton was primarily a pioneer in mathematical analysis and its applications, and optical experimentation, Hooke was a creative experimenter of such great range who left some of his ideas, such as those about gravitation, undeveloped. In 1759, decades after the deaths of both Newton and Hooke, Alexis Clairaut, mathematical astronomer eminent in his own right in the field of gravitational studies, reviewed Hooke's published work on gravitation. According to Stephen Peter Rigaud, Clairaut wrote: "The example of Hooke and that of Kepler [serves] to show what a distance there is between a truth that is glimpsed and a truth that is demonstrated". I. Bernard Cohen said: "Hooke's claim to the inverse-square law has masked Newton's far more fundamental debt to him, the analysis of curvilinear orbital motion. In asking for too much credit, Hooke effectively denied to himself the credit due him for a seminal idea".

Horology

Hooke made important contributions to the science of timekeeping and was intimately involved in the advances of his time; these included refinement of the pendulum as a better regulator for clocks, increased precision of clock mechanisms and the use of the balance spring to improve the timekeeping of watches.

Galileo had observed the regularity of a pendulum and Huygens first incorporated it in a clock; in 1668, Hooke demonstrated his new device to keep a pendulum swinging regularly in unsteady conditions. His invention of a tooth-cutting machine enabled a substantial improvement in the accuracy and precision of timepieces. Waller reported the invention was, by Hooke's death, in constant use among clock makers.

Hooke announced he conceived a way to build a marine chronometer to determine longitude. and with the help of Boyle and others, he attempted to patent it. In the process, Hooke demonstrated a pocket-watch of his own devising that was fitted with a coil spring attached to the arbour of the balance. Hooke's refusal to accept an escape clause in the proposed exclusive contract for the use of this idea resulted in its abandonment.

Hooke developed the principle of the balance spring independently of Huygens and at least five years beforehand. Huygens published his own work in Journal de Scavans in February 1675 and built the first functioning watch to use a balance spring.

Microscopy
In 1663 and 1664, Hooke made his microscopic, and some astronomic, observations, which he collated in Micrographia in 1665. His book, which describes observations with microscopes and telescopes, as well as original work in biology, contains the earliest-recorded observation of a microorganism, the microfungus Mucor. Hooke coined the term "cell", suggesting a resemblance between plant structures and honeycomb cells.The hand-crafted, leather-and-gold-tooled microscope he designed and used to make the observations for Micrographia, which Christopher Cock made for him in London, is on display at the National Museum of Health and Medicine in Maryland. Hooke's work developed from that of Henry Power, who published his microscopy work in Experimental Philosophy (1663); in turn, the Dutch scientist Antonie van Leeuwenhoek went on to develop increased magnification and so reveal protozoa, blood cells and spermatazoa.

Micrographia also contains Hooke's, or perhaps Boyle's and Hooke's, ideas on combustion. Hooke's experiments led him to conclude combustion involves a component of air, a statement with which modern scientists would agree but that was not understood widely, if at all, in the seventeenth century. He also concluded respiration and combustion involve a specific and limited component of air. According to Partington, if "Hooke had continued his experiments on combustion, it is probable that he would have discovered oxygen".

Samuel Pepys wrote of the book in his diary on 21 January 16$2⁄3$: "Before I went to bed I sat up till two o’clock in my chamber reading of Mr. Hooke's  Observations, the most ingenious book that ever I read in my life".

Palaeontology and geology
One of the observations in Micrographia is of fossil wood, the microscopic structure of which Hooke compared to that of ordinary wood. This led him to conclude that fossilised objects like petrified wood and fossil shells such as ammonites were the remains of living things that had been soaked in mineral-laden petrifying water. He believed that such fossils provided reliable clues about the history of life on Earth and, despite the objections of contemporary naturalists like John Ray – who found the concept of extinction theologically unacceptable – that in some cases they might represent species that had become extinct through some geological disaster. In a series of lectures in 1668, Hooke proposed the then-heretical idea the Earth's surface had been formed by volcanoes and earthquakes, and that the latter were responsible for shell fossils being found far above sea level.

In 1835, Charles Lyell, the Scottish geologist and associate of Charles Darwin, wrote of Hooke in Principles of Geology: "His treatise ... is the most philosophical production of that age, in regard to the causes of former changes in the organic and inorganic kingdoms of nature".

Memory
Hooke's scientific model of human memory was one of the first of its kind. In a 1682 lecture to the Royal Society, Hooke proposed a mechanical analogue model of human memory that bore little resemblance to the mainly philosophical models of earlier writers. This model addressed the components of encoding, memory capacity, repetition, retrieval, and forgetting – some with surprisingly modern accuracy. According to psychology professor Douglas Hintzman, Hooke's model's most-interesting points are that it allows for attention and other top-down influences on encoding; it uses resonance to implement parallel, cue-dependent retrieval; it explains memory for recency; it offers a single-system account of repetition and priming; and the power law of forgetting can be derived from the model's assumption in a straightforward way.

Other
On 8 July 1680, Hooke observed the nodal patterns associated with the modes of vibration of glass plates. He ran a bow along the edge of a flour-covered glass plate and saw the nodal patterns emerge. In acoustics, in 1681, Hooke showed the Royal Society that musical tones can be generated using spinning brass cogs cut with teeth in particular proportions.

Architecture

Robert Hooke was Surveyor to the City of London and chief assistant to Christopher Wren, in which capacities he helped Wren rebuild London after the Great Fire of 1666. Hooke designed the Monument to the Great Fire of London (1672), Montagu House in Bloomsbury (1674) and Bethlem Royal Hospital (1674), which became known as "Bedlam". Other buildings Hooke designed include the Royal College of Physicians (1679); Aske's Hospital (1679), Ragley Hall, Warwickshire (1680); the Church of St Mary Magdalene at Willen, Buckinghamshire (1680) and Ramsbury Manor, Wiltshire (1681). He worked on many of the London churches that were rebuilt after the fire; Hooke was generally subcontracted by Wren; from 1671 to 1696, Wren's office paid Hooke £2,820 in fees, more than he ever earned from his Royal Society and Cutler Lectureship posts.

Wren and Hooke were both keen astronomers. The Monument to the Great Fire of London was designed to serve a scientific function as a zenith telescope for astronomical observation, though traffic vibration made it unusable for this purpose. The legacy of this can be observed in the construction of the spiral staircase, which has no central column, and in the observation chamber, which remains in place below ground level. He also collaborated with Wren on the design of St Paul's Cathedral; Hooke determined the ideal shape of an arch is an inverted catenary and thence that a circular series of such arches makes an ideal shape for the cathedral's dome.

In the reconstruction after the Great Fire, Hooke proposed redesigning London's streets on a grid pattern with wide boulevards and arteries, a pattern that was later used in Haussmann's renovation of Paris and in many American cities, for which Wren and others also submitted proposals. The King decided both the prospective cost of building and compensation, and the need to quickly restore trade and population meant the city would be rebuilt on the original property lines. Hooke was given the task of surveying the ruins to identify foundations, street edges and property boundaries. He was closely involved with the drafting of an Act of Common Council (April 1667), which set out the process by which the original foundations would be formally recognised and certificated. According to Lisa Jardine: "in the four weeks from the 4th of October, [Hooke] helped map the fire-damaged area, began compiling a Land Information System for London, and drew up building regulations for an Act of Parliament to govern the rebuilding". Stephen Inwood said: "the surveyors' reports, which were generally written by Hooke, show an admirable ability to get to the nub of intricate neighbourly squabbles, and to produce a crisp and judicious recommendation from a tangle of claims and counter-claims".

Hooke also had to measure and certify land that would be compulsorily purchased for the planned road widening so compensation could be paid. In 1670, he was appointed Surveyor of the Royal Works. Hooke, together with the work of Scottish cartographer and printer John Ogilby, Hooke's precise and detailed surveys led to production in 1677 of a large-scale map of London, the first-known to be of a specific scale (1:1200).

Likenesses

No authenticated portrait of Robert Hooke exists, a situation that has sometimes been attributed to the heated conflicts between Hooke and Isaac Newton, although Hooke's biographer Allan Chapman rejects as a myth claims Newton or his acolytes deliberately destroyed Hooke's portrait. German antiquarian and scholar Zacharias Conrad von Uffenbach visited the Royal Society in 1710 and his account of his visit mentions him being shown portraits of "Boyle and Hoock", which were said to be good likenesses but, while Boyle's portrait survives, Hooke's has been lost. In Hooke's time, the Royal Society met at Gresham College but within a few months of Hooke's death Newton became the Society's president and plans for a new meeting place were made. When the Royal Society moved to new premises in 1710, Hooke's was the only portrait that went missing and remains so. According to Hooke's diary, he sat for a portrait by renowned artist Mary Beale, so it is possible such a portrait did at some time exist. Conversely, Chapman draws attention to the fact that Waller's extensively illustrated work, Posthumous works of Robert Hooke, published shortly after Hooke's death, has no portrait of him.

Two contemporaneous, written descriptions of Hooke's appearance have survived; his close friend John Aubrey described him in middle age and at the height of his creative powers:

""

Richard Waller, writing in 1705 in The Posthumous Works of Robert Hooke, described the elderly Hooke:

"As to his Person he was but despicable, being very crooked, tho' I have heard from himself, and others, that he was strait till about 16 Years of Age when he first grew awry, by frequent practising, with a Turn-Lath ... He was always very pale and lean, and laterly nothing but Skin and Bone, with a Meagre Aspect, his Eyes grey and full, with a sharp ingenious Look whilst younger; his nose but thin, of a moderate height and length; his Mouth meanly wide, and upper lip thin; his Chin sharp, and Forehead large; his Head of a middle size. He wore his own Hair of a dark Brown colour, very long and hanging neglected over his Face uncut and lank ..."

On 3 July 1939, Time magazine published a portrait, supposedly of Hooke, but when Ashley Montagu traced the source, it was found to lack a verifiable connection to Hooke. Montagu found the two contemporaneous written descriptions of Hooke's appearance agree with one another but that neither matches the portrait in Time.

In 2003, historian Lisa Jardine conjectured that a recently discovered portrait was of Hooke, but this proposal was disproved by William B. Jensen of the University of Cincinnati who identified the subject as the Flemish scholar Jan Baptist van Helmont.

Other possible likenesses of Hooke include:
 * A seal used by Hooke displays an unusual profile portrait of a man's head, which some have said portrays Hooke.
 * The engraved frontispiece to the 1728 edition of Chambers' Cyclopedia shows a drawing of a bust of Robert Hooke. The extent to which the drawing is based on a real work of art is unknown.
 * A memorial window existed at St Helen's Church, Bishopsgate, London, but it was a formulaic rendering rather than a n accurate likeness. The window was destroyed in the 1993 Bishopsgate bombing.

In 2003, the amateur painter Rita Greer embarked on a project to memorialise Hooke and produce credible images of him, both painted and drawn, she believes match Aubrey's and Waller's the descriptions of him. Greer's images of Hooke, which are free to use under the Free Art License, have been used for television programmes in the UK and the US, in books, magazines and for public relations.

In 2019, Larry Griffing, an associate professor in Biology at Texas A&M University, proposed that a portrait by Mary Beale of an unknown sitter and referred to as Portrait of a Mathematician – is actually of Hooke, noting the physical features of the sitter in the portrait match Hooke's. The figure points to a drawing of elliptical motion that appears to match an unpublished manuscript created by him. The painting also includes an orrery depicting the same principle. According to Griffing, buildings included in the image are of Lowther Castle, now in Cumbria, and its Church of St Michael. The church was renovated under one of Hooke's architectural commissions, which Beale would have known from her extensive body of work for the Lowther family. According to Griffing, the painting would once have been owned by the Royal Society but was abandoned when Newton, its president, moved the Society's headquarters in 1710. Christopher Whittaker of the School of Education, University of Durham, England, has questioned Griffing's analysis; according to Whittaker, it is more likely to be of Isaac Barrow; in a response to Whittaker, Griffing reaffirmed his deduction.

Commemorations

 * 3514 Hooke, an asteroid (1971 UJ)
 * A crater on the Moon and another on Mars are named in his honour.
 * The Hooke Medal is an annual award by the British Society for Cell Biology, to recognise "an emerging leader in cell biology".
 * List of new memorials to Robert Hooke 2005–2009 erected the occasion of the tercentenary of his death
 * The Boyle-Hooke plaque in Oxford

Works

 * Lectures de potentia restitutiva, or, Of spring explaining the power of springing bodies. London : Printed for John Martyn. 1678.
 * Micrographia:
 * includes An Attempt to prove the Annual Motion of the Earth, Animadversions on the Machina Coelestis of Mr. Hevelius, A Description of Helioscopes with other instruments, Mechanical Improvement of Lamps, Remarks about Comets 1677, Microscopium, Lectures on the Spring, etc.
 * includes An Attempt to prove the Annual Motion of the Earth, Animadversions on the Machina Coelestis of Mr. Hevelius, A Description of Helioscopes with other instruments, Mechanical Improvement of Lamps, Remarks about Comets 1677, Microscopium, Lectures on the Spring, etc.

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

title: Robert Hooke


text:
Core dump

In computing, a core dump, memory dump, crash dump, storage dump, system dump, or ABEND dump consists of the recorded state of the working memory of a computer program at a specific time, generally when the program has crashed or otherwise terminated abnormally. In practice, other key pieces of program state are usually dumped at the same time, including the processor registers, which may include the program counter and stack pointer, memory management information, and other processor and operating system flags and information. A snapshot dump (or snap dump) is a memory dump requested by the computer operator or by the running program, after which the program is able to continue. Core dumps are often used to assist in diagnosing and debugging errors in computer programs.

On many operating systems, a fatal exception in a program automatically triggers a core dump. By extension, the phrase "to dump core" has come to mean in many cases, any fatal error, regardless of whether a record of the program memory exists. The term "core dump", "memory dump", or just "dump" has also become jargon to indicate any output of a large amount of raw data for further examination or other purposes.

Background
The name comes from magnetic-core memory, the principal form of random-access memory from the 1950s to the 1970s. The name has remained long after magnetic-core technology became obsolete.

Earliest core dumps were paper printouts of the contents of memory, typically arranged in columns of octal or hexadecimal numbers (a "hex dump"), sometimes accompanied by their interpretations as machine language instructions, text strings, or decimal or floating-point numbers (cf. disassembler).

As memory sizes increased and post-mortem analysis utilities were developed, dumps were written to magnetic media like tape or disk.

Instead of only displaying the contents of the applicable memory, modern operating systems typically generate a file containing an image of the memory belonging to the crashed process, or the memory images of parts of the address space related to that process, along with other information such as the values of processor registers, program counter, system flags, and other information useful in determining the root cause of the crash. These files can be viewed as text, printed, or analysed with specialised tools such as elfdump on Unix and Unix-like systems, objdump and kdump on Linux, IPCS (Interactive Problem Control System) on IBM z/OS, DVF (Dump Viewing Facility) on IBM z/VM, WinDbg on Microsoft Windows, Valgrind, or other debuggers.

In some operating systems an application or operator may request a snapshot of selected storage blocks, rather than all of the storage used by the application or operating system.

Uses
Core dumps can serve as useful debugging aids in several situations. On early standalone or batch-processing systems, core dumps allowed a user to debug a program without monopolizing the (very expensive) computing facility for debugging; a printout could also be more convenient than debugging using front panel switches and lights.

On shared computers, whether time-sharing, batch processing, or server systems, core dumps allow off-line debugging of the operating system, so that the system can go back into operation immediately.

Core dumps allow a user to save a crash for later or off-site analysis, or comparison with other crashes. For embedded computers, it may be impractical to support debugging on the computer itself, so analysis of a dump may take place on a different computer. Some operating systems such as early versions of Unix did not support attaching debuggers to running processes, so core dumps were necessary to run a debugger on a process's memory contents.

Core dumps can be used to capture data freed during dynamic memory allocation and may thus be used to retrieve information from a program that is no longer running. In the absence of an interactive debugger, the core dump may be used by an assiduous programmer to determine the error from direct examination.

Snap dumps are sometimes a convenient way for applications to record quick and dirty debugging output.

Analysis
A core dump generally represents the complete contents of the dumped regions of the address space of the dumped process. Depending on the operating system, the dump may contain few or no data structures to aid interpretation of the memory regions. In these systems, successful interpretation requires that the program or user trying to interpret the dump understands the structure of the program's memory use.

A debugger can use a symbol table, if one exists, to help the programmer interpret dumps, identifying variables symbolically and displaying source code; if the symbol table is not available, less interpretation of the dump is possible, but there might still be enough possible to determine the cause of the problem. There are also special-purpose tools called dump analyzers to analyze dumps. One popular tool, available on many operating systems, is the GNU binutils' objdump.

On modern Unix-like operating systems, administrators and programmers can read core dump files using the GNU Binutils Binary File Descriptor library (BFD), and the GNU Debugger (gdb) and objdump that use this library. This library will supply the raw data for a given address in a memory region from a core dump; it does not know anything about variables or data structures in that memory region, so the application using the library to read the core dump will have to determine the addresses of variables and determine the layout of data structures itself, for example by using the symbol table for the program undergoing debugging.

Analysts of crash dumps from Linux systems can use kdump or the Linux Kernel Crash Dump (LKCD).

Core dumps can save the context (state) of a process at a given state for returning to it later. Systems can be made highly available by transferring core between processors, sometimes via core dump files themselves.

Core can also be dumped onto a remote host over a network (which is a security risk).

Users of IBM mainframes running z/OS can browse SVC and transaction dumps using Interactive Problem Control System (IPCS), a full screen dump reader which was originally introduced in OS/VS2 (MVS), supports user written scripts in REXX and supports point-and-shoot browsing of dumps.

Format
In older and simpler operating systems, each process had a contiguous address-space, so a dump file was sometimes simply a file with the sequence of bytes, digits, characters or words. On other early machines a dump file contained discrete records, each containing a storage address and the associated contents. On early machines, the dump was often written by a stand-alone dump program rather than by the application or the operating system.

The IBSYS monitor for the IBM 7090 included a System Core-Storage Dump Program that supported post-motem and snap dumps.

On the IBM System/360, the standard operating systems wrote formatted ABEND and SNAP dumps, with the addresses, registers, storage contents, etc., all converted into printable forms. Later releases added the ability to write unformatted dumps, called at that time core image dumps (also known as SVC dumps.) In modern operating systems, a process address space may contain gaps, and it may share pages with other processes or files, so more elaborate representations are used; they may also include other information about the state of the program at the time of the dump.

In Unix-like systems, core dumps generally use the standard executable image-format:
 * a.out in older versions of Unix,
 * ELF in modern Linux, System V, Solaris, and BSD systems,
 * Mach-O in macOS, etc.

OS/360 and successors

 * In OS/360 and successors, a job may assign arbitrary data set names (DSNs) to the ddnames  and   for a formatted ABEND dump and to arbitrary ddnames for SNAP dumps, or define those ddnames as SYSOUT.
 * The Damage Assessment and Repair (DAR) facility added an automatic unformatted storage dump to the dataset  at the time of failure as well as a console dump requested by the operator.
 * The newer transaction dump is very similar to the older SVC dump.
 * The Interactive Problem Control System (IPCS), added to OS/VS2 by Selectable Unit (SU) 57 and part of every subsequent MVS release, can be used to interactively analyze storage dumps on DASD. IPCS understands the format and relationships of system control blocks, and can produce a formatted display for analysis. The current versions of IPCS allow inspection of active address spaces  without first taking a storage dump.

Unix-like

 * Since Solaris 8, system utility  allows the name and location of core files to be configured.
 * Dumps of user processes are traditionally created as .  On Linux (since versions 2.4.21 and 2.6 of the Linux kernel mainline), a different name can be specified via procfs using the   configuration file; the specified name can also be a template that contains tags substituted by, for example, the executable filename, the process ID, or the reason for the dump.
 * System-wide dumps on modern Unix-like systems often appear as  or.

Others

 * Systems such as Microsoft Windows, which use filename extensions, may use extension ; for example, core dumps may be named   or.

Windows memory dumps
Microsoft Windows supports two memory dump formats, described below.

Kernel-mode dumps
There are five types of kernel-mode dumps: To analyze the Windows kernel-mode dumps Debugging Tools for Windows are used.
 * Complete memory dump – contains full physical memory for the target system.
 * Kernel memory dump – contains all the memory in use by the kernel at the time of the crash.
 * Small memory dump – contains various info such as the stop code, parameters, list of loaded device drivers, etc.
 * Automatic Memory Dump (Windows 8 and later) – same as Kernel memory dump, but if the paging file is both System Managed and too small to capture the Kernel memory dump, it will automatically increase the paging file to at least the size of RAM for four weeks, then reduce it to the smaller size.
 * Active memory dump (Windows 10 and later) – contains most of the memory in use by the kernel and user mode applications.

User-mode memory dumps
User-mode memory dump, also known as minidump, is a memory dump of a single process. It contains selected data records: full or partial (filtered) process memory; list of the threads with their call stacks and state (such as registers or TEB); information about handles to the kernel objects; list of loaded and unloaded libraries. Full list of options available in  enum.

Space missions
The NASA Voyager program was probably the first craft to routinely utilize the core dump feature in the Deep Space segment. The core dump feature is a mandatory telemetry feature for the Deep Space segment as it has been proven to minimize system diagnostic costs. The Voyager craft uses routine core dumps to spot memory damage from cosmic ray events.

Space Mission core dump systems are mostly based on existing toolkits for the target CPU or subsystem. However, over the duration of a mission the core dump subsystem may be substantially modified or enhanced for the specific needs of the mission.

title: Core dump


text:
Reserved word

In a computer language, a reserved word (also known as a reserved identifier) is a word that cannot be used as an identifier, such as the name of a variable, function, or label – it is "reserved from use". This is a syntactic definition, and a reserved word may have no user-defined meaning.

A closely related and often conflated notion is a keyword, which is a word with special meaning in a particular context. This is a semantic definition. By contrast, names in a standard library but not built into a language are not considered reserved words or keywords. The terms "reserved word" and "keyword" are often used interchangeably – one may say that a reserved word is "reserved for use as a keyword" – and formal use varies from language to language. For this article, we distinguish as above.

In general reserved words and keywords need not coincide, but in most modern languages keywords are a subset of reserved words, as this makes parsing easier, since keywords cannot be confused with identifiers. In some languages, like C or Python, reserved words and keywords coincide, while in other languages, like Java, all keywords are reserved words, but some reserved words are not keywords, being reserved for future use. In yet other languages, such as the older languages ALGOL, FORTRAN, and PL/I, there are keywords but no reserved words, with keywords being distinguished from identifiers by other means.

Distinction
The sets of reserved words and keywords in a language often coincide or are almost equal, and the distinction is subtle, so the terms are often used interchangeably. However, in careful use they are distinguished.

Making keywords be reserved words makes lexing easier, as a string of characters will unambiguously be either a keyword or an identifier, without depending on context; thus keywords are usually a subset of reserved words. However, reserved words need not be keywords. For example, in Java,  is a reserved word, but has no meaning and does not appear in any production rules in the grammar. This is usually done for forward compatibility, so a reserved word may become a keyword in a future version without breaking existing programs.

Conversely, keywords need not be reserved words, with their role understood from context, or they may be distinguished in another manner, such as by stropping. For example, the phrase  is unambiguous in most grammars, since a control statement of an if clause cannot start with an , and thus is allowed in some languages, such as FORTRAN. Alternatively, in ALGOL 68, keywords must be stropped – marked in some way to distinguished – in the strict language by listing in bold, and thus are not reserved words. Thus in the strict language the following expression is legal, as the bold keyword if does not conflict with the ordinary identifier :
 * if if eq 0 then 1 fi

However, in ALGOL 68 there is also a stropping regime in which keywords are reserved words, an example of how these distinct concepts often coincide; this is followed in many modern languages.

Syntax
A reserved word is one that "looks like" a normal word, but is not allowed to be used as a normal word. Formally this means that it satisfies the usual lexical syntax (syntax of words) of identifiers – for example, being a sequence of letters – but cannot be used where identifiers are used. For example, the word  is commonly a reserved word, while   generally is not, so   is a valid assignment, but   is not.

Keywords have varied uses, but mainly fall into a few classes: part of the phrase grammar (specifically a production rule with nonterminal symbols), with various meanings, often being used for control flow, such as the word  in most procedural languages, which indicates a conditional and takes clauses (the nonterminal symbols); names of primitive types in a language that support a type system, such as  ; primitive literal values such as   for Boolean true; or sometimes special commands like. Other uses of keywords in phrases are for input/output, such as.

The distinct definitions are clear when a language is analyzed by a combination of a lexer and a parser, and the syntax of the language is generated by a lexical grammar for the words, and a context-free grammar of production rules for the phrases. This is common in analyzing modern languages, and in this case keywords are a subset of reserved words, as they must be distinguished from identifiers at the word level (hence reserved words) to be syntactically analyzed differently at the phrase level (as keywords).

In this case reserved words are defined as part of the lexical grammar, and are each tokenized as a separate type, distinct from identifiers. In conventional notation, the reserved words  and   for example are tokenized as types   and , respectively, while   and   are both tokenized as type.

Keywords, by contrast, syntactically appear in the phrase grammar, as terminal symbols. For example, the production rule for a conditional expression may be. In this case  and   are terminal symbols, meaning "a token of type   or , respectively" – and due to the lexical grammar, this means the string   or   in the original source. As an example of a primitive constant value,  may be a keyword representing the boolean value "true", in which case it should appear in the grammar as a possible expansion of the production , for instance.

Reserved ranges
Beyond reserving specific lists of words, some languages reserve entire ranges of words, for use as private spaces for future language version, different dialects, compiler vendor-specific extensions, or for internal use by a compiler, notably in name mangling.

This is most often done by using a prefix, often one or more underscores. C and C++ are notable in this respect: C99 reserves identifiers that start with two underscores or an underscore followed by an uppercase letter, and further reserves identifiers that start with a single underscore (in the ordinary and tag spaces) for use in file scope; with C++03 further reserves identifiers that contain a double underscore anywhere – this allows the use of a double underscore as a separator (to connect user identifiers), for instance.

The frequent use of a double underscores in internal identifiers in Python gave rise to the abbreviation dunder; this was coined by Mark Jackson and independently by Tim Hochberg, within minutes of each other, both in reply to the same question in 2002.

Specification
The list of reserved words and keywords in a language are defined when a language is developed, and both form part of a language's formal specification. Generally one wishes to minimize the number of reserved words, to avoid restricting valid identifier names. Further, introducing new reserved words breaks existing programs that use that word (it is not backwards compatible), so this is avoided. To prevent this and provide forward compatibility, sometimes words are reserved without having a current use (a reserved word that is not a keyword), as this allows the word to be used in future without breaking existing programs. Alternatively, new language features can be implemented as predefineds, which can be overridden, thus not breaking existing programs.

Reasons for flexibility include allowing compiler vendors to extend the specification by including non-standard features, different standard dialects of language to extend it, or future versions of the language to include additional features. For example, a procedural language may anticipate adding object-oriented capabilities in a future version or some dialect, at which point one might add keywords like  or. To accommodate this possibility, the current specification may make these reserved words, even if they are not currently used.

A notable example is in Java, where  and   are reserved words — they have no meaning in Java but they also cannot be used as identifiers. By reserving the terms, they can be implemented in future versions of Java, if desired, without breaking older Java source code. For example, there was a proposal in 1999 to add C++-like  to the language, which was possible using the   word, since it was reserved but currently unused; however, this proposal was rejected – notably because even though adding the feature would not break any existing programs, using it in the standard library (notably in collections) would break compatibility. JavaScript also contains a number of reserved words without special functionality; the exact list varies by version and mode.

Languages differ significantly in how frequently they introduce new reserved words or keywords and how they name them, with some languages being very conservative and introducing new keywords rarely or never, to avoid breaking existing programs, while other languages introduce new keywords more freely, requiring existing programs to change existing identifiers that conflict. A case study is given by new keywords in C11 compared with C++11, both from 2011 – recall that in C and C++, identifiers that begin with an underscore followed by an uppercase letter are reserved: "The C committee prefers not to create new keywords in the user name space, as it is generally expected that each revision of C will avoid breaking older C programs. By comparison, the C++ committee (WG21) prefers to make new keywords as normal‐looking as the old keywords. For example, C++11 defines a new keyword to designate static storage local to one thread. C11 defines the new keyword as   In the new C11 header <threads.h>, there is a macro definition to provide the normal‐looking name:

That is, C11 introduced the keyword  within an existing set of reserved words (those with a certain prefix), and then used a separate facility (macro processing) to allow its use as if it were a new keyword without any prefixing, while C++11 introduce the keyword   despite this not being an existing reserved word, breaking any programs that used this, but without requiring macro processing.

Predefined names
A related notion to reserved words are predefined functions, methods, subroutines, types, or variables, particularly library routines from the standard library. These are similar in that they are part of the basic language, and may be used for similar purposes. However, these differ in that the name of one of these entities is typically categorized as an identifier instead of a reserved word, and is not treated specially in the syntactic analysis. Further, reserved words may not be redefined by the programmer, but predefineds can often be overridden for the extent of some scope.

Languages vary as to what is provided as a keyword and what is a predefined. Some languages, for instance, provide keywords for input/output operations whereas in others these are library routines. In Python (versions earlier than 3.0) and many BASIC dialects,  is a keyword. In contrast, the C, Lisp, and Python 3.0 equivalents,  , and   are functions in the standard library. Similarly, in Python prior to 3.0,,  , and   were predefined variables, but not reserved words, but in Python 3.0 they were made into reserved words.

Definition
Some use the terms "keyword" and "reserved word" interchangeably, while others distinguish usage, say by using "keyword" to mean a word that is special only in certain contexts but "reserved word" to mean a special word that cannot be used as a user-defined name. The meaning of keywords, and the meaning of the notion of keyword, differs widely from language to language. Concretely, in ALGOL 68, keywords are stropped (in the strict language, written in bold) and are not reserved words – the unstropped word can be used as an ordinary identifier.

The "Java Language Specification" uses the term "keyword". The ISO 9899 standard for the C language uses the term "keyword".

In many languages, such as C and similar environments like C++, a keyword is a reserved word which identifies a syntactic form. Words used in control flow constructs, such as,  , and   are keywords. In these languages, keywords cannot also be used as the names of variables or functions.

In some languages, such as ALGOL and ALGOL 68, keywords cannot be written verbatim, but must be stropped. This means that keywords must be marked somehow. E.g. by quoting them or by prefixing them by a special character. As a consequence, keywords are not reserved words, and thus the same word can be used for as a normal identifier. However, one stropping regime was to not strop the keywords, and instead have them simply be reserved words.

Some languages, such as PostScript, are extremely liberal in this approach, allowing core keywords to be redefined for specific purposes.

In Common Lisp, the term "keyword" (or "keyword symbol") is used for a special sort of symbol, or identifier. Unlike other symbols, which usually stand for variables or functions, keywords are self-quoting and self-evaluating :98 and are interned in the  package. Keywords are usually used to label named arguments to functions, and to represent symbolic values. The symbols which name functions, variables, special forms and macros in the package named COMMON-LISP are basically reserved words. The effect of redefining them is undefined in ANSI Common Lisp. Binding them is possible. For instance the expression  is possible, when   is a local variable. The leftmost  refers to the   operator; the remaining symbols are interpreted as variable names. Since there is a separate namespace for functions and variables,  could be a local variable. In Common Lisp, however, there are two special symbols which are not in the keyword package: the symbols  and. When evaluated as expressions, they evaluate to themselves. They cannot be used as the names of functions or variables, so are de facto reserved. is a well-formed expression, but the  operator will not permit the usage.

Typically, when a programmer attempts to use a keyword for a variable or function name, a compilation error will be triggered. In most modern editors, the keywords are automatically set to have a particular text colour to remind or inform the programmers that they are keywords.

In languages with macros or lazy evaluation, control flow constructs such as  can be implemented as macros or functions. In languages without these expressive features, they are generally keywords.

Comparison by languages
Different languages often have widely varying numbers of reserved words. For example, COBOL has about 400. Java, and other C derivatives, have a rather sparse set, about 50. Pure Prolog and PL/I have none.

Disadvantages
Definition of reserved words in a language raises problems. The language may be difficult for new users to learn because of a long list of reserved words to memorize which can't be used as identifiers. It may be difficult to extend the language because addition of reserved words for new features might invalidate existing programs or, conversely, "overloading" of existing reserved words with new meanings can be confusing. Porting programs can be problematic because a word not reserved by one system or compiler might be reserved by another.

Because reserved words cannot be used as identifiers, users may choose deliberate misspellings of reserved words as identifiers instead, such as clazz for Java variables of type Class.

Reserved words and language independence
Microsoft's .NET Common Language Infrastructure (CLI) specification allows code written in 40+ different programming languages to be combined into a final product. Because of this, identifier/reserved word collisions can occur when code implemented in one language tries to execute code written in another language. For example, a Visual Basic (.NET) library may contain a class definition such as:

If this is compiled and distributed as part of a toolbox, a C# programmer, wishing to define a variable of type " " would encounter a problem:  is a reserved word in C#. Thus, the following will not compile in C#:

A similar issue arises when accessing members, overriding virtual methods, and identifying namespaces.

This is resolved by stropping. To work around this issue, the specification allows placing (in C#) the at-sign before the identifier, which forces it to be considered an identifier rather than a reserved word by the compiler:

For consistency, this use is also permitted in non-public settings such as local variables, parameter names, and private members.

title: Reserved word