Famine food

Famine food

Breads made of orache and bran, fried in machine oil, were used as food in besieged Leningrad

A famine food or poverty food is any inexpensive or readily available food used to nourish people in times of extreme poverty or starvation, as during a war, an economic depression or famine. Quite often, the food is thereafter strongly associated with the hardship under which it was eaten, and is therefore socially downplayed or rejected as a food source in times of relative plenty.

The characterization of a foodstuff as "famine" or "poverty" food is primarily social. Some foods, such as lobster and other crustaceans, are considered poverty food in some societies and luxury food in others, and these distinctions can change over time.

Foods associated with famine need not be nutritionally deficient, or unsavoury. Having been driven to consume them in large amounts and for long periods of time, however, people often remain averse to them long after the immediate need to eat them has subsided. That remains the case even if such foodstuffs might otherwise constitute a healthy part of a more comprehensive diet.

Examples

A number of foodstuffs have been strongly associated with famine, war, or times of hardship throughout history:

  • The breadnut or Maya nut was cultivated by the ancient Mayans but is largely rejected as a poverty food in modern Central America.
  • Rutabagas were widely used as a food of last resort in Europe during World War I and World War II, and remain particularly unpopular in Germany.
  • In Polynesia, plants from the genus Xanthosoma, plants known locally as ʻape, were considered famine food and used only when the taro crop failed.
  • The fruit of the noni, sometimes also called "starvation fruit," has a strong smell and bitter taste that often relegates it to the level of a famine food.
  • The nara melon of southern Africa is sometimes eaten as a food of last resort.
  • Several species of edible kelp, including dulse and Irish moss (Chondrus crispus), were eaten by coastal peasants during the Irish Potato Famine of 1846-1848.
  • Sego lily bulbs were eaten by the Mormon pioneers when their food crops failed.
  • Tulip bulbs and sugar beets were eaten in the German-occupied parts of the Netherlands during the "hunger winter" of 1944-45.
  • Bark bread (Finnish: Pettuleipä, literally "pinewood bread") is a bread made from a combination of typical rye flour and pettu, which is a combination of dried and milled vascular cambium and phloem of the Scots pine. The result is dark bread that is nutritious but rock-hard and anything but tasty. Also chaff (silkko) and sawdust is known to have been used on making ersatz bread in Finland. Pettuleipä constitutes a paragon Scandinavian example of a famine food.
  • In Maine and on the Atlantic coast of Canada, fish and shellfish were once considered poverty food, and people would bury lobster shells in their yards rather than disposing of them in their rubbish so their neighbors would not learn they were reduced to eating lobster.[1]
  • In Collapse: How Societies Choose to Fail or Succeed, Jared Diamond posits that disdain for seafood, including fish, ringed seal, and whale, as poverty food contributed to the collapse of the Greenland Norse.
  • During a number of famines in Russia and the Soviet Union, nettle, orache, and other types of wild plants were used to make breads or soups.[2]
  • Spam was widely eaten in the UK during wartime, due to the lack of fresh meat available. Due to the much greater availability of meat, Spam is now used as a sandwich filling and for Spam fritters rather than as a replacement for other meat in its own right.
  • Cats were eaten in the northern Italian regions of Piedmont, Emilia-Romagna, and Liguria in times of famine, such as during World War II.[3]
  • Likewise, during the Siege of Paris in the Franco-Prussian War, the menu in Parisian cafes was not limited to cats but also dogs, rats, horses, donkeys, camels, and even elephants.
  • During the Japanese occupation of Malaya, due to a severe shortage of rice, the locals resorted to surviving on hardy tuberous roots such as cassava, sweet potato, and yam.
  • Dandelions have a bitter taste, but can be stewed or eaten raw as a last resort. Primo Levi described concentration camp inmates furtively eating dandelion greens in his novel If This Is a Man. Malcolm X also wrote in his autobiography that his mother would feed the family stewed dandelions if no other food was available.
  • The Grasspea is edible, but if consumed regularly quickly becomes neurotoxic, leading to lathyrism. Goya depicted a group of afflicted peasants entitled "Thanks be to the Grasspea".
  • Nettles are edible greens, but generally only consumed in times of hardship. Tadeusz Borowski stated that one of the most hated meals in Auschwitz was nettle soup.
  • Historically in the Maldives the leaves of seaside trees such as the Octopus Bush and the Beach Cabbage were often used as famine food.[4]

See also

References


-- Module:Hatnote -- -- -- -- This module produces hatnote links and links to related articles. It -- -- implements the and meta-templates and includes -- -- helper functions for other Lua hatnote modules. --


local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local mArguments -- lazily initialise Module:Arguments local yesno -- lazily initialise Module:Yesno

local p = {}


-- Helper functions


local function getArgs(frame) -- Fetches the arguments from the parent frame. Whitespace is trimmed and -- blanks are removed. mArguments = require('Module:Arguments') return mArguments.getArgs(frame, {parentOnly = true}) end

local function removeInitialColon(s) -- Removes the initial colon from a string, if present. return s:match('^:?(.*)') end

function p.findNamespaceId(link, removeColon) -- Finds the namespace id (namespace number) of a link or a pagename. This -- function will not work if the link is enclosed in double brackets. Colons -- are trimmed from the start of the link by default. To skip colon -- trimming, set the removeColon parameter to true. checkType('findNamespaceId', 1, link, 'string') checkType('findNamespaceId', 2, removeColon, 'boolean', true) if removeColon ~= false then link = removeInitialColon(link) end local namespace = link:match('^(.-):') if namespace then local nsTable = mw.site.namespaces[namespace] if nsTable then return nsTable.id end end return 0 end

function p.formatPages(...) -- Formats a list of pages using formatLink and returns it as an array. Nil -- values are not allowed. local pages = {...} local ret = {} for i, page in ipairs(pages) do ret[i] = p._formatLink(page) end return ret end

function p.formatPageTables(...) -- Takes a list of page/display tables and returns it as a list of -- formatted links. Nil values are not allowed. local pages = {...} local links = {} for i, t in ipairs(pages) do checkType('formatPageTables', i, t, 'table') local link = t[1] local display = t[2] links[i] = p._formatLink(link, display) end return links end

function p.makeWikitextError(msg, helpLink, addTrackingCategory) -- Formats an error message to be returned to wikitext. If -- addTrackingCategory is not false after being returned from -- Module:Yesno, and if we are not on a talk page, a tracking category -- is added. checkType('makeWikitextError', 1, msg, 'string') checkType('makeWikitextError', 2, helpLink, 'string', true) yesno = require('Module:Yesno') local title = mw.title.getCurrentTitle() -- Make the help link text. local helpText if helpLink then helpText = ' (help)' else helpText = end -- Make the category text. local category if not title.isTalkPage and yesno(addTrackingCategory) ~= false then category = 'Hatnote templates with errors' category = string.format( '%s:%s', mw.site.namespaces[14].name, category ) else category = end return string.format( '%s', msg, helpText, category ) end


-- Format link -- -- Makes a wikilink from the given link and display values. Links are escaped -- with colons if necessary, and links to sections are detected and displayed -- with " § " as a separator rather than the standard MediaWiki "#". Used in -- the template.


function p.formatLink(frame) local args = getArgs(frame) local link = args[1] local display = args[2] if not link then return p.makeWikitextError( 'no link specified', 'Template:Format hatnote link#Errors', args.category ) end return p._formatLink(link, display) end

function p._formatLink(link, display) -- Find whether we need to use the colon trick or not. We need to use the -- colon trick for categories and files, as otherwise category links -- categorise the page and file links display the file. checkType('_formatLink', 1, link, 'string') checkType('_formatLink', 2, display, 'string', true) link = removeInitialColon(link) local namespace = p.findNamespaceId(link, false) local colon if namespace == 6 or namespace == 14 then colon = ':' else colon = end -- Find whether a faux display value has been added with the | magic -- word. if not display then local prePipe, postPipe = link:match('^(.-)|(.*)$') link = prePipe or link display = postPipe end -- Find the display value. if not display then local page, section = link:match('^(.-)#(.*)$') if page then display = page .. ' § ' .. section end end -- Assemble the link. if display then return string.format('%s', colon, link, display) else return string.format('%s%s', colon, link) end end


-- Hatnote -- -- Produces standard hatnote text. Implements the template.


function p.hatnote(frame) local args = getArgs(frame) local s = args[1] local options = {} if not s then return p.makeWikitextError( 'no text specified', 'Template:Hatnote#Errors', args.category ) end options.extraclasses = args.extraclasses options.selfref = args.selfref return p._hatnote(s, options) end

function p._hatnote(s, options) checkType('_hatnote', 1, s, 'string') checkType('_hatnote', 2, options, 'table', true) local classes = {'hatnote'} local extraclasses = options.extraclasses local selfref = options.selfref if type(extraclasses) == 'string' then classes[#classes + 1] = extraclasses end if selfref then classes[#classes + 1] = 'selfref' end return string.format( '
%s
', table.concat(classes, ' '), s )

end

return p-------------------------------------------------------------------------------- -- Module:Hatnote -- -- -- -- This module produces hatnote links and links to related articles. It -- -- implements the and meta-templates and includes -- -- helper functions for other Lua hatnote modules. --


local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local mArguments -- lazily initialise Module:Arguments local yesno -- lazily initialise Module:Yesno

local p = {}


-- Helper functions


local function getArgs(frame) -- Fetches the arguments from the parent frame. Whitespace is trimmed and -- blanks are removed. mArguments = require('Module:Arguments') return mArguments.getArgs(frame, {parentOnly = true}) end

local function removeInitialColon(s) -- Removes the initial colon from a string, if present. return s:match('^:?(.*)') end

function p.findNamespaceId(link, removeColon) -- Finds the namespace id (namespace number) of a link or a pagename. This -- function will not work if the link is enclosed in double brackets. Colons -- are trimmed from the start of the link by default. To skip colon -- trimming, set the removeColon parameter to true. checkType('findNamespaceId', 1, link, 'string') checkType('findNamespaceId', 2, removeColon, 'boolean', true) if removeColon ~= false then link = removeInitialColon(link) end local namespace = link:match('^(.-):') if namespace then local nsTable = mw.site.namespaces[namespace] if nsTable then return nsTable.id end end return 0 end

function p.formatPages(...) -- Formats a list of pages using formatLink and returns it as an array. Nil -- values are not allowed. local pages = {...} local ret = {} for i, page in ipairs(pages) do ret[i] = p._formatLink(page) end return ret end

function p.formatPageTables(...) -- Takes a list of page/display tables and returns it as a list of -- formatted links. Nil values are not allowed. local pages = {...} local links = {} for i, t in ipairs(pages) do checkType('formatPageTables', i, t, 'table') local link = t[1] local display = t[2] links[i] = p._formatLink(link, display) end return links end

function p.makeWikitextError(msg, helpLink, addTrackingCategory) -- Formats an error message to be returned to wikitext. If -- addTrackingCategory is not false after being returned from -- Module:Yesno, and if we are not on a talk page, a tracking category -- is added. checkType('makeWikitextError', 1, msg, 'string') checkType('makeWikitextError', 2, helpLink, 'string', true) yesno = require('Module:Yesno') local title = mw.title.getCurrentTitle() -- Make the help link text. local helpText if helpLink then helpText = ' (help)' else helpText = end -- Make the category text. local category if not title.isTalkPage and yesno(addTrackingCategory) ~= false then category = 'Hatnote templates with errors' category = string.format( '%s:%s', mw.site.namespaces[14].name, category ) else category = end return string.format( '%s', msg, helpText, category ) end


-- Format link -- -- Makes a wikilink from the given link and display values. Links are escaped -- with colons if necessary, and links to sections are detected and displayed -- with " § " as a separator rather than the standard MediaWiki "#". Used in -- the template.


function p.formatLink(frame) local args = getArgs(frame) local link = args[1] local display = args[2] if not link then return p.makeWikitextError( 'no link specified', 'Template:Format hatnote link#Errors', args.category ) end return p._formatLink(link, display) end

function p._formatLink(link, display) -- Find whether we need to use the colon trick or not. We need to use the -- colon trick for categories and files, as otherwise category links -- categorise the page and file links display the file. checkType('_formatLink', 1, link, 'string') checkType('_formatLink', 2, display, 'string', true) link = removeInitialColon(link) local namespace = p.findNamespaceId(link, false) local colon if namespace == 6 or namespace == 14 then colon = ':' else colon = end -- Find whether a faux display value has been added with the | magic -- word. if not display then local prePipe, postPipe = link:match('^(.-)|(.*)$') link = prePipe or link display = postPipe end -- Find the display value. if not display then local page, section = link:match('^(.-)#(.*)$') if page then display = page .. ' § ' .. section end end -- Assemble the link. if display then return string.format('%s', colon, link, display) else return string.format('%s%s', colon, link) end end


-- Hatnote -- -- Produces standard hatnote text. Implements the template.


function p.hatnote(frame) local args = getArgs(frame) local s = args[1] local options = {} if not s then return p.makeWikitextError( 'no text specified', 'Template:Hatnote#Errors', args.category ) end options.extraclasses = args.extraclasses options.selfref = args.selfref return p._hatnote(s, options) end

function p._hatnote(s, options) checkType('_hatnote', 1, s, 'string') checkType('_hatnote', 2, options, 'table', true) local classes = {'hatnote'} local extraclasses = options.extraclasses local selfref = options.selfref if type(extraclasses) == 'string' then classes[#classes + 1] = extraclasses end if selfref then classes[#classes + 1] = 'selfref' end return string.format( '
%s
', table.concat(classes, ' '), s )

end

return p
  1. ^ How lobster went up in the world, The Times Online
  2. ^ "Бурьян, крапива и лебеда. На одном из харьковских хлебозаводов выпекли "голодоморский" хлеб", ATN Kharkiv.
  3. ^
  4. ^ Eating on the Islands - As times have changed, so has the Maldives' unique cuisine and culture