David of Doncaster

David of Doncaster is a member of Robin Hood's Merry Men in English folklore. Doncaster is a town near Barnsdale, where early ballads placed Robin Hood.

Ballads

He appears in one ballad in the Child collection, Robin Hood and the Golden Arrow. The sheriff is giving an archery contest, and David, "a brave young man," warns Robin against going, because it is a trap.

Later adaptations

He reappears in later adaptations, both books and movies. In Howard Pyle's The Merry Adventures of Robin Hood, he appears as one of the youngest in the band, and a wrestler. In A Gest of Robyn Hode, Sir Richard at the Lee saves an anonymous yeoman wrestler, who had won in a bout but was nearly murdered because he was a stranger, and apologised for the delay, with Robin saying that helping any yeomen pleases him; in Pyle's account, the wrestler is David of Doncaster, and Robin is deeply grateful. He also appears in various other adventures as a minor character.

Daniel Peacock portrayed him in the 1991 film, Robin Hood: Prince of Thieves, though his character went by the nickname "Bull".

In Clayton Emery's Tales of Robin Hood, David is a dependable Merry Man who wears his dark hair long since Royal Foresters cut off his ears.

gollark: I just want to know how to idiomatically make GCable wrappers for the various C objects.
gollark: No, I have that stuff done.
gollark: I want a *different* set of "OPERATIONS ON RELEVANT NODE THING" and no HTML generation at the end, and it would be bees to just copy-paste the function here.
gollark: As of now, my code does```nimproc renderToHtml*(input: string): string = let wlRegex = re"\[\[([^:\]]+):?([^\]]+)?\]\]" let opt = CMARK_OPT_UNSAFE or CMARK_OPT_FOOTNOTES or CMARK_OPT_STRIKETHROUGH_DOUBLE_TILDE or CMARK_OPT_TABLE_PREFER_STYLE_ATTRIBUTES # create parser instance let str: cstring = input len: csize_t = len(input).csize_t parser: ParserPtr = cmark_parser_new(opt.cint) if parser == nil: raise newException(CatchableError, "failed to initialize parser") defer: cmark_parser_free(parser) [further initialization stuff] # parse document, get AST cmark_parser_feed(parser, str, len) let doc = cmark_parser_finish(parser) defer: cmark_node_free(doc) if doc == nil: raise newException(CatchableError, "parsing failed - should not occur") # iterate over AST using built-in cmark-gfm AST iteration thing for (evType, node) in cmarkTree(doc): # if it is a text node [OPERATIONS ON RELEVANT NODE THING] let html: cstring = cmark_render_html(doc, opt.cint, cmark_parser_get_syntax_extensions(parser)) defer: free(html) result = $html```
gollark: cmark. I will explain.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.