rlang Book Club
Welcome
Pace
Format
1
Introduction
1.1
Hi, my name is…
1.2
What the heck is rlang?
1.3
Overall doc layout
1.4
Article categories
1.5
Reference categories
1.6
How to prepare (maybe?)
1.7
Meeting Videos
1.7.1
Cohort 1
2
Tidy Evaluation
Problem Part 1: reference
Problem Part 2: evaluation
How data masking solves problem 1
Elevate the data environment
Disambiguate references
How defusal/injection solve problem 2
Defuse
Inject
Summary of how data masking works
Data masking programming patterns : general problem
Data masking programming patterns
Argument behavior
Typology of argument behavior
Argument behavior in the wild
Developers can signal argument behavior via roxygen2 tags…
… and they have
Overview of data masking programming patterns
Forwarding patterns
Forwarding with
{{
Forwarding with
...
Names patterns
One name
Multiple names
Bridge patterns
selection -> data-mask, via across()
names -> data-mask, via across(all_of())
data-mask -> selection, via transmute
Guide: Double Evaluation
Tidy Eval: Notes
Injection Operators Out Of Context
{{
on regular objects
Function references
Meeting Videos
Cohort 1
3
Metaprogramming
Should we care about defused expressions?
Why “defuse”?
What are the 3 types of defused expressions?
How can we create defused expressions?
How else can we create defused expressions?
Function references
Meeting Videos
Cohort 1
4
Metaprogramming Part 2
What the heck is a quosure?
Why do I need quosures?
Why? (In Practice)
Okay, but what is a quosure?
Quosure Helpers
Formulas
Formula Helpers
Meeting Videos
Cohort 1
5
Conditions & Error Handling
Brief intro to
cli_*()
Error message content
Error message content: Problem statement
Error message content: Error details
Error message content: Grab bag
More about cli: Markup
More about cli: Pluralization
More about cli: Progress bars
rlang to cli
Customizing cli
Leftovers
Meeting Videos
Cohort 1
6
Objects
SLIDE 1
Meeting Videos
Cohort 1
7
Session
SLIDE 1
Meeting Videos
Cohort 1
8
Function Arguments
SLIDE 1
Meeting Videos
Cohort 1
Published with bookdown
Facebook
Twitter
LinkedIn
Weibo
Instapaper
A
A
Serif
Sans
White
Sepia
Night
rlang Book Club
Chapter 8
Function Arguments
Learning objectives:
THESE ARE NICE TO HAVE BUT NOT ABSOLUTELY NECESSARY