Your wish is my command: programming by example
Gespeichert in:
Format: | Buch |
---|---|
Sprache: | English |
Veröffentlicht: |
San Francisco [u.a.]
Morgan Kaufmann
2001
|
Schriftenreihe: | The Morgan Kaufmann series in interactive technologies
|
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XVIII, 416 S. Ill., graph. Darst. |
ISBN: | 1558606882 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV013995627 | ||
003 | DE-604 | ||
005 | 20011116 | ||
007 | t | ||
008 | 011106s2001 ad|| |||| 00||| eng d | ||
020 | |a 1558606882 |9 1-55860-688-2 | ||
035 | |a (OCoLC)45700391 | ||
035 | |a (DE-599)BVBBV013995627 | ||
040 | |a DE-604 |b ger |e rakwb | ||
041 | 0 | |a eng | |
049 | |a DE-91G |a DE-384 |a DE-473 |a DE-824 |a DE-525 | ||
050 | 0 | |a QA76.6 | |
082 | 0 | |a 005.2 |2 21 | |
084 | |a ST 230 |0 (DE-625)143617: |2 rvk | ||
084 | |a DAT 300f |2 stub | ||
245 | 1 | 0 | |a Your wish is my command |b programming by example |c ed. by Henry Lieberman |
264 | 1 | |a San Francisco [u.a.] |b Morgan Kaufmann |c 2001 | |
300 | |a XVIII, 416 S. |b Ill., graph. Darst. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 0 | |a The Morgan Kaufmann series in interactive technologies | |
650 | 4 | |a Programmation (Informatique) | |
650 | 4 | |a Computer programming | |
650 | 0 | 7 | |a Programmierung |0 (DE-588)4076370-5 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Programmierung |0 (DE-588)4076370-5 |D s |
689 | 0 | |5 DE-604 | |
700 | 1 | |a Lieberman, Henry |e Sonstige |4 oth | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=009579927&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-009579927 |
Datensatz im Suchindex
_version_ | 1804128848785178624 |
---|---|
adam_text | Contents
Foreword v
Ben Shneiderman
Color Plates following page 192
Introduction 1
Henry Lieberman
Chapter 1 Novice Programming Comes of Age 7
David Canfield Smith, Allen Cypher, and Larry Tesler
Abstract 8
1.1 Introduction 8
1.2 Programming without a Textual Programming
Language 9
1.3 Theoretical Foundations 11
1.3.1 Sloman s Approach 13
1.3.2 Bruner s Approach 15
1.4 Empirical Evidence 16
1.5 Conclusion 18
References 19
Chapter 2 Generalizing by Removing Detail: How Any
Program Can Be Created by Working with
Examples 21
Ken Kahn
Abstract 22
2.1 Introduction 22
2.2 A Brief Introduction to ToonTalk 24
2.3 An Example of Programming by Example 26
ix
Contents
2.4 Discussion 40
2.5 Conclusion 42
Acknowledgements 43
References 43
Chapter 3 Demonstrational Interfaces: Sometimes
You Need a Little Intelligence, Sometimes
You Need a Lot 45
Brad A. Myers and Richard McDaniel
Abstract 46
3.1 Introduction 46
3.2 Our Demonstrational Systems 47
3.3 Level of Intelligence 49
3.3.1 No Inferencing 50
3.3.2 Simple Rule-Based Inferencing 50
3.3.3 Sophisticated AI Algorithms 52
3.4 Feedback 54
3.5 Conclusion 57
Acknowledgements 58
References 58
Chapter 4 Web Browsing by Example 61
Atsushi Sugiura
Abstract 62
4.1 Introduction 62
4.2 Underlying Problems of PBE 63
4.2.1 Problem of Inferring User Intent 63
4.2.2 Problem of Accessing Internal Data of
Applications 64
4.3 Web Browsing: Good Domain for PBE 64
4.4 Internet Scrapbook 65
4.4.1 Overview of Internet Scrapbook 66
4.4.2 Generating Matching Patterns 67
4.4.3 Extracting Data from Web Pages 70
4.4.4 Evaluation 71
4.5 SmallBrowse: Web-Browsing Interface for Small-
Screen Computers 73
Contents xi
4.5.1 Overview of SmallBrowse 74
4.5.2 Tip Help 80
4.5.3 Informal Experiments 80
4.6 Discussion 81
4.7 Conclusion 83
Appendix: Copying HTML Data from Web Browser
to Scrapbook 84
References 85
Chapter 5 Trainable Information Agents for the Web 87
Mathias Bauer, Dietmar Dengler, and Gabriele Paul
Abstract 88
5.1 Introduction 88
5.2 An Application Scenario 89
5.3 The HyQL Query Language 91
5.3.1 The Construction of Wrappers 94
5.4 The Training Dialogue 96
5.4.1 Wrapper Generation and Assessment 98
5.4.2 Suggesting an Action 100
5.4.3 Executing an Action 101
5.4.4 A Simple Training Dialogue 102
5.5 Lessons Learned 104
5.6 The Communication Problem 105
5.7 Another Application Scenario 109
5.8 Related Work (Non-PBE) 110
5.9 Conclusion 112
Acknowledgments 112
References 113
Chapter 6 End Users and GIS: A Demonstration Is
Worth a Thousand Words 115
Carol Traynor and Marian G. Williams
Abstract 116
6.1 Introduction 116
6.2 A Story of End Users and GIS 116
6.3 Why Is GIS Software So Hard to Use? 118
6.4 Are Things Improving for GIS Users? 120
xii Contents
6.5 How Can Programming by Demonstration
Help? 121
6.6 A Programming-by-Demonstration Approach for GIS:
C-SPRL 123
6.7 Conclusion 132
Acknowledgements 132
References 132
Chapter 7 Bringing Programming by Demonstration
to CAD Users 135
Patrick Girard
Abstract 136
7.1 Introduction 136
7.2 PBD and CAD 137
7.2.1 CAD: A Suitable Area for PBD 137
7.2.2 Variational and Parametric Solutions 140
7.2.3 Requirements for PBD in CAD 142
7.3 Toward a Complete Solution 143
7.3.1 Classical 2D CAD Systems 143
7.3.2 Specificity and Naming in CAD 145
7.3.3 Expressiveness 149
7.4 True Explicit PBD Solutions 155
7.4.1 Fully Integrated PBD Systems 155
7.4.2 An Actual Programming Environment,
but for Users... 157
7.5 Conclusion 159
References 160
Chapter 8 Demonstrating the Hidden Features that
Make an Application Work 163
Richard McDaniel
Abstract 164
8.1 Introduction 164
8.2 The Perils of Plain Demonstration 165
8.3 Who Is Actually Programming? 166
8.4 Giving the System Hints 167
8.4.1 Creating Special Objects 167
8.4.2 Selecting the Right Behaviors 170
Contents xiii
8.5 The Programming Environment Matters 171
8.6 Conclusion 172
References 174
Chapter 9 A Reporting Tool Using Programming by
Example for Format Designation 175
Tetsuya Masuishi and Nobuo Takahashi
Abstract 176
9.1 Introduction 176
9.2 System Overview 178
9.2.1 System Configuration 178
9.3 User Interface of Format Editor 179
9.3.1 Window Configuration 179
9.3.2 Specifying Iteration 180
9.3.3 Adjustment 182
9.4 Extracting Formatting Rules 182
9.5 Generating Reports 183
9.6 Example of the Process 183
9.7 Evaluation 187
9.8 Conclusion 190
References 190
Chapter 10 Composition by Example 191
Toshiyuki Masui
Abstract 192
10.1 Introduction 192
10.2 PBE-Based Text Editing Systems 193
10.3 Dynamic Macro: A PBE-Based Text Editing
System 193
10.4 POBox: A PBE-Based Text Input System 197
10.4.1 Various Text Input Techniques 197
10.4.2 POBox Architecture 200
10.4.3 POBox for Pen-Based Computers 202
10.4.4 Using POBox on a Cellular Phone 204
10.4.5 POBox Server on the Internet 206
10.5 Conclusion 207
References 207
xiv Contents
Chapter 11 Learning Repetitive Text-Editing Procedures
with SMARTedit 209
Tessa Lau, Steven A. Wolfman, Pedro Domingos, and
Daniel S. Weld
Abstract 210
11.1 Introduction 210
11.2 The SMARTedit User Interface 212
11.3 The Smarts behind SMARTedit 215
11.4 Choosing the Most Likely Action 219
11.5 MaJcing SMARTedit a More Intelligent Student 221
11.6 Other Directions for SMARTedit 223
11.7 Comparison with Other Text-Editing PBD
Systems 223
11.8 Conclusion 224
References 225
Chapter 12 Training Agents to Recognize Text
by Example 227
Henry Lieberman, Bonnie A. Nardi, and David J. Wright
Abstract 228
12.1 Text Recognition Agents 228
12.2 Writing Conventional Grammars as Text 230
12.3 Programming Grammars by Example for More
Accessibility 231
12.4 Grammex: A Demonstrational Interface for Grammar
Definition 232
12.5 An Example: Defining a Grammar for Email
Addresses 233
12.5.1 Top-Down Definition 234
12.6 Rule Definitions from Multiple Examples 236
12.6.1 Definition of Recursive Grammar Rules 236
12.6.2 Managing Sets of Rule Definitions 238
12.6.3 Complexity and Scalability 239
12.6.4 Defining Actions by Example 240
12.7 Future Work: Using Grammar Induction to Speed Up
the Definition Process 241
12.8 Related Work 242
Contents xv
12.9 Conclusion 243
Acknowledgements 243
References 243
Chapter 13 SWYN: A Visual Representation for Regular
Expressions 245
Alan F. Blackwell
Abstract 246
13.1 Introduction 246
13.1.1 Factors in the Usability of PBE Systems 247
13.1.2 A Test Case for Visibility in PBE 248
13.1.3 Summary of Objectives 249
13.2 Other PBE Systems for Inferring Regular
Expressions 250
13.3 A User Interface for Creating Regular Expressions
from Examples 251
13.4 A Heuristic Algorithm for Regular Expression
Inference 255
13.4.1 Probabilistic Algorithm 256
13.5 A Visual Notation for Regular Expressions 258
13.5.1 Experiment: Evaluation of Alternative
Representations 259
13.5.2 Method 261
13.5.3 Results 263
13.5.4 Discussion 264
13.6 An Integrated Facility for Regular Expression
Creation 265
13.6.1 Visual Integration with Data 265
13.6.2 Modification of the Regular Expression 266
13.7 Conclusion 267
Acknowledgements 268
References 268
Chapter 14 Learning Users Habits to Automate
Repetitive Tasks 271
Jean-David Ruvini and Christophe Dony
Abstract 272
14.1 Introduction 272
xvi Contents
14.2 Overview of APE 274
14.2.1 The Observer 276
14.2.2 The Apprentice 277
14.2.3 The Assistant 278
14.3 Illustrative Examples 279
14.3.1 Example 1 279
14.3.2 Example 2 281
14.3.3 Example 3 281
14.3.4 Example 4 284
14.4 Detecting Repetitive Tasks 284
14.4.1 Repetitive Sequences of Actions 284
14.4.2 Loops 284
14.4.3 Writing of Repetitive Pieces of Code 286
14.4.4 Repetitive Corrections of (Simple)
Programming Errors 286
14.5 Learning a User s Habits 286
14.5.1 What Makes the Problem Difficult? 287
14.5.2 Which Algorithms? 288
14.5.3 A New Algorithm 289
14.6 Use and Experimental Results 290
14.7 Conclusion 293
References 294
Chapter 15 Domain-Independent Programming by
Demonstration in Existing Applications 297
Gordon W. Paynter and Ian H. Witten
Abstract 298
15.1 Introduction 298
15.2 What Familiar Does 300
15.2.1 Arranging Files 301
15.2.2 When Errors Occur 304
15.2.3 Sorting Files 306
15.2.4 Converting Images 309
15.3 Platform Requirements 311
15.4 AppleScript: A Commercial Platform 313
15.4.1 High-Level Event Architectures 313
15.4.2 Deficiencies of the Language 314
15.4.3 Deficiencies of AppleScript
Implementations 316
Contents xvii
15.4.4 Learning from AppleScripts
Shortcomings 317
15.5 Conclusion 318
References 319
Chapter 16 Stimulus-Response PBD: Demonstrating
When as well as What 321
David W. Wolter and Brad A. Myers
Abstract 322
16.1 Introduction 322
16.1.1 PBD: An Elaboration of Macro
Recording 322
16.1.2 PBD Macro Invocation 323
16.1.3 Augmenting the Capabilities of Traditional
Interface Builders 324
16.1.4 A Quick Example 324
16.1.5 Wait a Second! 326
16.2 The Syntax of Stimulus-Response 326
16.2.1 Eliminating Modes 327
16.2.2 Demonstrating Stimuli 328
16.2.3 Demonstrating Responses 334
16.2.4 Demonstrating Aids: Guide Objects and
Ghost Marks 334
16.3 The Semantics of Stimulus-Response 336
16.3.1 Object Descriptor Problem 337
16.3.2 Response Parameter Descriptors 338
16.3.3 Linear Proportions 339
16.3.4 Complex Parameters 340
16.4 Feedback and Editing 340
16.4.1 Storyboards 341
16.4.2 The Stimulus-Response Score 341
16.5 Conclusion 342
References 343
Chapter 17 Pavlov: Where PBD Meets Macromedia s
Director 345
David Wolber
Abstract 346
xviii Contents
17.1 Introduction 346
17.2 Example 346
17.3 Objects that React Asynchronously to Events 347
17.4 Conclusion 349
References 350
Chapter 18 Programming by Analogous Examples 351
Alexander Repenning and Corrina Perrone
Abstract 352
18.1 Introduction 352
18.2 The GUI to Program Chasm 354
18.3 Programming by Analogous Examples 356
18.3.1 Making Cars Move Like Trains: An
Analogy 357
18.4 Discussion 360
18.4.1 Beyond Syntactic Rewrite Rules 360
18.4.2 From Substitutions to Analogies 363
18.4.3 Reuse through Inheritance 366
18.5 Conclusion 367
Acknowledgements 368
References 368
Chapter 19 Visual Generalization in Programming
by Example 371
Robert St. Amant, Henry Lieberman, Richard Potter, and
Luke Zettlemoyer
Abstract 372
19.1 If You Can See It, You Should Be Able to
Program It 372
19.2 What Does Visual Generalization Buy Us? 374
19.3 Low-Level Visual Generalization 376
19.4 High-Level Visual Generalization 378
19.5 Introducing Novel Generalizations:
Generalizing on Grids 381
19.6 Conclusion 383
References 384
|
any_adam_object | 1 |
building | Verbundindex |
bvnumber | BV013995627 |
callnumber-first | Q - Science |
callnumber-label | QA76 |
callnumber-raw | QA76.6 |
callnumber-search | QA76.6 |
callnumber-sort | QA 276.6 |
callnumber-subject | QA - Mathematics |
classification_rvk | ST 230 |
classification_tum | DAT 300f |
ctrlnum | (OCoLC)45700391 (DE-599)BVBBV013995627 |
dewey-full | 005.2 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.2 |
dewey-search | 005.2 |
dewey-sort | 15.2 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01447nam a2200385 c 4500</leader><controlfield tag="001">BV013995627</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20011116 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">011106s2001 ad|| |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">1558606882</subfield><subfield code="9">1-55860-688-2</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)45700391</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV013995627</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakwb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-91G</subfield><subfield code="a">DE-384</subfield><subfield code="a">DE-473</subfield><subfield code="a">DE-824</subfield><subfield code="a">DE-525</subfield></datafield><datafield tag="050" ind1=" " ind2="0"><subfield code="a">QA76.6</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.2</subfield><subfield code="2">21</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 230</subfield><subfield code="0">(DE-625)143617:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 300f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Your wish is my command</subfield><subfield code="b">programming by example</subfield><subfield code="c">ed. by Henry Lieberman</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">San Francisco [u.a.]</subfield><subfield code="b">Morgan Kaufmann</subfield><subfield code="c">2001</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XVIII, 416 S.</subfield><subfield code="b">Ill., graph. Darst.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="0" ind2=" "><subfield code="a">The Morgan Kaufmann series in interactive technologies</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Programmation (Informatique)</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Computer programming</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Programmierung</subfield><subfield code="0">(DE-588)4076370-5</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Programmierung</subfield><subfield code="0">(DE-588)4076370-5</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Lieberman, Henry</subfield><subfield code="e">Sonstige</subfield><subfield code="4">oth</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=009579927&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-009579927</subfield></datafield></record></collection> |
id | DE-604.BV013995627 |
illustrated | Illustrated |
indexdate | 2024-07-09T18:55:46Z |
institution | BVB |
isbn | 1558606882 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-009579927 |
oclc_num | 45700391 |
open_access_boolean | |
owner | DE-91G DE-BY-TUM DE-384 DE-473 DE-BY-UBG DE-824 DE-525 |
owner_facet | DE-91G DE-BY-TUM DE-384 DE-473 DE-BY-UBG DE-824 DE-525 |
physical | XVIII, 416 S. Ill., graph. Darst. |
publishDate | 2001 |
publishDateSearch | 2001 |
publishDateSort | 2001 |
publisher | Morgan Kaufmann |
record_format | marc |
series2 | The Morgan Kaufmann series in interactive technologies |
spelling | Your wish is my command programming by example ed. by Henry Lieberman San Francisco [u.a.] Morgan Kaufmann 2001 XVIII, 416 S. Ill., graph. Darst. txt rdacontent n rdamedia nc rdacarrier The Morgan Kaufmann series in interactive technologies Programmation (Informatique) Computer programming Programmierung (DE-588)4076370-5 gnd rswk-swf Programmierung (DE-588)4076370-5 s DE-604 Lieberman, Henry Sonstige oth HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=009579927&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Your wish is my command programming by example Programmation (Informatique) Computer programming Programmierung (DE-588)4076370-5 gnd |
subject_GND | (DE-588)4076370-5 |
title | Your wish is my command programming by example |
title_auth | Your wish is my command programming by example |
title_exact_search | Your wish is my command programming by example |
title_full | Your wish is my command programming by example ed. by Henry Lieberman |
title_fullStr | Your wish is my command programming by example ed. by Henry Lieberman |
title_full_unstemmed | Your wish is my command programming by example ed. by Henry Lieberman |
title_short | Your wish is my command |
title_sort | your wish is my command programming by example |
title_sub | programming by example |
topic | Programmation (Informatique) Computer programming Programmierung (DE-588)4076370-5 gnd |
topic_facet | Programmation (Informatique) Computer programming Programmierung |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=009579927&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT liebermanhenry yourwishismycommandprogrammingbyexample |