1 On Writing Well Kathryn McKinley The University of Texas at Austin based on Style: Toward Clarity...

Post on 03-Jan-2016

214 views 0 download

transcript

1

On Writing WellKathryn McKinley

The University of Texas at Austin

based on Style: Toward Clarity and Grace

by Joseph Williams slides by William Cook & Richard

Gabriel

2

3

FocusAbstract & Introduction

MechanicsSentences

Linking SentencesEmphasis

4

Abstract & introduction

ContributionResult

“This paper introduces a new pointer alias analysis that provides control-flow and context sensitivity. We show that it is one hundred times faster than the prior state of the art.”

5

Abstract & introduction

Problem statementContribution

ResultMeaning

6

Is this abstract better? Why?

“Precise flow and context sensitive pointer analysis is currently limited to programs with 100,000 or fewer lines of code. Pointer analysis clients, such as verification and testing, are consequently limited to small programs because they need high precision. This paper introduces a new pointer alias analysis that provides control-flow and context sensitivity. We show that it is one hundred times faster than prior algorithms and can analyze programs up to 1 million lines of code. Future work should investigate its effects on the precision and scalability of client analysis.”

7

Is this abstract better? Why?

“Precise flow and context sensitive pointer analysis is currently limited to programs with 100,000 or fewer lines of code. Pointer analysis clients, such as verification and testing, are consequently limited to small programs because they need high precision. This paper introduces a new pointer alias analysis that provides control-flow and context sensitivity. We show that it is one hundred times faster than prior algorithms and can analyze programs up to 1 million lines of code. Future work should investigate its effects on the precision and scalability of client analysis.”

More Precise

8

What could be improved?

“Precise flow and context sensitive pointer analysis is currently limited to programs with 100,000 or fewer lines of code. Pointer analysis clients, such as verification and testing, are consequently limited to small programs because they need high precision. This paper introduces a new pointer alias analysis that provides control-flow and context sensitivity. We show that it is one hundred times faster than prior algorithms and can analyze programs up to 1 million lines of code. Future work should investigate its effects on the precision and scalability of client analysis.”

9

FocusAbstract & Introduction

MechanicsSentences

Linking SentencesEmphasis

10

•Subjects of sentencesname cast of characters

•Verbs name actions involving characters

11

Missing Subjects

“Termination occurred after 23 iterations”

12

Missing Subjects

“Termination occurred after 23 iterations”

“The analysis terminated after 23 iterations”

13

Weak Verbs“The algorithm supports effective garbage collection in distributed

systems”

14

Weak Verbs“The algorithm supports effective garbage collection in distributed

systems”

Stronger Verbs“The algorithm collects garbage

effectively in distributed systems”

15

Verb Nominalization

Verb Nominalization

discover discoverymove movement

collaborate collaboration

16

Adjective Nominalization

Adjective Nominalization

difficult difficultyapplicable applicabilitydifferent difference

17

empty verb + NOM“We conducted an investigation of the

tradeoffs.”

18

empty verb + NOM“We conducted an investigation of the

tradeoffs.”Verb=Action“We investigated

the precision and efficiency tradeoffs.”

19

“there is” + NOM“There is a need for further

study of this analysis”

20

“there is” + NOM“There is a need for further

study of this analysis”

Name the actor“Researchers should study this analysis further in the

context of its clients.”

21

NOM + verb + NOM

“The formation of cycles during alias analysis

prevents further improvements to this

algorithm.”

22

“Because the alias analysis creates cycles, we cannot improve it

further.”

Omit needless nominalization

23

Useful Nominalizations

24

Name an action

“I do not understand her meaning or

his intention”

(what she meanswhat he intends)

25

Common concepts

“Taxation without representation was not the central cause of the

revolution”

26

compilationdependencyinheritance

implementation

Noun+Noun+..

Early childhood thought disorder misdiagnosis often occurs in state-

funded labs.

Noun+Noun+..Early childhood thought

disorder misdiagnosis often occurs in state-funded labs.

State-funded labs often misdiagnosis disordered

thought in young children.

29

Passive “The alias analysis was

added to gcc.”

30

Passive “The alias analysis was

added to gcc.”

Active voice“We implemented this

analysis in the gcc compiler.”

Concision• It is imperative to think

over in a punctilious manner each and every

suggestion that is offered to us.

Concision• It is imperative to think

over in a punctilious manner each and every

suggestion that is offered to us.

• We must consider each suggestion carefully.

33

FocusAbstract & Introduction

MechanicsSentences

Linking SentencesEmphasis

34

Linking Sentences

subject•ideas already mentioned

•familiar ideas

verb • action

object • new ideas

35

Linking Sentences

“Precise flow and context sensitive pointer analysis is currently limited to programs with 100,000 or fewer lines of code. Pointer analysis clients, such as verification and testing, are consequently limited to small programs because they need high precision. This paper introduces a new pointer alias analysis that provides control-flow and context sensitivity. We show that it is one hundred times faster than prior algorithms and can analyze programs up to 1 million lines of code. Future work should investigate its effects on the precision and scalability of client analysis.”

36

Topics form a logical sequence of ideas

old new

old new

old new

old new

37

The Point

Intro Discussion

The point(best)

…or here(intro para.)

38

Emphasis

Put important things at the end

sentence final wordsparagraph last sent.

section last para.

39

Paper

Section

Paragraph

Sentence

Containers

•Large-scale Structure

•Sequence of items

Specific rules

40

Section Titles

First sentence(or the point)

must include section title

(except the introduction or conclusion)

41

Intro Discussion

I D I D I D Intro Disc

paper

paragraphs sections

Intro Disc

I D I D I D

paragraphs

I D I D I D

paragraphs

I D I Dsentences

sentences

42

Thank you for your attention!

Questions?

43

Practicum

44

Improving an Abstract

Read it

Interview the writer: understand the• Problem statement

• Contribution

• Result

• Meaning

Top down sentence improvements

• Subject-action-object

• Link to next sentence