research_topicgen 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: e3e62081eb8f983cdd31a13ef17379b7154ff19f
4
+ data.tar.gz: 60a0a40ab5e941d3ca46ce9b48dcd83410868572
5
+ SHA512:
6
+ metadata.gz: 0399be077f2c3d32ba0212a2f453d2011f0f6b39e6bf10bfcd72c825d17298bcee75c4d05b233325c4e445c01c9b3d4415599d4f27c45540057d119bd61946bf
7
+ data.tar.gz: 688b22872fd5ea40e35164b536a088e71f9de5baefbdb963ae3034f6845427a7423407b696b5215132087dc86e1744f0fd1fa1ca34a5f54221df10f245771e67
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ require 'research_topicgen'
3
+
4
+ puts ResearchTopicGen.random
@@ -0,0 +1,9 @@
1
+ ---
2
+ :common_connectives:
3
+ - for
4
+ - related to
5
+ - derived from
6
+ - applied to
7
+ :extra_connectives:
8
+ - enabled by
9
+ - embedded in
@@ -0,0 +1,151 @@
1
+ ---
2
+ :buzz1:
3
+ - anonymous
4
+ - blind
5
+ - boomerang-attack-resistant
6
+ - coercion-resistant
7
+ - concurrent
8
+ - deniable
9
+ - dictionary-attack-resistant
10
+ - differential-cryptanalysis-resistant
11
+ - distributed
12
+ - efficient
13
+ - fair
14
+ - forward-secure
15
+ - fully-homomorphic
16
+ - homomorphic
17
+ - hybrid
18
+ - identity-based
19
+ - intrusion-resilient
20
+ - indifferentiable
21
+ - key-insulated
22
+ - leakage-resilient
23
+ - lattice-based
24
+ - lossy
25
+ - new
26
+ - non-interactive
27
+ - non-malleable
28
+ - optimistic
29
+ - pairing-based
30
+ - parallelizable
31
+ - practical
32
+ - proactive
33
+ - provably-secure
34
+ - quantum
35
+ - robust
36
+ - related-key attack resistant
37
+ - selective-opening-secure
38
+ - simple
39
+ - statistically-binding
40
+ - statistically-hiding
41
+ - tamper-resistant
42
+ - threshold
43
+ - tweakable
44
+ - unconditionally-secure
45
+ - undeniable
46
+ - unforgeable
47
+ - universally-composable
48
+ - unlinkable
49
+ - verifiable
50
+ - zero-knowledge
51
+ :buzz2:
52
+ - anonymous
53
+ - blind
54
+ - block-cipher-based
55
+ - chameleon
56
+ - coercion-resistant
57
+ - collision-resistant
58
+ - collusion-resistant
59
+ - concurrent
60
+ - DDH-based
61
+ - discrete-log-based
62
+ - distributed
63
+ - factoring-based
64
+ - fair
65
+ - forward-secure
66
+ - Gap-DH-based
67
+ - fully-homomorphic
68
+ - homomorphic
69
+ - hybrid
70
+ - identity-based
71
+ - indifferentiable
72
+ - intrusion-resilient
73
+ - key-insulated
74
+ - lattice-based
75
+ - leakage-resilient
76
+ - lossy
77
+ - non-interactive
78
+ - non-malleable
79
+ - one-way-function-based
80
+ - pairing-based
81
+ - practical
82
+ - proactive
83
+ - proxy
84
+ - quantum
85
+ - random-oracle model
86
+ - robust
87
+ - RSA-based
88
+ - selective-opening-secure
89
+ - statistically-binding
90
+ - statistically-hiding
91
+ - strong-RSA-based
92
+ - tamper-resistant
93
+ - threshold
94
+ - transitive
95
+ - universally-composable
96
+ - verifiable
97
+ - zero-knowledge
98
+ :buzz3:
99
+ - accumulator
100
+ - aggregate-signature scheme
101
+ - all-or-nothing transform
102
+ - attribute-based encryption scheme
103
+ - authenticated encryption scheme
104
+ - authentication protocol
105
+ - commitment scheme
106
+ - contract-signing protocol
107
+ - digital cash scheme
108
+ - digital-signature scheme
109
+ - election protocol
110
+ - electronic payment scheme
111
+ - family of pseudorandom functions
112
+ - family of pseudorandom permutations
113
+ - finger-printing scheme
114
+ - functional encryption scheme
115
+ - fuzzy IBE scheme
116
+ - group-signature scheme
117
+ - encryption scheme
118
+ - key-dependent message encryption scheme
119
+ - hash function
120
+ - identification scheme
121
+ - identity-based encryption scheme
122
+ - identity-based signature scheme
123
+ - key-distribution protocol
124
+ - key-escrow scheme
125
+ - message-authentication code
126
+ - metering scheme
127
+ - micropayment scheme
128
+ - mix-net
129
+ - mode of operation
130
+ - multi-authority attribute-based encryption scheme
131
+ - multi-pary computation protocol
132
+ - multi-signature scheme
133
+ - order-preserving encryption scheme
134
+ - oblivious transfer protocol
135
+ - padding scheme
136
+ - public-key encryption scheme
137
+ - predicate encryption scheme
138
+ - proof of knowledge
139
+ - pseudonym system
140
+ - pseudorandom bit generator
141
+ - ring-signature scheme
142
+ - secret-sharing scheme
143
+ - secure-computation protocol
144
+ - sequential aggregate signature scheme
145
+ - session-key-exchange protocol
146
+ - signature scheme
147
+ - signcryption scheme
148
+ - stream cipher
149
+ - traitor-tracing scheme
150
+ - voting protocol
151
+ - watermarking scheme
@@ -0,0 +1,68 @@
1
+ ---
2
+ :buzz3:
3
+ - network
4
+ - preprocessor
5
+ - compiler
6
+ - system
7
+ - interface
8
+ - protocol
9
+ - architecture
10
+ - database
11
+ - algorithm
12
+ - toolkit
13
+ - display
14
+ - technology
15
+ - solution
16
+ - language
17
+ - agent
18
+ - theorem prover
19
+ - work cluster
20
+ - cache
21
+ - network
22
+ - data center
23
+ - hypervisor
24
+ :buzz2:
25
+ - mobility
26
+ - functional
27
+ - programmable
28
+ - distributed
29
+ - logical
30
+ - digital
31
+ - concurrent
32
+ - knowledge-based
33
+ - multimedia
34
+ - binary
35
+ - object-oriented
36
+ - secure
37
+ - high-speed
38
+ - real-time
39
+ - functional
40
+ - parallelizing
41
+ - watermarking
42
+ - proxy
43
+ - cloud-based
44
+ - big data
45
+ - bioinformatic
46
+ - multi-core
47
+ :buzz1:
48
+ - integrated
49
+ - parallel
50
+ - virtual
51
+ - interactive
52
+ - responsive
53
+ - synchronized
54
+ - balanced
55
+ - virtual
56
+ - meta-level
57
+ - optimized
58
+ - active
59
+ - parameterized
60
+ - conceptual
61
+ - scalable
62
+ - dynamic
63
+ - high-level
64
+ - collaborative
65
+ - type-safe
66
+ - reliable
67
+ - open
68
+ - coordinated
@@ -0,0 +1,1073 @@
1
+ ---
2
+ :buzz1:
3
+ - ad-hoc
4
+ - algorithmic
5
+ - anonymous
6
+ - authenticated
7
+ - better
8
+ - coercion-resistant
9
+ - concurrent
10
+ - control-theoretic
11
+ - composable
12
+ - cooperative
13
+ - core-stateless
14
+ - decentralized
15
+ - delay-tolerant
16
+ - distributed
17
+ - divisible
18
+ - dynamic
19
+ - economic
20
+ - efficient
21
+ - energy-aware
22
+ - end-to-end
23
+ - enterprise
24
+ - extensible
25
+ - fair
26
+ - hybrid
27
+ - global
28
+ - graphical
29
+ - greedy
30
+ - information-theoretic
31
+ - inherent
32
+ - intrusion-resilient
33
+ - inferred
34
+ - key-based
35
+ - lightweight
36
+ - low-complexity
37
+ - low-power
38
+ - manageable
39
+ - mobile
40
+ - multilevel
41
+ - new
42
+ - optimal
43
+ - optimistic
44
+ - opportunistic
45
+ - O(1)
46
+ - parallelizable
47
+ - partially-redundant
48
+ - per-flow
49
+ - practical
50
+ - prioritized
51
+ - private
52
+ - proactive
53
+ - provably-secure
54
+ - policy-compliant
55
+ - policy-neutral
56
+ - portable
57
+ - real-time
58
+ - redundant
59
+ - robust
60
+ - scalable
61
+ - secure
62
+ - session-based
63
+ - simple
64
+ - selfish
65
+ - speculative
66
+ - stable
67
+ - statistical
68
+ - threshold
69
+ - transitive
70
+ - tweakable
71
+ - untrusted
72
+ - undeniable
73
+ - unforgeable
74
+ - universal
75
+ - unmanaged
76
+ - unlinkable
77
+ - user-level
78
+ - verifiable
79
+ - virtual
80
+ - weighted
81
+ - wide-area
82
+ - wireless
83
+ - zero-knowledge
84
+ :buzz2:
85
+ - '802.11'
86
+ - ad-hoc
87
+ - anti-censorship
88
+ - anycast-based
89
+ - AS-level
90
+ - auction-based
91
+ - authenticated
92
+ - block-level
93
+ - bloom filter-based
94
+ - BGP-based
95
+ - bounded-delay
96
+ - broadcast-based
97
+ - broadcast encryption-based
98
+ - capability-based
99
+ - cluster-based
100
+ - control-theoretic
101
+ - content-addressable
102
+ - collusion-resistant
103
+ - cooperative
104
+ - concurrent
105
+ - core-stateless
106
+ - currency-based
107
+ - delay-based
108
+ - DHT-based
109
+ - DNS-based
110
+ - distributed
111
+ - end-to-end
112
+ - energy-aware
113
+ - equation-based
114
+ - event-based
115
+ - failure-oblivious
116
+ - file system
117
+ - game-theoretic
118
+ - hash-based
119
+ - high-bandwidth
120
+ - hybrid
121
+ - incentive-compatible
122
+ - information-theoretic
123
+ - interdomain
124
+ - intrusion-resilient
125
+ - indirection-based
126
+ - in-network
127
+ - key-based
128
+ - low-cost
129
+ - loss-based
130
+ - mesh-based
131
+ - mobile
132
+ - multicast-based
133
+ - multipath
134
+ - multi-hop
135
+ - on-demand
136
+ - password-based
137
+ - peer-to-peer
138
+ - per-flow
139
+ - policy-compliant
140
+ - policy-neutral
141
+ - prefetching-based
142
+ - preprocessing-based
143
+ - prioritized
144
+ - proactive
145
+ - provably-secure
146
+ - proxy-based
147
+ - reliable
148
+ - RPC-based
149
+ - RSA-based
150
+ - sampling-based
151
+ - self-stabilizing
152
+ - session-based
153
+ - spoofing-based
154
+ - source-routed
155
+ - static analysis-based
156
+ - strategyproof
157
+ - topology-based
158
+ - TCP-based
159
+ - thread-based
160
+ - traffic-aware
161
+ - type inference-based
162
+ - unreliable
163
+ - user-level
164
+ - verifiable
165
+ - viral
166
+ - virtual machine-based
167
+ - wide-area
168
+ - wireless
169
+ - zero-knowledge
170
+ :buzz3:
171
+ - addressing scheme
172
+ - anycast protocol
173
+ - authentication protocol
174
+ - caching system
175
+ - congestion-control protocol
176
+ - configuration language
177
+ - configuration tool
178
+ - coordination algorithm
179
+ - classification algorithm
180
+ - debugger
181
+ - denial-of-service attack
182
+ - disassembler
183
+ - distance-vector protocol
184
+ - election protocol
185
+ - failure detector
186
+ - file system
187
+ - filter
188
+ - encryption scheme
189
+ - identification scheme
190
+ - intrusion-detection system
191
+ - link-state protocol
192
+ - location service
193
+ - lookup algorithm
194
+ - key-distribution protocol
195
+ - MAC
196
+ - measurement result
197
+ - measurement tool
198
+ - metering scheme
199
+ - microkernel
200
+ - model checker
201
+ - monolithic kernel
202
+ - mix-net
203
+ - naming architecture
204
+ - network architecture
205
+ - network coordinate system
206
+ - network emulator
207
+ - network simulator
208
+ - operating system
209
+ - overlay network
210
+ - packet filter
211
+ - path-vector protocol
212
+ - performance study
213
+ - protocol language
214
+ - pseudonym system
215
+ - pseudorandom bit generator
216
+ - public-key encryption scheme
217
+ - queueing algorithm
218
+ - race detector
219
+ - replay attack
220
+ - routing algorithm
221
+ - routing metric
222
+ - routing protocol
223
+ - scheduler
224
+ - secure-computation protocol
225
+ - sensor network
226
+ - session-key-exchange protocol
227
+ - signature scheme
228
+ - storage system
229
+ - terabit router
230
+ - testbed
231
+ - threads package
232
+ - timing attack
233
+ - token bucket
234
+ - traffic matrix estimator
235
+ - VCG mechanism
236
+ - virtual machine
237
+ - virtual memory system
238
+ - web proxy cache
239
+ - wireless network
240
+ - workload generator
241
+ - worm
242
+ :names:
243
+ - Aardvark
244
+ - Aardwolf
245
+ - Abalone
246
+ - Addax
247
+ - Adder
248
+ - Agama
249
+ - Agouti
250
+ - Airedale
251
+ - Akita
252
+ - Albatross
253
+ - Albertosaurus
254
+ - Albino
255
+ - Alligator
256
+ - Allosaurus
257
+ - Alpaca
258
+ - Amazon
259
+ - Ammonite
260
+ - Amoeba
261
+ - Amphibian
262
+ - Anaconda
263
+ - Anemone
264
+ - Angelfish
265
+ - Anglerfish
266
+ - Angora
267
+ - Angwantibo
268
+ - Anhinga
269
+ - Ani
270
+ - Animated
271
+ - Anole
272
+ - Anopheles
273
+ - Ant
274
+ - Anteater
275
+ - Antelope
276
+ - Aoudad
277
+ - Apatosaur
278
+ - Aphid
279
+ - Aracari
280
+ - Archaeocete
281
+ - Archaeopteryx
282
+ - Argali
283
+ - Argiope
284
+ - Ark
285
+ - Armadillo
286
+ - Arrowana
287
+ - Ass
288
+ - Astarte
289
+ - Auk
290
+ - Aurochs
291
+ - Avocet
292
+ - Axolotl
293
+ - Aye-aye
294
+ - Babacoot
295
+ - Babirusa
296
+ - Baboon
297
+ - Backswimmer
298
+ - Badger
299
+ - Balanophylla
300
+ - Bandicoot
301
+ - Bannerfish
302
+ - Bantam
303
+ - Banteng
304
+ - Barb
305
+ - Barbel
306
+ - Barbet
307
+ - Barnacle
308
+ - Barracuda
309
+ - Basilisk
310
+ - Basilosaurus
311
+ - Bass
312
+ - Basset
313
+ - Bat
314
+ - Bateleur
315
+ - Beagle
316
+ - Bear
317
+ - Beaver
318
+ - Bee
319
+ - Bee-eater
320
+ - Beetle
321
+ - Bernard
322
+ - Bharal
323
+ - Bilby
324
+ - Billbug
325
+ - Binturong
326
+ - Bird
327
+ - Bison
328
+ - bitterling
329
+ - bittern
330
+ - Blackbird
331
+ - Blackbuck
332
+ - Blenny
333
+ - Blesbok
334
+ - Bluebird
335
+ - Bluegill
336
+ - Bluethroat
337
+ - Boa
338
+ - Boar
339
+ - Bobcat
340
+ - Bobolink
341
+ - Bongo
342
+ - Bontebok
343
+ - Booby
344
+ - Borzoi
345
+ - Botfly
346
+ - Bowerbird
347
+ - Boxer
348
+ - Brachiosaur
349
+ - Brambling
350
+ - Brant
351
+ - Bream
352
+ - Breeding
353
+ - Brolga
354
+ - Buck
355
+ - Budgerigar
356
+ - Buffalo
357
+ - Bug
358
+ - Bulbul
359
+ - Bulldog
360
+ - Bullfinch
361
+ - Bullfrog
362
+ - Bullhead
363
+ - Bullterrier
364
+ - Bumblebee
365
+ - Bunting
366
+ - Bushbuck
367
+ - bustard
368
+ - Butterfly
369
+ - Butterflyfish
370
+ - Buzzard
371
+ - Cacique
372
+ - Caddisfly
373
+ - Caiman
374
+ - Camel
375
+ - Canary
376
+ - Cantil
377
+ - Capercaillie
378
+ - Capuchin
379
+ - Capybara
380
+ - Caracal
381
+ - Caracara
382
+ - Cardinal
383
+ - Caribou
384
+ - Carp
385
+ - Cassowary
386
+ - Cat
387
+ - Catcher
388
+ - Caterpillar
389
+ - Catfish
390
+ - Catshark
391
+ - Cattle
392
+ - Cavy
393
+ - Centipede
394
+ - Chachalaca
395
+ - Chameleon
396
+ - Chamois
397
+ - Chat
398
+ - Cheetah
399
+ - Chevrotain
400
+ - Chick
401
+ - Chickadee
402
+ - Chicken
403
+ - Chiffchaff
404
+ - Chihuahua
405
+ - Chimpanzee
406
+ - Chinchilla
407
+ - Chipmunk
408
+ - Chiroptera
409
+ - Chiton
410
+ - Chow
411
+ - Chub
412
+ - Chuckwalla
413
+ - Chukar
414
+ - Cicada
415
+ - Cichlid
416
+ - Civet
417
+ - Clam
418
+ - Clownfish
419
+ - Coachwhip
420
+ - Coati
421
+ - Cobra
422
+ - Cockatoo
423
+ - Cockroach
424
+ - Coelacanth
425
+ - Collie
426
+ - Conch
427
+ - Condor
428
+ - Conure
429
+ - Coot
430
+ - cooter
431
+ - Coral
432
+ - Corgi
433
+ - Cormorant
434
+ - Corvidae
435
+ - Cottonmouth
436
+ - Cougar
437
+ - Courser
438
+ - Cow
439
+ - Cowbird
440
+ - Cowfish
441
+ - Cowrie
442
+ - Coyote
443
+ - Crab
444
+ - Crake
445
+ - Crane
446
+ - Crayfish
447
+ - Creeper
448
+ - Cricket
449
+ - Crinoid
450
+ - Crocodile
451
+ - Crossbill
452
+ - Crow
453
+ - Cuckoo
454
+ - Cucumber
455
+ - Culter
456
+ - Curlew
457
+ - Cuscus
458
+ - Cuttlefish
459
+ - Cace
460
+ - Dachshund
461
+ - Dalmatian
462
+ - damselfish
463
+ - Damselfly
464
+ - Dane
465
+ - Cauber
466
+ - Deer
467
+ - Degu
468
+ - Deinonychus
469
+ - Devil
470
+ - Dhole
471
+ - Dilophosaurus
472
+ - Dimetrodon
473
+ - Dingo
474
+ - Dino
475
+ - Dinosaur
476
+ - Diplodocus
477
+ - Dog
478
+ - Dollar
479
+ - Dolphin
480
+ - Donkey
481
+ - Dorado
482
+ - Dormouse
483
+ - Dory
484
+ - Dove
485
+ - Dragon
486
+ - Dragonfly
487
+ - Drongo
488
+ - Drumfish
489
+ - Duck
490
+ - Dugong
491
+ - Duiker
492
+ - Dwarfsnake
493
+ - Eagle
494
+ - Earthworm
495
+ - Earwig
496
+ - Echidna
497
+ - Eel
498
+ - Egret
499
+ - Eider
500
+ - Eland
501
+ - Elephant
502
+ - Elk
503
+ - Emu
504
+ - Ermine
505
+ - Eye
506
+ - Falcon
507
+ - Fan
508
+ - Fangtooth
509
+ - Fantail
510
+ - Fawn
511
+ - Ferret
512
+ - Fieldfare
513
+ - Filefish
514
+ - Finch
515
+ - Fish
516
+ - Flamingo
517
+ - Flatworm
518
+ - Flea
519
+ - Flicker
520
+ - Flight
521
+ - Fly
522
+ - Flycatcher
523
+ - Formicidae
524
+ - Fossa
525
+ - Fox
526
+ - Francolin
527
+ - Friese
528
+ - Frog
529
+ - Frogfish
530
+ - Froghopper
531
+ - Frogmouth
532
+ - Fulmar
533
+ - Gadwall
534
+ - Galah
535
+ - Gallinule
536
+ - Gannet
537
+ - Far
538
+ - Gaur
539
+ - Gavial
540
+ - Gazelle
541
+ - Gecko
542
+ - Gerenuk
543
+ - Gibbon
544
+ - Giganotosaurus
545
+ - Giraffe
546
+ - Glider
547
+ - Gnatcatcher
548
+ - Gnu
549
+ - Goat
550
+ - Goby
551
+ - Goldcarp
552
+ - Goldeneye
553
+ - Goldfinch
554
+ - Goldfish
555
+ - Goose
556
+ - Gopher
557
+ - Goral
558
+ - Gorgonian
559
+ - Gorilla
560
+ - Goshawk
561
+ - Gourami
562
+ - Grackle
563
+ - Gramma
564
+ - Grassfinch
565
+ - Grasshopper
566
+ - Grayling
567
+ - Grebe
568
+ - Greyhound
569
+ - Grison
570
+ - Grosbeak
571
+ - Grouper
572
+ - Grouse
573
+ - Grunt
574
+ - Guan
575
+ - Guanaco
576
+ - Gudgeon
577
+ - Guenon
578
+ - Guineafowl
579
+ - Gull
580
+ - Gundi
581
+ - Guppy
582
+ - Gyrfalcon
583
+ - Halibut
584
+ - hamlet
585
+ - Hammerkop
586
+ - Hamster
587
+ - Hare
588
+ - Harrier
589
+ - Hartebeest
590
+ - Hatchetfish
591
+ - Hawfinch
592
+ - Hawk
593
+ - Head
594
+ - Hebetor
595
+ - Hedgehog
596
+ - Heron
597
+ - High-hat
598
+ - Hippopotamus
599
+ - Hoatzin
600
+ - Hogfish
601
+ - Honeybee
602
+ - Honeyeater
603
+ - Hoopoe
604
+ - Hornbill
605
+ - Horse
606
+ - Hoverfly
607
+ - Hummingbird
608
+ - Husky
609
+ - Hutia
610
+ - Hydra
611
+ - Hyena
612
+ - Hyppolytidae
613
+ - Hyrax
614
+ - Ibex
615
+ - Ibis
616
+ - Iguana
617
+ - Imagine
618
+ - Impala
619
+ - Indri
620
+ - Insect
621
+ - Isopod
622
+ - Jacana
623
+ - Jack
624
+ - Jackal
625
+ - Jackdaw
626
+ - Jacket
627
+ - Jackrabbit
628
+ - Jaeger
629
+ - Jaguar
630
+ - Jay
631
+ - Jellyfish
632
+ - Jerboa
633
+ - Jindogae
634
+ - Jingle
635
+ - Junco
636
+ - Kangaroo
637
+ - Katy
638
+ - Katydid
639
+ - Keeshond
640
+ - Kestrel
641
+ - Killdeer
642
+ - Kingfisher
643
+ - Kingsnake
644
+ - Kiskadee
645
+ - Kite
646
+ - Kitten
647
+ - Kittiwake
648
+ - Kiwi
649
+ - Klipspringer
650
+ - Knot
651
+ - Koala
652
+ - Kookaburra
653
+ - Korea
654
+ - Kouprey
655
+ - Kronosaurus
656
+ - Kudu
657
+ - Kundzha
658
+ - Lacewing
659
+ - Ladislavia
660
+ - Ladybug
661
+ - Lamb
662
+ - Lammergeier
663
+ - Langur
664
+ - Lanner
665
+ - Lapwing
666
+ - Lark
667
+ - Leafhopper
668
+ - Leech
669
+ - Lemming
670
+ - Lemur
671
+ - Leopard
672
+ - Liger
673
+ - Lijster
674
+ - Lion
675
+ - Lionfish
676
+ - Lizard
677
+ - Lizardfish
678
+ - Llama
679
+ - Loach
680
+ - Lobster
681
+ - Longspur
682
+ - Longwing
683
+ - Loon
684
+ - Lorikeet
685
+ - Loris
686
+ - Lory
687
+ - Lovebird
688
+ - Lumpsucker
689
+ - Lynx
690
+ - Lyrebird
691
+ - Macaque
692
+ - Macaw
693
+ - Macoma
694
+ - Magpie
695
+ - Major
696
+ - Mallard
697
+ - Mamba
698
+ - Mammal
699
+ - Mammoth
700
+ - Man-of-war
701
+ - Manatee
702
+ - Mandrill
703
+ - Mannikin
704
+ - Manta
705
+ - Mantis
706
+ - Margay
707
+ - Marlin
708
+ - Marmoset
709
+ - Marmot
710
+ - Marten
711
+ - Martin
712
+ - Meerkat
713
+ - Merganser
714
+ - Merlin
715
+ - Midge
716
+ - Millipede
717
+ - Mink
718
+ - Minnow
719
+ - Mite
720
+ - Mockingbird
721
+ - Mole
722
+ - Mongoose
723
+ - Monitor
724
+ - Monkey
725
+ - Moorhen
726
+ - Moose
727
+ - Mosquito
728
+ - Moth
729
+ - Motmot
730
+ - Mouflon
731
+ - Mouse
732
+ - Mousebird
733
+ - Mudskipper
734
+ - Mule
735
+ - Muljara
736
+ - Muntjak
737
+ - Murre
738
+ - Mussel
739
+ - Myna
740
+ - Mynah
741
+ - Nautilus
742
+ - Newt
743
+ - Nighthawk
744
+ - Nudibranch
745
+ - Numbat
746
+ - Nutcracker
747
+ - Nuthatch
748
+ - Nutria
749
+ - Nyala
750
+ - Ocelot
751
+ - Octopus
752
+ - Okapi
753
+ - Oldsquaw
754
+ - Oldwife
755
+ - Opossum
756
+ - Orangutan
757
+ - Oribi
758
+ - Oriole
759
+ - Oryx
760
+ - Oscar
761
+ - Osprey
762
+ - Ostrich
763
+ - Otter
764
+ - Ovenbird
765
+ - Oviraptor
766
+ - Owl
767
+ - Ox
768
+ - Oxpecker
769
+ - Oyster
770
+ - Pademelon
771
+ - Panda
772
+ - Pangolin
773
+ - Panther
774
+ - Parakeet
775
+ - Parrot
776
+ - Parrotfish
777
+ - Partridge
778
+ - Peacock
779
+ - Peccary
780
+ - Pegasus
781
+ - Pekinese
782
+ - Pelican
783
+ - Pen
784
+ - Penguin
785
+ - Perch
786
+ - Periwinkle
787
+ - Petrel
788
+ - Phascogale
789
+ - Pheasant
790
+ - Pig
791
+ - Pigeon
792
+ - Piglet
793
+ - Pika
794
+ - Pike
795
+ - Pintail
796
+ - Pipefish
797
+ - Pipistrelle
798
+ - Piranha
799
+ - Pitta
800
+ - Planaria
801
+ - Planthopper
802
+ - Platypus
803
+ - Plesiosaur
804
+ - Plover
805
+ - Pochard
806
+ - Polecat
807
+ - Pomeranian
808
+ - Pony
809
+ - Poodle
810
+ - Porcupine
811
+ - Porcupinefish
812
+ - Porkfish
813
+ - Possum
814
+ - Potoroo
815
+ - Prawn
816
+ - Prawn-goby
817
+ - Prion
818
+ - Pronghorn
819
+ - Ptarmigan
820
+ - Pudu
821
+ - Puffer
822
+ - Puffin
823
+ - Pug
824
+ - Puppy
825
+ - Python
826
+ - Pytilia
827
+ - Quagga
828
+ - Quail
829
+ - Quetzal
830
+ - Quokka
831
+ - Quoll
832
+ - Rabbit
833
+ - Raccoon
834
+ - Racer
835
+ - Rail
836
+ - Rat
837
+ - Ratel
838
+ - Ratsnake
839
+ - Rattlesnake
840
+ - Raven
841
+ - Ray
842
+ - Razorbill
843
+ - Redshank
844
+ - Redstart
845
+ - Reedbuck
846
+ - Reeffish
847
+ - Reptile
848
+ - Retriever
849
+ - Rex
850
+ - Rhino
851
+ - Rhinoceros
852
+ - Ridgeback
853
+ - Roadrunner
854
+ - Robin
855
+ - Rockfish
856
+ - Rockling
857
+ - Roller
858
+ - Romper
859
+ - Rook
860
+ - Rooster
861
+ - Rosella
862
+ - Rottweiler
863
+ - Rubythroat
864
+ - Saiga
865
+ - Sailfish
866
+ - Salamander
867
+ - Salmon
868
+ - Sambar
869
+ - Samniticus
870
+ - Samoyed
871
+ - Sandgrouse
872
+ - Sandpiper
873
+ - Sapsari
874
+ - Sapsucker
875
+ - Scallop
876
+ - Scaup
877
+ - Schipperke
878
+ - Scooter
879
+ - Scorpion
880
+ - Scoter
881
+ - Sculpin
882
+ - Seadragon
883
+ - Seal
884
+ - Serow
885
+ - Serval
886
+ - Shad
887
+ - Shark
888
+ - Shearwater
889
+ - Sheathbill
890
+ - Sheep
891
+ - Sheepdog
892
+ - Shelduck
893
+ - Shell
894
+ - Shepherd
895
+ - Shinner
896
+ - Shoveler
897
+ - Shrew
898
+ - Shrike
899
+ - Shrimp
900
+ - Siamang
901
+ - Sidewinder
902
+ - Sifaka
903
+ - Silkworm
904
+ - Sinosauropteryx
905
+ - Siskin
906
+ - Sitatunga
907
+ - Skink
908
+ - Skunk
909
+ - Skylark
910
+ - Sleeper
911
+ - Sloth
912
+ - Slug
913
+ - Smew
914
+ - Snail
915
+ - Snake
916
+ - Snakehead
917
+ - Snapper
918
+ - Snipe
919
+ - Softshell
920
+ - Sow
921
+ - Spadefish
922
+ - Spaniel
923
+ - Sparrow
924
+ - Sparrowhawk
925
+ - Spider
926
+ - Sponge
927
+ - Spoonbill
928
+ - Spotbill
929
+ - Springbok
930
+ - Springhare
931
+ - Squid
932
+ - Squirrel
933
+ - Squirrelfish
934
+ - Star
935
+ - Starfish
936
+ - Starling
937
+ - Steenbok
938
+ - Stegosaurus
939
+ - Stickleback
940
+ - Stilt
941
+ - Stingray
942
+ - Stinkpot
943
+ - Stint
944
+ - Stonefly
945
+ - Stork
946
+ - Streamertail
947
+ - Strider
948
+ - Sunbird
949
+ - Surfbird
950
+ - Surfperch
951
+ - Swallow
952
+ - Swan
953
+ - Sweeper
954
+ - Swift
955
+ - Tadpole
956
+ - Tagla
957
+ - Tahr
958
+ - Taipan
959
+ - Takahe
960
+ - Tamandua
961
+ - Tamarin
962
+ - Tanager
963
+ - Tang
964
+ - Tapir
965
+ - Tarantula
966
+ - Tarsier
967
+ - Tayra
968
+ - Teal
969
+ - Tenrec
970
+ - Tern
971
+ - Terrapin
972
+ - Terrier
973
+ - Test
974
+ - Tetra
975
+ - Thrush
976
+ - Tick
977
+ - Tiger
978
+ - Titi
979
+ - Titmouse
980
+ - Toad
981
+ - Toadbug
982
+ - Tody
983
+ - Tongue
984
+ - Tooth
985
+ - Tortoise
986
+ - Toucan
987
+ - Toucanet
988
+ - Towhee
989
+ - Treefrog
990
+ - Triceratops
991
+ - Triggerfish
992
+ - Trilobite
993
+ - Tropicbird
994
+ - Trout
995
+ - Trumpetfish
996
+ - Trunkfish
997
+ - Tuatara
998
+ - Tuna
999
+ - Turaco
1000
+ - Turkey
1001
+ - Turnstone
1002
+ - Turtle
1003
+ - Tylosaurus
1004
+ - Uakari
1005
+ - Unicorn
1006
+ - Urchin
1007
+ - Utahraptor
1008
+ - Varden
1009
+ - Vase
1010
+ - Vicuna
1011
+ - Viper
1012
+ - Vireo
1013
+ - Viscacha
1014
+ - Vole
1015
+ - Vulture
1016
+ - Wagtail
1017
+ - Wallaby
1018
+ - Walrus
1019
+ - Warbler
1020
+ - Warthog
1021
+ - Wasp
1022
+ - Waterbuck
1023
+ - Waterdragon
1024
+ - Watersnake
1025
+ - Waterthrush
1026
+ - Waxbill
1027
+ - Waxwing
1028
+ - Weasel
1029
+ - Weaver
1030
+ - Weevil
1031
+ - Wenteltrap
1032
+ - Whale
1033
+ - Whimbrel
1034
+ - Whip
1035
+ - Whip-poor-will
1036
+ - Whippet
1037
+ - Whipsnake
1038
+ - White-eye
1039
+ - Whydah
1040
+ - Wigeon
1041
+ - Wisent
1042
+ - Wolf
1043
+ - Wolverine
1044
+ - Wombat
1045
+ - Woodchuck
1046
+ - Woodduck
1047
+ - woodhoopoe
1048
+ - Woodpecker
1049
+ - Worm
1050
+ - Wrasse
1051
+ - Wren
1052
+ - Yak
1053
+ - Zebra
1054
+ - Zorilla
1055
+ :ings:
1056
+ - Measuring
1057
+ - Connecting
1058
+ - Finding
1059
+ - Indentifying
1060
+ - Controlling
1061
+ - Building
1062
+ - Approximating
1063
+ - Eliminating
1064
+ - Obviating
1065
+ - Supporting
1066
+ - Bounding
1067
+ - Revisiting
1068
+ - Completing
1069
+ - Replicating
1070
+ - Profiling
1071
+ - Towards
1072
+ - Defining
1073
+ - Verifying
@@ -0,0 +1,118 @@
1
+ require 'psych'
2
+
3
+ module ResearchTopicGen
4
+ VERSION = '0.1.1'.freeze
5
+
6
+ def self.load_file(topic)
7
+ case topic
8
+ when 'cs'
9
+ cs_file = Psych.load_file(File.join(File.dirname(__FILE__), 'data/cs_data.yml'))
10
+ connectives_file = Psych.load_file(File.join(File.dirname(__FILE__), 'data/connectives.yml'))
11
+ return connectives_file, cs_file
12
+ when 'system'
13
+ connectives_file = Psych.load_file(File.join(File.dirname(__FILE__), 'data/connectives.yml'))
14
+ system_file = Psych.load_file(File.join(File.dirname(__FILE__), 'data/system_data.yml'))
15
+ return connectives_file, system_file
16
+ when 'crypto'
17
+ crypto_file = Psych.load_file(File.join(File.dirname(__FILE__), 'data/crypto_data.yml'))
18
+ return crypto_file
19
+ else
20
+ return nil
21
+ end
22
+ end
23
+
24
+ # CS Research Topic Generator
25
+ def self.cs
26
+ connectives_file, cs_file = self.load_file('cs')
27
+ connectives = Array.new.push(connectives_file[:common_connectives], connectives_file[:extra_connectives][1])
28
+ .flatten! # :common_connectives were stored in an array.
29
+ sentence = [cs_file[:buzz1].sample, cs_file[:buzz2].sample, cs_file[:buzz3].sample, connectives[rand(0...connectives.length)], cs_file[:buzz1].sample, cs_file[:buzz2].sample, cs_file[:buzz3].sample ]
30
+ pre_connective = ResearchTopicGen.vowel_check(sentence[0], true)
31
+ mid_connective = ResearchTopicGen.vowel_check(sentence[4], false)
32
+ sentence.insert(0, pre_connective)
33
+ sentence.insert(5, mid_connective)
34
+ sentence.join(' ') << '.' # Period to mark the end of the sentence.
35
+ end
36
+
37
+ # System Research Topic Generator
38
+ def self.system
39
+ connectives_file, system_file = self.load_file('system')
40
+ connectives = Array.new.push(connectives_file[:common_connectives], connectives_file[:extra_connectives][0])
41
+ .flatten!
42
+ word1, word2, word3, word4 = system_file[:buzz1].sample, system_file[:buzz2].sample, system_file[:buzz3].sample, system_file[:buzz2].sample
43
+ name, ingword = system_file[:names].sample, system_file[:ings].sample
44
+
45
+ word2, word3, word4 =
46
+ case
47
+ when word2==word1
48
+ self.random_word(system_file, 1, word1, word2)
49
+ when (word3==word1 || word3==word2)
50
+ self.random_word(system_file, 2, word1, word2, word3)
51
+ when (word4==word2 || word4==word3 || word4==word1)
52
+ self.random_word(system_file, 3, word1, word2, word3, word4)
53
+ else
54
+ [word2, word3, word4]
55
+ end
56
+
57
+ # generic: [name]: [word1], [word2] [word3]
58
+ pre_connective = self.vowel_check(word1, true)
59
+ result1 = "#{name}: #{pre_connective} #{word1}, #{word2} #{word3}"
60
+
61
+ # approach-based: [generic] - [a/an] [buzz2] approach
62
+ mid_connective = self.vowel_check(word4, false)
63
+ result2 = "#{name}:#{word1}, #{word2} #{word3}s-- #{mid_connective} #{word4} approach"
64
+
65
+ # on...: on[foo]s
66
+ result3 = "On #{word1}, #{word2} #{word3}s"
67
+ word5, word6, word7 = system_file[:buzz1].sample, system_file[:buzz2].sample, system_file[:buzz3].sample
68
+ mid_connective = self.vowel_check(word5, false)
69
+ word6 = self.random_word(system_file, 4, word1, word2, word3, word5, word6) if (word5==word6 || word5==word3 || word5==word2 || word5==word1)
70
+ word7 = self.random_word(system_file, 5, word1, word2, word3, word5, word6, word7) if (word7==word5 || word7==word6 || word7==word3 || word7==word2 || word7==word1)
71
+ result4 = "#{result1} #{mid_connective} #{word5} #{word6} #{word7}s"
72
+ result5 = "#{ingword} #{word1}, #{word2} #{word3}s"
73
+ results = [result1, result2, result3, result4, result5]
74
+ "#{results.sample}."
75
+ end
76
+
77
+ # Crypto Research Topic Generator
78
+ def self.crypto
79
+ crypto_file = self.load_file('crypto')
80
+ word1, word2, word3 = crypto_file[:buzz1].sample, crypto_file[:buzz2].sample, crypto_file[:buzz3].sample
81
+ word2 = word2.match(word1) ? ResearchTopicGen.random_word(crypto_file, 1, word1, word2) : word2 #If word1 and word2 are same, replace word2 with a different word.
82
+ pre_connective = ResearchTopicGen.vowel_check(word1, true)
83
+ sentence = "#{pre_connective} #{word1}, #{word2} #{word3}."
84
+ end
85
+
86
+ # Generate Random Topic
87
+ def self.random
88
+ result = [ResearchTopicGen.cs, ResearchTopicGen.system, ResearchTopicGen.crypto].sample
89
+ end
90
+
91
+ # Generate random word when col1 and col2 are same.
92
+ def self.random_word(file, checks, *col)
93
+ case checks
94
+ when 2
95
+ col[2] = file[:buzz3].sample until (col[0] != col[2] && col[1] != col[2])
96
+ return col[1..checks]
97
+ when 3
98
+ col[3] = file[:buzz2].sample until (col[3] != col[1] && col[3] != col[2] && col[3] != col[0])
99
+ return col[1..checks]
100
+ when 4
101
+ col[4] = file[:buzz2].sample until (col[3] != col[4] && col[3] != col[2] && col[3] != col[1] && col[3] != col[0])
102
+ when 5
103
+ col[5] = file[:buzz3].sample until (col[5] != col[3] && col[5] != col[4] && col[5] != col[2] && col[5] != col[1] && col[5] != col[0])
104
+ else
105
+ col[1] = file[:buzz2].sample until col[0] != col[1]
106
+ end
107
+ end
108
+
109
+ # return the correct article
110
+ def self.vowel_check(word, caps)
111
+ if word.match(/^[aeiou]/i)
112
+ article = "an"
113
+ else
114
+ article = 'a'
115
+ end
116
+ return caps ? article.capitalize : article
117
+ end
118
+ end
metadata ADDED
@@ -0,0 +1,51 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: research_topicgen
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.1
5
+ platform: ruby
6
+ authors:
7
+ - slackr
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-12-17 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: A simple gem to generate worthy Research Topics.
14
+ email: slackErEhth77@openmailbox.org
15
+ executables:
16
+ - research_topicgen
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - bin/research_topicgen
21
+ - lib/data/connectives.yml
22
+ - lib/data/crypto_data.yml
23
+ - lib/data/cs_data.yml
24
+ - lib/data/system_data.yml
25
+ - lib/research_topicgen.rb
26
+ homepage: https://github.com/and-the-rest/research_topicgen
27
+ licenses:
28
+ - MIT
29
+ metadata: {}
30
+ post_install_message:
31
+ rdoc_options: []
32
+ require_paths:
33
+ - lib
34
+ required_ruby_version: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - ">="
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ required_rubygems_version: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ requirements: []
45
+ rubyforge_project:
46
+ rubygems_version: 2.4.5
47
+ signing_key:
48
+ specification_version: 4
49
+ summary: research_topicgen - A Research Topic Generator
50
+ test_files: []
51
+ has_rdoc: