github.com/chenchun/docker@v1.3.2-0.20150629222414-20467faf132b/pkg/namesgenerator/names-generator.go (about) 1 package namesgenerator 2 3 import ( 4 "fmt" 5 "math/rand" 6 7 "github.com/docker/docker/pkg/random" 8 ) 9 10 var ( 11 left = [...]string{ 12 "admiring", 13 "adoring", 14 "agitated", 15 "angry", 16 "backstabbing", 17 "berserk", 18 "boring", 19 "clever", 20 "cocky", 21 "compassionate", 22 "condescending", 23 "cranky", 24 "desperate", 25 "determined", 26 "distracted", 27 "dreamy", 28 "drunk", 29 "ecstatic", 30 "elated", 31 "elegant", 32 "evil", 33 "fervent", 34 "focused", 35 "furious", 36 "gloomy", 37 "goofy", 38 "grave", 39 "happy", 40 "high", 41 "hopeful", 42 "hungry", 43 "insane", 44 "jolly", 45 "jovial", 46 "kickass", 47 "lonely", 48 "loving", 49 "mad", 50 "modest", 51 "naughty", 52 "nostalgic", 53 "pensive", 54 "prickly", 55 "reverent", 56 "romantic", 57 "sad", 58 "serene", 59 "sharp", 60 "sick", 61 "silly", 62 "sleepy", 63 "stoic", 64 "stupefied", 65 "suspicious", 66 "tender", 67 "thirsty", 68 "trusting", 69 } 70 71 // Docker, starting from 0.7.x, generates names from notable scientists and hackers. 72 right = [...]string{ 73 // Muhammad ibn Jābir al-Ḥarrānī al-Battānī was a founding father of astronomy. https://en.wikipedia.org/wiki/Mu%E1%B8%A5ammad_ibn_J%C4%81bir_al-%E1%B8%A4arr%C4%81n%C4%AB_al-Batt%C4%81n%C4%AB 74 "albattani", 75 76 // June Almeida - Scottish virologist who took the first pictures of the rubella virus - https://en.wikipedia.org/wiki/June_Almeida 77 "almeida", 78 79 // Archimedes was a physicist, engineer and mathematician who invented too many things to list them here. https://en.wikipedia.org/wiki/Archimedes 80 "archimedes", 81 82 // Maria Ardinghelli - Italian translator, mathematician and physicist - https://en.wikipedia.org/wiki/Maria_Ardinghelli 83 "ardinghelli", 84 85 // Charles Babbage invented the concept of a programmable computer. https://en.wikipedia.org/wiki/Charles_Babbage. 86 "babbage", 87 88 // Stefan Banach - Polish mathematician, was one of the founders of modern functional analysis. https://en.wikipedia.org/wiki/Stefan_Banach 89 "banach", 90 91 // William Shockley, Walter Houser Brattain and John Bardeen co-invented the transistor (thanks Brian Goff). 92 // - https://en.wikipedia.org/wiki/John_Bardeen 93 // - https://en.wikipedia.org/wiki/Walter_Houser_Brattain 94 // - https://en.wikipedia.org/wiki/William_Shockley 95 "bardeen", 96 "brattain", 97 "shockley", 98 99 // Jean Bartik, born Betty Jean Jennings, was one of the original programmers for the ENIAC computer. https://en.wikipedia.org/wiki/Jean_Bartik 100 "bartik", 101 102 // Alexander Graham Bell - an eminent Scottish-born scientist, inventor, engineer and innovator who is credited with inventing the first practical telephone - https://en.wikipedia.org/wiki/Alexander_Graham_Bell 103 "bell", 104 105 // Elizabeth Blackwell - American doctor and first American woman to receive a medical degree - https://en.wikipedia.org/wiki/Elizabeth_Blackwell 106 "blackwell", 107 108 // Niels Bohr is the father of quantum theory. https://en.wikipedia.org/wiki/Niels_Bohr. 109 "bohr", 110 111 // Satyendra Nath Bose - He provided the foundation for Bose–Einstein statistics and the theory of the Bose–Einstein condensate. - https://en.wikipedia.org/wiki/Satyendra_Nath_Bose 112 "bose", 113 114 // Emmett Brown invented time travel. https://en.wikipedia.org/wiki/Emmett_Brown (thanks Brian Goff) 115 "brown", 116 117 // Rachel Carson - American marine biologist and conservationist, her book Silent Spring and other writings are credited with advancing the global environmental movement. https://en.wikipedia.org/wiki/Rachel_Carson 118 "carson", 119 120 //Subrahmanyan Chandrasekhar - Astrophysicist known for his mathematical theory on different stages and evolution in structures of the stars. He has won nobel prize for physics - https://en.wikipedia.org/wiki/Subrahmanyan_Chandrasekhar 121 "chandrasekhar", 122 123 // Jane Colden - American botanist widely considered the first female American botanist - https://en.wikipedia.org/wiki/Jane_Colden 124 "colden", 125 126 // Gerty Theresa Cori - American biochemist who became the third woman—and first American woman—to win a Nobel Prize in science, and the first woman to be awarded the Nobel Prize in Physiology or Medicine. Cori was born in Prague. https://en.wikipedia.org/wiki/Gerty_Cori 127 "cori", 128 129 // Seymour Roger Cray was an American electrical engineer and supercomputer architect who designed a series of computers that were the fastest in the world for decades. https://en.wikipedia.org/wiki/Seymour_Cray 130 "cray", 131 132 // Marie Curie discovered radioactivity. https://en.wikipedia.org/wiki/Marie_Curie. 133 "curie", 134 135 // Charles Darwin established the principles of natural evolution. https://en.wikipedia.org/wiki/Charles_Darwin. 136 "darwin", 137 138 // Leonardo Da Vinci invented too many things to list here. https://en.wikipedia.org/wiki/Leonardo_da_Vinci. 139 "davinci", 140 141 // Albert Einstein invented the general theory of relativity. https://en.wikipedia.org/wiki/Albert_Einstein 142 "einstein", 143 144 // Gertrude Elion - American biochemist, pharmacologist and the 1988 recipient of the Nobel Prize in Medicine - https://en.wikipedia.org/wiki/Gertrude_Elion 145 "elion", 146 147 // Douglas Engelbart gave the mother of all demos: https://en.wikipedia.org/wiki/Douglas_Engelbart 148 "engelbart", 149 150 // Euclid invented geometry. https://en.wikipedia.org/wiki/Euclid 151 "euclid", 152 153 // Pierre de Fermat pioneered several aspects of modern mathematics. https://en.wikipedia.org/wiki/Pierre_de_Fermat 154 "fermat", 155 156 // Enrico Fermi invented the first nuclear reactor. https://en.wikipedia.org/wiki/Enrico_Fermi. 157 "fermi", 158 159 // Richard Feynman was a key contributor to quantum mechanics and particle physics. https://en.wikipedia.org/wiki/Richard_Feynman 160 "feynman", 161 162 // Benjamin Franklin is famous for his experiments in electricity and the invention of the lightning rod. 163 "franklin", 164 165 // Galileo was a founding father of modern astronomy, and faced politics and obscurantism to establish scientific truth. https://en.wikipedia.org/wiki/Galileo_Galilei 166 "galileo", 167 168 // Adele Goldstine, born Adele Katz, wrote the complete technical description for the first electronic digital computer, ENIAC. https://en.wikipedia.org/wiki/Adele_Goldstine 169 "goldstine", 170 171 // Jane Goodall - British primatologist, ethologist, and anthropologist who is considered to be the world's foremost expert on chimpanzees - https://en.wikipedia.org/wiki/Jane_Goodall 172 "goodall", 173 174 // Stephen Hawking pioneered the field of cosmology by combining general relativity and quantum mechanics. https://en.wikipedia.org/wiki/Stephen_Hawking 175 "hawking", 176 177 // Werner Heisenberg was a founding father of quantum mechanics. https://en.wikipedia.org/wiki/Werner_Heisenberg 178 "heisenberg", 179 180 // Dorothy Hodgkin was a British biochemist, credited with the development of protein crystallography. She was awarded the Nobel Prize in Chemistry in 1964. https://en.wikipedia.org/wiki/Dorothy_Hodgkin 181 "hodgkin", 182 183 // Erna Schneider Hoover revolutionized modern communication by inventing a computerized telephon switching method. https://en.wikipedia.org/wiki/Erna_Schneider_Hoover 184 "hoover", 185 186 // Grace Hopper developed the first compiler for a computer programming language and is credited with popularizing the term "debugging" for fixing computer glitches. https://en.wikipedia.org/wiki/Grace_Hopper 187 "hopper", 188 189 // Hypatia - Greek Alexandrine Neoplatonist philosopher in Egypt who was one of the earliest mothers of mathematics - https://en.wikipedia.org/wiki/Hypatia 190 "hypatia", 191 192 // Yeong-Sil Jang was a Korean scientist and astronomer during the Joseon Dynasty; he invented the first metal printing press and water gauge. https://en.wikipedia.org/wiki/Jang_Yeong-sil 193 "jang", 194 195 // Karen Spärck Jones came up with the concept of inverse document frequency, which is used in most search engines today. https://en.wikipedia.org/wiki/Karen_Sp%C3%A4rck_Jones 196 "jones", 197 198 // Jack Kilby and Robert Noyce have invented silicone integrated circuits and gave Silicon Valley its name. 199 // - https://en.wikipedia.org/wiki/Jack_Kilby 200 // - https://en.wikipedia.org/wiki/Robert_Noyce 201 "kilby", 202 "noyce", 203 204 // Har Gobind Khorana - Indian-American biochemist who shared the 1968 Nobel Prize for Physiology - https://en.wikipedia.org/wiki/Har_Gobind_Khorana 205 "khorana", 206 207 // Maria Kirch - German astronomer and first woman to discover a comet - https://en.wikipedia.org/wiki/Maria_Margarethe_Kirch 208 "kirch", 209 210 // Sophie Kowalevski - Russian mathematician responsible for important original contributions to analysis, differential equations and mechanics - https://en.wikipedia.org/wiki/Sofia_Kovalevskaya 211 "kowalevski", 212 213 // Marie-Jeanne de Lalande - French astronomer, mathematician and cataloguer of stars - https://en.wikipedia.org/wiki/Marie-Jeanne_de_Lalande 214 "lalande", 215 216 // Mary Leakey - British paleoanthropologist who discovered the first fossilized Proconsul skull - https://en.wikipedia.org/wiki/Mary_Leakey 217 "leakey", 218 219 // Ada Lovelace invented the first algorithm. https://en.wikipedia.org/wiki/Ada_Lovelace (thanks James Turnbull) 220 "lovelace", 221 222 // Auguste and Louis Lumière - the first filmmakers in history - https://en.wikipedia.org/wiki/Auguste_and_Louis_Lumi%C3%A8re 223 "lumiere", 224 225 // Maria Mayer - American theoretical physicist and Nobel laureate in Physics for proposing the nuclear shell model of the atomic nucleus - https://en.wikipedia.org/wiki/Maria_Mayer 226 "mayer", 227 228 // John McCarthy invented LISP: https://en.wikipedia.org/wiki/John_McCarthy_(computer_scientist) 229 "mccarthy", 230 231 // Barbara McClintock - a distinguished American cytogeneticist, 1983 Nobel Laureate in Physiology or Medicine for discovering transposons. https://en.wikipedia.org/wiki/Barbara_McClintock 232 "mcclintock", 233 234 // Malcolm McLean invented the modern shipping container: https://en.wikipedia.org/wiki/Malcom_McLean 235 "mclean", 236 237 // Lise Meitner - Austrian/Swedish physicist who was involved in the discovery of nuclear fission. The element meitnerium is named after her - https://en.wikipedia.org/wiki/Lise_Meitner 238 "meitner", 239 240 // Johanna Mestorf - German prehistoric archaeologist and first female museum director in Germany - https://en.wikipedia.org/wiki/Johanna_Mestorf 241 "mestorf", 242 243 // Samuel Morse - contributed to the invention of a single-wire telegraph system based on European telegraphs and was a co-developer of the Morse code - https://en.wikipedia.org/wiki/Samuel_Morse 244 "morse", 245 246 // Isaac Newton invented classic mechanics and modern optics. https://en.wikipedia.org/wiki/Isaac_Newton 247 "newton", 248 249 // Alfred Nobel - a Swedish chemist, engineer, innovator, and armaments manufacturer (inventor of dynamite) - https://en.wikipedia.org/wiki/Alfred_Nobel 250 "nobel", 251 252 // Cecilia Payne-Gaposchkin was an astronomer and astrophysicist who, in 1925, proposed in her Ph.D. thesis an explanation for the composition of stars in terms of the relative abundances of hydrogen and helium. https://en.wikipedia.org/wiki/Cecilia_Payne-Gaposchkin 253 "payne", 254 255 // Ambroise Pare invented modern surgery. https://en.wikipedia.org/wiki/Ambroise_Par%C3%A9 256 "pare", 257 258 // Louis Pasteur discovered vaccination, fermentation and pasteurization. https://en.wikipedia.org/wiki/Louis_Pasteur. 259 "pasteur", 260 261 // Radia Perlman is a software designer and network engineer and most famous for her invention of the spanning-tree protocol (STP). https://en.wikipedia.org/wiki/Radia_Perlman 262 "perlman", 263 264 // Rob Pike was a key contributor to Unix, Plan 9, the X graphic system, utf-8, and the Go programming language. https://en.wikipedia.org/wiki/Rob_Pike 265 "pike", 266 267 // Henri Poincaré made fundamental contributions in several fields of mathematics. https://en.wikipedia.org/wiki/Henri_Poincar%C3%A9 268 "poincare", 269 270 // Laura Poitras is a director and producer whose work, made possible by open source crypto tools, advances the causes of truth and freedom of information by reporting disclosures by whistleblowers such as Edward Snowden. https://en.wikipedia.org/wiki/Laura_Poitras 271 "poitras", 272 273 // Claudius Ptolemy - a Greco-Egyptian writer of Alexandria, known as a mathematician, astronomer, geographer, astrologer, and poet of a single epigram in the Greek Anthology - https://en.wikipedia.org/wiki/Ptolemy 274 "ptolemy", 275 276 // C. V. Raman - Indian physicist who won the Nobel Prize in 1930 for proposing the Raman effect. - https://en.wikipedia.org/wiki/C._V._Raman 277 "raman", 278 279 // Srinivasa Ramanujan - Indian mathematician and autodidact who made extraordinary contributions to mathematical analysis, number theory, infinite series, and continued fractions. - https://en.wikipedia.org/wiki/Srinivasa_Ramanujan 280 "ramanujan", 281 282 // Dennis Ritchie and Ken Thompson created UNIX and the C programming language. 283 // - https://en.wikipedia.org/wiki/Dennis_Ritchie 284 // - https://en.wikipedia.org/wiki/Ken_Thompson 285 "ritchie", 286 "thompson", 287 288 // Rosalind Franklin - British biophysicist and X-ray crystallographer whose research was critical to the understanding of DNA - https://en.wikipedia.org/wiki/Rosalind_Franklin 289 "rosalind", 290 291 // Meghnad Saha - Indian astrophysicist best known for his development of the Saha equation, used to describe chemical and physical conditions in stars - https://en.wikipedia.org/wiki/Meghnad_Saha 292 "saha", 293 294 // Jean E. Sammet developed FORMAC, the first widely used computer language for symbolic manipulation of mathematical formulas. https://en.wikipedia.org/wiki/Jean_E._Sammet 295 "sammet", 296 297 // Françoise Barré-Sinoussi - French virologist and Nobel Prize Laureate in Physiology or Medicine; her work was fundamental in identifying HIV as the cause of AIDS. https://en.wikipedia.org/wiki/Fran%C3%A7oise_Barr%C3%A9-Sinoussi 298 "sinoussi", 299 300 // Richard Matthew Stallman - the founder of the Free Software movement, the GNU project, the Free Software Foundation, and the League for Programming Freedom. He also invented the concept of copyleft to protect the ideals of this movement, and enshrined this concept in the widely-used GPL (General Public License) for software. https://en.wikiquote.org/wiki/Richard_Stallman 301 "stallman", 302 303 // Aaron Swartz was influential in creating RSS, Markdown, Creative Commons, Reddit, and much of the internet as we know it today. He was devoted to freedom of information on the web. https://en.wikiquote.org/wiki/Aaron_Swartz 304 "swartz", 305 306 // Nikola Tesla invented the AC electric system and every gadget ever used by a James Bond villain. https://en.wikipedia.org/wiki/Nikola_Tesla 307 "tesla", 308 309 // Linus Torvalds invented Linux and Git. https://en.wikipedia.org/wiki/Linus_Torvalds 310 "torvalds", 311 312 // Alan Turing was a founding father of computer science. https://en.wikipedia.org/wiki/Alan_Turing. 313 "turing", 314 315 // Sophie Wilson designed the first Acorn Micro-Computer and the instruction set for ARM processors. https://en.wikipedia.org/wiki/Sophie_Wilson 316 "wilson", 317 318 // Steve Wozniak invented the Apple I and Apple II. https://en.wikipedia.org/wiki/Steve_Wozniak 319 "wozniak", 320 321 // The Wright brothers, Orville and Wilbur - credited with inventing and building the world's first successful airplane and making the first controlled, powered and sustained heavier-than-air human flight - https://en.wikipedia.org/wiki/Wright_brothers 322 "wright", 323 324 // Rosalyn Sussman Yalow - Rosalyn Sussman Yalow was an American medical physicist, and a co-winner of the 1977 Nobel Prize in Physiology or Medicine for development of the radioimmunoassay technique. https://en.wikipedia.org/wiki/Rosalyn_Sussman_Yalow 325 "yalow", 326 327 // Ada Yonath - an Israeli crystallographer, the first woman from the Middle East to win a Nobel prize in the sciences. https://en.wikipedia.org/wiki/Ada_Yonath 328 "yonath", 329 } 330 331 rnd = rand.New(random.NewSource()) 332 ) 333 334 func GetRandomName(retry int) string { 335 begin: 336 name := fmt.Sprintf("%s_%s", left[rnd.Intn(len(left))], right[rnd.Intn(len(right))]) 337 if name == "boring_wozniak" /* Steve Wozniak is not boring */ { 338 goto begin 339 } 340 341 if retry > 0 { 342 name = fmt.Sprintf("%s%d", name, rnd.Intn(10)) 343 } 344 return name 345 }