Skip to content

Instantly share code, notes, and snippets.

@diyan
Last active September 20, 2018 11:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save diyan/d604425d21ddc1a0dc2a90476ec11156 to your computer and use it in GitHub Desktop.
Save diyan/d604425d21ddc1a0dc2a90476ec11156 to your computer and use it in GitHub Desktop.
Verbosity of Different Programming Languages

Verbosity of Different Programming Languages

Task: decode base64 string then decompress byte array then overwrite the value

Python version

if event.data:
    event.data = zlib.decompress(base64.b64decode(event.data))

Go version

if event.Data != nil {
    zippedBytes, err := base64.StdEncoding.DecodeString(*event.Data)
    if err != nil {
        return errors.Wrap(err, "failed to decode event data")
    }
    zlibReader, err := zlib.NewReader(bytes.NewReader(zippedBytes))
    if err != nil {
        return errors.Wrap(err, "failed to decode event data")
    }
    defer zlibReader.Close()
    unzippedBytes, err := ioutil.ReadAll(zlibReader)
    if err != nil {
        return errors.Wrap(err, "failed to decode event data")
    }
    unzippedString := string(unzippedBytes)
    event.Data = &unzippedString
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment