Skip to content

Instantly share code, notes, and snippets.

@primaryobjects
Created December 17, 2015 23:20
Show Gist options
  • Save primaryobjects/279cf73717a2ddc01198 to your computer and use it in GitHub Desktop.
Save primaryobjects/279cf73717a2ddc01198 to your computer and use it in GitHub Desktop.
[2015-12-16] Challenge #245 [Intermediate] Ggggggg gggg Ggggg-ggggg!
# https://www.reddit.com/r/dailyprogrammer/comments/3x3hqa/20151216_challenge_245_intermediate_ggggggg_gggg/
# Builds a key/value dictionary.
load <- function(input, valuesAsKeys = FALSE) {
# Read first line of input.
key <- unlist(strsplit(input, '\n'))[1]
# Split tokens by space.
keys <- unlist(strsplit(key, ' '))
dict <- c()
# Step through each key/value pair (by 2) and add to hash.
for (i in seq(1, length(keys), by = 2)) {
if (!valuesAsKeys) {
dict[keys[i + 1]] <- keys[i]
}
else {
dict[keys[i]] <- keys[i + 1]
}
}
dict
}
# Finds a match from the dictionary at the front of the input string. Returns: list(key, result), where key is the replacement found, and result is the original input with the matched token removed.
match <- function(input, dict) {
value <- NULL
for (i in seq(dict)) {
key <- dict[i]
# Does the input start with this key?
if (grepl(paste0('^', names(key)), input) == TRUE) {
# Found a match.
value <- key
# Remove key from front of string.
input <- sub(paste0('^', names(key)), '', input)
break
}
}
list(key = value, result = input)
}
decode <- function(input, dict = NULL) {
result <- ''
# Build dictionary.
if (is.null(dict)) {
dict = load(input)
}
# Get text to decode.
index <- unlist(gregexpr('\n', input))[1]
input <- substring(input, index + 1)
# Begin scan loop, replacing patterns with values from dictionary.
while (nchar(input) > 0) {
m <- match(input, dict)
if (!is.null(m$key)) {
# Found a match.
input <- m$result
result <- paste0(result, m$key)
}
else {
# No match, just append the next character.
result <- paste0(result, substring(input, 1, 1))
input <- substring(input, 2)
}
}
result
}
encode <- function(input, dict = NULL) {
result <- ''
# Build dictionary.
if (is.null(dict)) {
dict = load(input, TRUE)
}
header <- unlist(strsplit(input, '\n'))[1]
index <- unlist(gregexpr('\n', input))[1]
input <- substring(input, index + 1)
# Encode each character, if it's found in the dictionary. Otherwise, just append it.
for (ch in strsplit(input, '')[[1]]) {
if (!is.na(dict[ch])) {
result <- paste0(result, dict[ch])
}
else {
result <- paste0(result, ch)
}
}
paste(header, result, sep = '\n')
}
# Problem 1
input <- 'H GgG d gGg e ggG l GGg o gGG r Ggg w ggg
GgGggGGGgGGggGG, ggggGGGggGGggGg!'
decode(input)
# Problem 2
input <- 'a GgG d GggGg e GggGG g GGGgg h GGGgG i GGGGg l GGGGG m ggg o GGg p Gggg r gG y ggG
GGGgGGGgGGggGGgGggG /gG/GggGgGgGGGGGgGGGGGggGGggggGGGgGGGgggGGgGggggggGggGGgG!'
decode(input)
# Problem 3
input <- 'C GgggGgg H GgggGgG T GgggGGg a gGg c GGggG d GggG e GgG g ggGgG h GGgGg i gGGg j GgggGGG l gGGG m ggGGg n GGgGG o ggg p ggGGG r GGGg s GGGG t GGgggG u ggGgg v Ggggg w GGggggg y GGggggG
GgggGGgGGgGggGGgGGGG GGggGGGgGggGggGGGgGGGGgGGGgGGggGgGGgG GGggggggGgGGGG ggGGGGGGggggggGGGgggGGGGGgGGggG gGgGGgGGGggG GggGgGGgGGGGGGggGggGggGGGGGGGGGgGGggG gggGggggGgGGGGg gGgGGgggG /GGGg/GggGgGggGGggGGGGGggggGggGGGGGGggggggGgGGGGggGgggGGgggGGgGgGGGGg_gGGgGggGGgGgGgGGGG. GgggGgGgGgGggggGgG gGg GGggGgggggggGGG GGggGGGgGggGggGGGgGGGGgGGGgGGggGgGGgG gGGgGggGGgGgGg? GgggGgggggggGGgGgG GgggGGGggggGGgGGgGG ggGggGGGG gggGggggGgGGGGg GGgggGGGgGgGgGGGGgGgG!'
decode(input)
# Problem 4
input <- 'A gGgGgGgG B gGgGgGggGg C gGgGgGggGG H GGgGgGgggg I GggGggg L GGgGgGgggG N GGgGgGggGg S GGgGgGggGG T GGgGgGgGg W gGgGgGggg Y gGgGgGGg a GGGG b gGgGgg c gGgg d gGgGG e GGGg f GggGgG g ggggg h gggG i Gggg j GGgGgGG k GGgGgg l GGgGG m ggggG n gGGG o ggG p GggGggG r gGGg s GGgg t GgGg u GgGGG v gGgGgGGG w GgGGg x GGgGgGgGG y GggGG
GGgGgGggggGGGggGGgGGGg\'GGgg GgGggggGGGGg GgGggggGGggggGGGggggg. gGgGgGGgggGGgGGG GGggGGGGGggggGgGG GGGG "GGgGgGGGGGGgGggGGgGgggGgGGGGGGGgGGg GgggGGgg GGGG gGgggGGgggGGgGGg."
GggGgggGGgg GgggGgGg GggggGGG GgGggggGGGGg GGggGGGGggggGGGGg GggGgGGGGGggggGGgggGGgGGGggGG? gGgGgGGgGGGgGGgg. GGgGgGggGgggG ggGgGGGGGGg\'GGgg GGGGgGGggggggGgGGGGggggGGGggggg GgGggggGGGGGGgGg.
gGgGgGgGGGgg GGggggGggggGGGGgggGgGGGGGGg GgGGggggGggG GgggGGgg GGGG GGgggGggGgggGGGggGGGGgGgGgggGGggGgGg GgGGggggGggG GGggGgGgGgGGGgGgGGGgggGGGgGGgg gGgggGGgggGGgGGgGGgg, GggGggg GGGGggggG GgGgGGGgGGgGGGGgGGGggggGGGggggg GggGGggGGgGGG, GGggGggGggGGGGggGggGgggGggGgGGggggGggGGGGGGgGGGGgGGGggGG, GggggGGG GGgggGggGgggGGGggGGGgGggGGGg, gGGGggG ggGgGGGGGGg gGggGGGGGGgGGGGgGGGGgg GGgGgGGGGGGgGggGGgGgggGgGGGGGGGgGGgGGgg gGgggGGgggGGgGGgGGgg. GggGgggGggGgG GggGGggGGgGGG GgGGgGGGGgGGGGgGg GgGgggG gGgGggGGGg "GGggGggGggGGGGggGggGgggGggGgGGggggGgg" GGgGGGgggGGgGggGGGg GggGGggGGgGGG GGggGGGGGggggGgGG, GgGggggGGGGggGGG GggGGggGGgGGG GGgggggGggGGgGGGGGgGGgGgGGgGGG\'GgGg GGGgGgggGgGggggGGGGggGGg. GGgGgGgGggggGGGGgGggGG\'gGGgGGGg gGGGggGGgGg GgGggggGGGGg GGggGGGGggggGGGGg GgGggggGGggggGGGggggg.
GggGgggGggGgG GggGGggGGgGGG\'gGGgGGGg GGggGGGGGggGGGggggGGGggggg "gGgggGGgggGGgGGg GggGgGGGGGggggGGgggGGgGGGggGG" GggGGggGGgGGG\'gGGgGGGg gGGgGGGgGggGgGGGGggGGggGGgGggggGGGggggg GgGgggG GgGggggGGGGg GgGgGGGGGGgGgGgGGggGgGGGggGggggGGggggGgg ggggggGGgggGGgGGGGggGggGGggggGGGggggg ggGGggGgG gGgGgGggGGggGgGGggGgGgGGGGggggGgGGGGGGGGGg, GgGGggggGGggggGgggggG GggggGGGgGggGGgGGGgGGGgGgGGGGGgGGgg GgGggggGGggggGGGgggggGGgg GggGgGgGGgggGggggG gGGGGgGGGGgGggGgggGGgGGGGgGggGGgGggGGGggGGgGGgg GgGgggG gGgGggGGgGGGgGGGGGGg GGgGgGGGGGGGggGGGGgg GgGgggG gGGgGGGGgGgGgGGGGGGggGGGGGgg.
GGgGgGggGGggG GggGGggGGgGGGgGGg gGGgGGGgGGGGGGggggGgGGGGggggGGGggggg GggGgGggGgGGg gGggGGGGGGgGGGGgGGGggggGGGggggg GGGG GGgGgGGGGGGgGggGGgGgggGgGGGGGGGgGGg GGGG gGgggGGgggGGgGGg GgggGGgg gGgGggGGGggGggGGGGGgGGGGGggGGGg gGGgGGGGgGGGgGgGGggGggggG GggGggGGGGgggGGggGggGGGgGGGGGg "gGggGGGGGGgGGGGgGG GgGggggGGGGg gGgGggGGgGGGGGGgGggGGgGgg ggGgGGGGGGgGGgg gGgggGGgggGGgGGgGGgg?" GGgGgGgggGGGGgGgGg\'GGgg gggggGGGgGgGg ggggggGGgGGGGgGggGGgGggGGgGGGGGgGGgg GGGGgGGGgGgGG gGgGggGGgGGGGGGgGggGGgGgggGgGggGggggGGggGgGGGGgg GggggGGG GgGggggGGGGggGGgGGGg, GgGggggGGGGggGGG, GgGgggGggG.
gGgGgGgGGGgGGGGggggG, gGggGGGGGGgGGGGgGGGggggGGGggggg GGggggGggggGGGGgggGgGGGGGGg GGGG gggGGgGGGggggGGGGGgGGG ggGgGGg GGGGgGGG GGGGGggGggGGGGg? GggGgggGgGg\'GGgg gGGGggGGgGg ggGgGGGGGGg ggGgGGg GgGggggGGGGg ggGGgGggggGGGGggGGg, GgGggggGGGGGGgGg\'GGgg gGGGggGGgGg gggGggGGgGGg GgGgGGGGGGgGgGgGGggGgGGGggGggggGGggGG GgGGgggGgGGgGGgGggGGgg. GGgGgGgGggggGGGGgGggGG\'gGGgGGGg gGgGggggGGgGggggG. gGgGgGgG GGgGgGGGGGGgGggGGgGgggGgGGGGGGGgGGg GgggGGgg GGGG GGgGgGGGGGGgGggGGgGgggGgGGGGGGGgGGg GGGGgGGGgGgGG GGGG ggggGGGGgggggGgGgGggGGGggGGg ggGGggGgG GgGggggGGGGg gGgggGGgggGGgGGg GggGgGGGGGggggGGgggGGgGGGggGG. gGgGgGggGgGgGGGGgGg GgGggggGGGGGGgGg\'GGgg gGGGggGGgGg GgGGggggGGGGGGgGg GggGGggGGgGGG GGggGGGGGggggGgGG. gGgGgGGgggGGgGGG GGggGGGGGggggGgGG GGGG GGgGgGGGGGGgGggGGgGgggGgGGGGGGGgGGg GgggGGgg GGGG gGgggGGgggGGgGGg, GgGGggggGGggggGgggggG GgggGGgg gGGGggGGgGg GgGggGGgGgGGGGGGg GgGGGgGGGGGgGGGGGgGGggGGgg GggGGggGGgGGG\'gGGgGGGg ggGGGgGggGGGGGggGG GgGGgGgggGgGggggG gGggGGGGGGgGGGGgGGGggggGGGggggg GGGGGGgGGGGgGG ggggGGGGgggggGgGgGggGGGggGGgGGgg ggGGggGgG GgGggggGGGGg gGgggGGgggGGgGGg GggGgGGGGGggggGGgggGGgGGGggGG gGgggGGgggGGgGGgGGgg, GgGGggggGGggggGgggggG ggggGGGGgGGGGgGGGGGgg GggGGggGGgGGG\'gGgGG gGggGGGGGGgGGGGgGG gGgGggGGgGGGgGGGGGGg GGgGgGGGGGGGggGGGGgg, gGGgGGGGgGgGgGGGGGGggGGGGGgg, GGGGgGGGgGgGG ggGGgGggggGGGGggGGg gGgGggGggggGGggGgGGGGgg gGgggGGgggGGgGGgGGgg, GgGgggGggG. gGgGgGggggggGGggggGgggggG GggGGggGGgGGG GGggGGGGGggggGgGG GggGGggGGgGGG gGgGGggGgGGG\'GgGg.
GggGgggGgGg\'GGgg ggGGGgGggGGGGGggGG GgGgggG GGgGgGGGgGGGGGggGgGg GGGGgGgGGggggGGgggGgGg GggGGggGGgGGG\'gGGgGGGg GgGGggGGgggGgGGGggggg, GggGGggGGgGGG GGgGgggGGGggGGgGGg?'
cat(decode(input))
# Problem 5 - encoding
input <- 'a GggggG b GgggGg c GgggGG d GggGgg e GggGgG f GggGGg g GggGGG h GgGggg i GgGggG j GgGgGg k GgGgGG l GgGGgg m GgGGgG n GgGGGg o GgGGGG p GGgggg q GGgggG r GGggGg s GGggGG t GGgGgg u GGgGgG v GGgGGg w GGgGGG x GGGggg y GGGggG z GGGgGg A gggggG B ggggGg C ggggGG D gggGgg E gggGgG F gggGGg G gggGGG H ggGggg I ggGggG J ggGgGg K ggGgGG L ggGGgg M ggGGgG N ggGGGg O ggGGGG P gGgggg Q gGgggG R gGggGg S gGggGG T gGgGgg U gGgGgG V gGgGGg W gGgGGG X gGGggg Y gGGggG Z gGGgGg
Hello, World!'
decode(encode(input))
input <- 'H GgG d gGg e ggG l GGg o gGG r Ggg w ggg
decode(input)
[1] "Hello, world!"
input <- 'a GgG d GggGg e GggGG g GGGgg h GGGgG i GGGGg l GGGGG m ggg o GGg p Gggg r gG y ggG
GGGgGGGgGGggGGgGggG /gG/GggGgGgGGGGGgGGGGGggGGggggGGGgGGGgggGGgGggggggGggGGgG!'
decode(input)
[1] "hooray /r/dailyprogrammer!"
input <- 'C GgggGgg H GgggGgG T GgggGGg a gGg c GGggG d GggG e GgG g ggGgG h GGgGg i gGGg j GgggGGG l gGGG m ggGGg n GGgGG o ggg p ggGGG r GGGg s GGGG t GGgggG u ggGgg v Ggggg w GGggggg y GGggggG
GgggGGgGGgGggGGgGGGG GGggGGGgGggGggGGGgGGGGgGGGgGGggGgGGgG GGggggggGgGGGG ggGGGGGGggggggGGGgggGGGGGgGGggG gGgGGgGGGggG GggGgGGgGGGGGGggGggGggGGGGGGGGGgGGggG gggGggggGgGGGGg gGgGGgggG /GGGg/GggGgGggGGggGGGGGggggGggGGGGGGggggggGgGGGGggGgggGGgggGGgGgGGGGg_gGGgGggGGgGgGgGGGG. GgggGgGgGgGggggGgG gGg GGggGgggggggGGG GGggGGGgGggGggGGGgGGGGgGGGgGGggGgGGgG gGGgGggGGgGgGg? GgggGgggggggGGgGgG GgggGGGggggGGgGGgGG ggGggGGGG gggGggggGgGGGGg GGgggGGGgGgGgGGGGgGgG!'
decode(input)
[1] "This challenge was proposed and discussed over at /r/dailyprogrammer_ideas. Have a cool challenge idea? Come join us over there!"
input <- 'A gGgGgGgG B gGgGgGggGg C gGgGgGggGG H GGgGgGgggg I GggGggg L GGgGgGgggG N GGgGgGggGg S GGgGgGggGG T GGgGgGgGg W gGgGgGggg Y gGgGgGGg a GGGG b gGgGgg c gGgg d gGgGG e GGGg f GggGgG g ggggg h gggG i Gggg j GGgGgGG k GGgGgg l GGgGG m ggggG n gGGG o ggG p GggGggG r gGGg s GGgg t GgGg u GgGGG v gGgGgGGG w GgGGg x GGgGgGgGG y GggGG
GGgGgGggggGGGggGGgGGGg\'GGgg GgGggggGGGGg GgGggggGGggggGGGggggg. gGgGgGGgggGGgGGG GGggGGGGGggggGgGG GGGG "GGgGgGGGGGGgGggGGgGgggGgGGGGGGGgGGg GgggGGgg GGGG gGgggGGgggGGgGGg."
GggGgggGGgg GgggGgGg GggggGGG GgGggggGGGGg GGggGGGGggggGGGGg GggGgGGGGGggggGGgggGGgGGGggGG? gGgGgGGgGGGgGGgg. GGgGgGggGgggG ggGgGGGGGGg\'GGgg GGGGgGGggggggGgGGGGggggGGGggggg GgGggggGGGGGGgGg.
gGgGgGgGGGgg GGggggGggggGGGGgggGgGGGGGGg GgGGggggGggG GgggGGgg GGGG GGgggGggGgggGGGggGGGGgGgGgggGGggGgGg GgGGggggGggG GGggGgGgGgGGGgGgGGGgggGGGgGGgg gGgggGGgggGGgGGgGGgg, GggGggg GGGGggggG GgGgGGGgGGgGGGGgGGGggggGGGggggg GggGGggGGgGGG, GGggGggGggGGGGggGggGgggGggGgGGggggGggGGGGGGgGGGGgGGGggGG, GggggGGG GGgggGggGgggGGGggGGGgGggGGGg, gGGGggG ggGgGGGGGGg gGggGGGGGGgGGGGgGGGGgg GGgGgGGGGGGgGggGGgGgggGgGGGGGGGgGGgGGgg gGgggGGgggGGgGGgGGgg. GggGgggGggGgG GggGGggGGgGGG GgGGgGGGGgGGGGgGg GgGgggG gGgGggGGGg "GGggGggGggGGGGggGggGgggGggGgGGggggGgg" GGgGGGgggGGgGggGGGg GggGGggGGgGGG GGggGGGGGggggGgGG, GgGggggGGGGggGGG GggGGggGGgGGG GGgggggGggGGgGGGGGgGGgGgGGgGGG\'GgGg GGGgGgggGgGggggGGGGggGGg. GGgGgGgGggggGGGGgGggGG\'gGGgGGGg gGGGggGGgGg GgGggggGGGGg GGggGGGGggggGGGGg GgGggggGGggggGGGggggg.
GggGgggGggGgG GggGGggGGgGGG\'gGGgGGGg GGggGGGGGggGGGggggGGGggggg "gGgggGGgggGGgGGg GggGgGGGGGggggGGgggGGgGGGggGG" GggGGggGGgGGG\'gGGgGGGg gGGgGGGgGggGgGGGGggGGggGGgGggggGGGggggg GgGgggG GgGggggGGGGg GgGgGGGGGGgGgGgGGggGgGGGggGggggGGggggGgg ggggggGGgggGGgGGGGggGggGGggggGGGggggg ggGGggGgG gGgGgGggGGggGgGGggGgGgGGGGggggGgGGGGGGGGGg, GgGGggggGGggggGgggggG GggggGGGgGggGGgGGGgGGGgGgGGGGGgGGgg GgGggggGGggggGGGgggggGGgg GggGgGgGGgggGggggG gGGGGgGGGGgGggGgggGGgGGGGgGggGGgGggGGGggGGgGGgg GgGgggG gGgGggGGgGGGgGGGGGGg GGgGgGGGGGGGggGGGGgg GgGgggG gGGgGGGGgGgGgGGGGGGggGGGGGgg.
GGgGgGggGGggG GggGGggGGgGGGgGGg gGGgGGGgGGGGGGggggGgGGGGggggGGGggggg GggGgGggGgGGg gGggGGGGGGgGGGGgGGGggggGGGggggg GGGG GGgGgGGGGGGgGggGGgGgggGgGGGGGGGgGGg GGGG gGgggGGgggGGgGGg GgggGGgg gGgGggGGGggGggGGGGGgGGGGGggGGGg gGGgGGGGgGGGgGgGGggGggggG GggGggGGGGgggGGggGggGGGgGGGGGg "gGggGGGGGGgGGGGgGG GgGggggGGGGg gGgGggGGgGGGGGGgGggGGgGgg ggGgGGGGGGgGGgg gGgggGGgggGGgGGgGGgg?" GGgGgGgggGGGGgGgGg\'GGgg gggggGGGgGgGg ggggggGGgGGGGgGggGGgGggGGgGGGGGgGGgg GGGGgGGGgGgGG gGgGggGGgGGGGGGgGggGGgGgggGgGggGggggGGggGgGGGGgg GggggGGG GgGggggGGGGggGGgGGGg, GgGggggGGGGggGGG, GgGgggGggG.
gGgGgGgGGGgGGGGggggG, gGggGGGGGGgGGGGgGGGggggGGGggggg GGggggGggggGGGGgggGgGGGGGGg GGGG gggGGgGGGggggGGGGGgGGG ggGgGGg GGGGgGGG GGGGGggGggGGGGg? GggGgggGgGg\'GGgg gGGGggGGgGg ggGgGGGGGGg ggGgGGg GgGggggGGGGg ggGGgGggggGGGGggGGg, GgGggggGGGGGGgGg\'GGgg gGGGggGGgGg gggGggGGgGGg GgGgGGGGGGgGgGgGGggGgGGGggGggggGGggGG GgGGgggGgGGgGGgGggGGgg. GGgGgGgGggggGGGGgGggGG\'gGGgGGGg gGgGggggGGgGggggG. gGgGgGgG GGgGgGGGGGGgGggGGgGgggGgGGGGGGGgGGg GgggGGgg GGGG GGgGgGGGGGGgGggGGgGgggGgGGGGGGGgGGg GGGGgGGGgGgGG GGGG ggggGGGGgggggGgGgGggGGGggGGg ggGGggGgG GgGggggGGGGg gGgggGGgggGGgGGg GggGgGGGGGggggGGgggGGgGGGggGG. gGgGgGggGgGgGGGGgGg GgGggggGGGGGGgGg\'GGgg gGGGggGGgGg GgGGggggGGGGGGgGg GggGGggGGgGGG GGggGGGGGggggGgGG. gGgGgGGgggGGgGGG GGggGGGGGggggGgGG GGGG GGgGgGGGGGGgGggGGgGgggGgGGGGGGGgGGg GgggGGgg GGGG gGgggGGgggGGgGGg, GgGGggggGGggggGgggggG GgggGGgg gGGGggGGgGg GgGggGGgGgGGGGGGg GgGGGgGGGGGgGGGGGgGGggGGgg GggGGggGGgGGG\'gGGgGGGg ggGGGgGggGGGGGggGG GgGGgGgggGgGggggG gGggGGGGGGgGGGGgGGGggggGGGggggg GGGGGGgGGGGgGG ggggGGGGgggggGgGgGggGGGggGGgGGgg ggGGggGgG GgGggggGGGGg gGgggGGgggGGgGGg GggGgGGGGGggggGGgggGGgGGGggGG gGgggGGgggGGgGGgGGgg, GgGGggggGGggggGgggggG ggggGGGGgGGGGgGGGGGgg GggGGggGGgGGG\'gGgGG gGggGGGGGGgGGGGgGG gGgGggGGgGGGgGGGGGGg GGgGgGGGGGGGggGGGGgg, gGGgGGGGgGgGgGGGGGGggGGGGGgg, GGGGgGGGgGgGG ggGGgGggggGGGGggGGg gGgGggGggggGGggGgGGGGgg gGgggGGgggGGgGGgGGgg, GgGgggGggG. gGgGgGggggggGGggggGgggggG GggGGggGGgGGG GGggGGGGGggggGgGG GggGGggGGgGGG gGgGGggGgGGG\'GgGg.
GggGgggGgGg\'GGgg ggGGGgGggGGGGGggGG GgGgggG GGgGgGGGgGGGGGggGgGg GGGGgGgGGggggGGgggGgGg GggGGggGGgGGG\'gGGgGGGg GgGGggGGgggGgGGGggggg, GggGGggGGgGGG GGgGgggGGGggGGgGGg?'
cat(decode(input))
Here's the thing. You said a "jackdaw is a crow."
Is it in the same family? Yes. No one's arguing that.
As someone who is a scientist who studies crows, I am telling you, specifically, in science, no one calls jackdaws crows. If you want to be "specific" like you said, then you shouldn't either. They're not the same thing.
If you're saying "crow family" you're referring to the taxonomic grouping of Corvidae, which includes things from nutcrackers to blue jays to ravens.
So your reasoning for calling a jackdaw a crow is because random people "call the black ones crows?" Let's get grackles and blackbirds in there, then, too.
Also, calling someone a human or an ape? It's not one or the other, that's not how taxonomy works. They're both. A jackdaw is a jackdaw and a member of the crow family. But that's not what you said. You said a jackdaw is a crow, which is not true unless you're okay with calling all members of the crow family crows, which means you'd call blue jays, ravens, and other birds crows, too. Which you said you don't.
It's okay to just admit you're wrong, you know?
input <- 'a GggggG b GgggGg c GgggGG d GggGgg e GggGgG f GggGGg g GggGGG h GgGggg i GgGggG j GgGgGg k GgGgGG l GgGGgg m GgGGgG n GgGGGg o GgGGGG p GGgggg q GGgggG r GGggGg s GGggGG t GGgGgg u GGgGgG v GGgGGg w GGgGGG x GGGggg y GGGggG z GGGgGg A gggggG B ggggGg C ggggGG D gggGgg E gggGgG F gggGGg G gggGGG H ggGggg I ggGggG J ggGgGg K ggGgGG L ggGGgg M ggGGgG N ggGGGg O ggGGGG P gGgggg Q gGgggG R gGggGg S gGggGG T gGgGgg U gGgGgG V gGgGGg W gGgGGG X gGGggg Y gGGggG Z gGGgGg
Hello, World!'
decode(encode(input))
[1] "Hello, World!"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment