Monorepo for Aesthetic.Computer aesthetic.computer
4
fork

Configure Feed

Select the types of activity you want to include in your feed.

papers: ICCC 2026 short paper draft + deadline corrections

Add iccc-kidlisp/ — anonymized 4pp short paper reframing KidLisp as a
minimal DSL for human-LLM co-creation, targeting ICCC 2026 short paper
track (deadline Apr 24, 2026 AoE). Built against the official 2022
author kit; cites Boden, Ritchie, Kantosalo/Toivonen, Davis et al.

Fix SCORE.md deadline table: ICCC short paper is Apr 24 (not May 15 —
that's the Early Career Symposium), and adds previously-missing
SIGGRAPH Asia Technical Papers (May 12) and Art Papers (Jun 8) rows.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

+2161 -5
+8 -5
papers/SCORE.md
··· 115 115 116 116 | Venue | Type | Deadline | Conference Date | Status | 117 117 |-------|------|----------|-----------------|--------| 118 - | [ACM C&C 2026](https://cc.acm.org/2026/demos/) | Demos | Apr 16, 2026 | Jul 13–16, London | DRAFTING (`cc-demo-2026/`) | 119 - | [ICCC 2026](https://computationalcreativity.net/iccc26/) | Short Papers | May 15, 2026 | Jun 29–Jul 3, Coimbra | GO | 120 - | [SIGGRAPH Asia 2026](https://asia.siggraph.org/2026/submissions/) | Art Gallery | Jun 18, 2026 | Dec 1–4, Kuala Lumpur | NEW | 121 - | [SIGGRAPH Asia 2026](https://asia.siggraph.org/2026/submissions/posters/) | Posters | Jul 31, 2026 | Dec 1–4, Kuala Lumpur | NEW | 122 - | [SIGGRAPH Asia 2026](https://asia.siggraph.org/2026/submissions/real-time-live/) | Real-Time Live! | Aug 7, 2026 | Dec 1–4, Kuala Lumpur | NEW | 118 + | [ACM C&C 2026](https://cc.acm.org/2026/demos/) | Demos | Apr 16, 2026 | Jul 13–16, London | DRAFT READY (`cc-demo-2026/`) — submission status unconfirmed | 119 + | [ICCC 2026](https://computationalcreativity.net/iccc26/short-papers/) | Short Papers | **Apr 24, 2026 (23:59 AoE)** | Jun 29–Jul 3, Coimbra | GO — 4pp anonymized, EasyChair | 120 + | [ICCC 2026](https://computationalcreativity.net/iccc26/) | Early Career Symposium | May 15, 2026 | Jun 29–Jul 3, Coimbra | Candidate | 121 + | [SIGGRAPH Asia 2026](https://asia.siggraph.org/2026/submissions/) | Technical Papers (full) | May 12, 2026 | Dec 1–4, Kuala Lumpur | NEW | 122 + | [SIGGRAPH Asia 2026](https://asia.siggraph.org/2026/submissions/) | Art Papers | Jun 8, 2026 | Dec 1–4, Kuala Lumpur | NEW | 123 + | [SIGGRAPH Asia 2026](https://asia.siggraph.org/2026/submissions/) | Art Gallery / Emerging Tech / XR | Jun 18, 2026 | Dec 1–4, Kuala Lumpur | NEW | 124 + | [SIGGRAPH Asia 2026](https://asia.siggraph.org/2026/submissions/) | Posters | Jul 31, 2026 | Dec 1–4, Kuala Lumpur | NEW | 125 + | [SIGGRAPH Asia 2026](https://asia.siggraph.org/2026/submissions/) | Real-Time Live! | Aug 7, 2026 | Dec 1–4, Kuala Lumpur | NEW | 123 126 | [ArtsIT 2026](https://artsit.eai-conferences.org/2026/) | Full Papers | Jun 1, 2026 | Dec 2–4, Bratislava | NEW | 124 127 | [JOSS](https://joss.theoj.org/) | Software Paper | Rolling | Rolling | Anytime | 125 128
+79
papers/iccc-kidlisp/iccc.bib
··· 1 + @book{boden92, 2 + author = {Margaret Boden}, 3 + title = {The Creative Mind}, 4 + publisher = {Abacus}, 5 + address = {London}, 6 + year = {1992}, 7 + } 8 + 9 + @article{ritchie07, 10 + author = {Graeme Ritchie}, 11 + title = {Some Empirical Criteria for Attributing Creativity to a Computer Program}, 12 + journal = {Minds and Machines}, 13 + publisher = {Springer}, 14 + year = {2007}, 15 + pages = {76-99}, 16 + volume = {17}, 17 + } 18 + 19 + 20 + @misc{UCI, 21 + author = "A. Asuncion and D.J. Newman", 22 + title = "{UCI} Machine Learning Repository", 23 + note = "http://www.ics.uci.edu/~mlearn/MLRepository.html", 24 + howpublished = "University of California, Irvine, School of Information and Computer Sciences" 25 + } 26 + 27 + 28 + @inproceedings{veale07, 29 + author = {Tony Veale and Yanfen Hao}, 30 + title = {Comprehending and Generating Apt Metaphors: A Web-driven, Case-based Approach to Figurative Language}, 31 + booktitle = {Proceedings of the Twenty-Second AAAI Conference on Artificial Intelligence (AAAI-07)}, 32 + year = {2007}, 33 + pages = {1471--1476}, 34 + publisher = {AAAI Press}, 35 + address = {Vancouver, British Columbia}, 36 + } 37 + 38 + @article{lyu04, 39 + author = {Siwei Lyu and Daniel Rockmore and Hany Farid}, 40 + title = {A Digital Technique for Art Authentication}, 41 + journal = {Proceedings of the National Academy of Sciences}, 42 + volume = {101}, 43 + number = {49}, 44 + year = {2004}, 45 + pages = {17006--17010}, 46 + } 47 + 48 + @incollection{Woods81, 49 + author = "Woods, W.A.", 50 + title = "Procedural semantics as a theory of meaning", 51 + booktitle = "Elements of Discourse Understanding", 52 + editor = "Joshi, A.K. and Webber, B.L. and Sag, I.", 53 + publisher = "Cambridge University Press", 54 + address = "Cambridge, UK", 55 + year = 1981, 56 + pages = "300--334" 57 + } 58 + 59 + @Book{Ruch07, 60 + editor = {Willibald Ruch}, 61 + title = {The Sense of Humor: Explorations of a Personality 62 + Characteristic}, 63 + publisher = {Mouton de Gruyter}, 64 + year = 2007, 65 + series = {Mouton Select}, 66 + address = {Berlin} 67 + } 68 + 69 + @techreport{OZ, 70 + AUTHOR = {Mark Kantrowitz}, 71 + TITLE = {Natural Language Text Generation in the {OZ} 72 + Interactive Fiction Project}, 73 + YEAR = {1990}, 74 + INSTITUTION = {School of Computer Science, Carnegie Mellon 75 + University}, 76 + ADDRESS = {Pittsburgh, PA}, 77 + NUMBER = {CMU-CS-90-158}, 78 + TYPE = {Technical Report} 79 + }
+1193
papers/iccc-kidlisp/iccc.bst
··· 1 + % Filename: iccc.bst 2 + % Notice: This file is lifted from the AAAI author kit and as of September 16, 2010, it is identical to aaai.bst. It was renamed simply for consistency. 3 + % BibTeX `aaai' style file for BibTeX version 0.99c, LaTeX version 2.09 4 + % Version of 22 February 2008 5 + % Place it in a file called aaai.bst in the BibTeX search path. (Placing it 6 + % in the same directory as the LaTeX document should also work.) 7 + % Support for named citations is provided by named.sty 8 + % This version was made by modifying the master file made by 9 + % Oren Patashnik (PATASHNIK@SCORE.STANFORD.EDU) 10 + % Copyright (C) 1985, all rights reserved. 11 + % Modifications Copyright (C) 1988, 1989, 1994, Peter F. Patel-Schneider 12 + % Copying of this file is authorized only if either 13 + % (1) you make absolutely no changes to your copy, including name, or 14 + % (2) if you do make changes, you name it something other than 15 + % btxbst.doc, plain.bst, unsrt.bst, alpha.bst, and abbrv.bst. 16 + % This restriction helps ensure that all standard styles are identical. 17 + % This style is NOT guaranteed to work. It is provided in the hope 18 + % that it will make the preparation of papers easier. 19 + % 20 + % There are undoubtably bugs in this style. If you make bug fixes, 21 + % improvements, etc. please us know (www.aaai.org) 22 + % The preparation of this modified file was supported by Schlumberger Palo 23 + % Alto Research and AT\&T Bell Laboratories. 24 + % Modifications Copyright (C) 1990. Sunil Issar si@cs.cmu.edu 25 + % Modified the file so that the Bibliography style is closer to the 26 + % one specified in the Instructions to Authors for AAAI papers. 27 + % This style is NOT guaranteed to work. It is provided in the hope 28 + % that it will make the preparation of papers easier. 29 + % Standard disclaimers apply. Send comments etc., to si@cs.cmu.edu 30 + % This file can be used in other conferences as long as credit to the 31 + % authors and supporting agencies is retained, this notice is not changed, 32 + % and further modification or reuse is not restricted. 33 + % Name format in citations: 34 + % single authorFirst 35 + % two authorsFirst and Second 36 + % three authorsFirst, Second, and Third 37 + % more authorsFirst et al. 38 + % 39 + % Bibliography format 40 + % author. date. other. 41 + % Author format 42 + % single authorFirst, Initials 43 + % two authorsFirst, Initials, and Second, Initials 44 + % more authorsFirst, Initials; ...; and Last, Initials 45 + % 46 + % Reference list ordering: alphabetical by author or whatever passes 47 + % for author in the absence of one. 48 + % 49 + % This BibTeX style has support for short (year only) citations. This 50 + % is done by having the citations actually look like 51 + % \citeauthoryear{author-info}{year} 52 + % The LaTeX style has to have support for this 53 + ENTRY 54 + { address 55 + author 56 + booktitle 57 + chapter 58 + edition 59 + editor 60 + howpublished 61 + institution 62 + journal 63 + key 64 + month 65 + note 66 + number 67 + organization 68 + pages 69 + publisher 70 + school 71 + series 72 + title 73 + type 74 + volume 75 + year 76 + } 77 + {} 78 + { label extra.label sort.label } 79 + INTEGERS { output.state before.all mid.sentence after.sentence after.block } 80 + FUNCTION {init.state.consts} 81 + { #0 'before.all := 82 + #1 'mid.sentence := 83 + #2 'after.sentence := 84 + #3 'after.block := 85 + } 86 + STRINGS { s t } 87 + FUNCTION {output.nonnull} 88 + { 's := 89 + output.state mid.sentence = 90 + { ", " * write$ } 91 + { output.state after.block = 92 + { add.period$ write$ 93 + newline$ 94 + "\newblock " write$ 95 + } 96 + { output.state before.all = 97 + 'write$ 98 + { add.period$ " " * write$ } 99 + if$ 100 + } 101 + if$ 102 + mid.sentence 'output.state := 103 + } 104 + if$ 105 + s 106 + } 107 + FUNCTION {sioutput.nonnull} 108 + { 's := 109 + output.state mid.sentence = 110 + { " " * write$ } 111 + { output.state after.block = 112 + { add.period$ write$ 113 + newline$ 114 + "\newblock " write$ 115 + } 116 + { output.state before.all = 117 + 'write$ 118 + { add.period$ " " * write$ } 119 + if$ 120 + } 121 + if$ 122 + mid.sentence 'output.state := 123 + } 124 + if$ 125 + s 126 + } 127 + FUNCTION {output} 128 + { duplicate$ empty$ 129 + 'pop$ 130 + 'output.nonnull 131 + if$ 132 + } 133 + FUNCTION {sioutput} 134 + { duplicate$ empty$ 135 + 'pop$ 136 + 'sioutput.nonnull 137 + if$ 138 + } 139 + FUNCTION {output.check} 140 + { 't := 141 + duplicate$ empty$ 142 + { pop$ "empty " t * " in " * cite$ * warning$ } 143 + 'output.nonnull 144 + if$ 145 + } 146 + FUNCTION {output.bibitem} 147 + { newline$ 148 + "\bibitem[" write$ 149 + label write$ 150 + "]{" write$ 151 + cite$ write$ 152 + "}" write$ 153 + newline$ 154 + "" 155 + before.all 'output.state := 156 + } 157 + FUNCTION {fin.entry} 158 + { add.period$ 159 + write$ 160 + newline$ 161 + } 162 + FUNCTION {new.block} 163 + { output.state before.all = 164 + 'skip$ 165 + { after.block 'output.state := } 166 + if$ 167 + } 168 + FUNCTION {new.sentence} 169 + { output.state after.block = 170 + 'skip$ 171 + { output.state before.all = 172 + 'skip$ 173 + { after.sentence 'output.state := } 174 + if$ 175 + } 176 + if$ 177 + } 178 + FUNCTION {not} 179 + { { #0 } 180 + { #1 } 181 + if$ 182 + } 183 + FUNCTION {and} 184 + { 'skip$ 185 + { pop$ #0 } 186 + if$ 187 + } 188 + FUNCTION {or} 189 + { { pop$ #1 } 190 + 'skip$ 191 + if$ 192 + } 193 + FUNCTION {new.block.checka} 194 + { empty$ 195 + 'skip$ 196 + 'new.block 197 + if$ 198 + } 199 + FUNCTION {new.block.checkb} 200 + { empty$ 201 + swap$ empty$ 202 + and 203 + 'skip$ 204 + 'new.block 205 + if$ 206 + } 207 + FUNCTION {new.sentence.checka} 208 + { empty$ 209 + 'skip$ 210 + 'new.sentence 211 + if$ 212 + } 213 + FUNCTION {new.sentence.checkb} 214 + { empty$ 215 + swap$ empty$ 216 + and 217 + 'skip$ 218 + 'new.sentence 219 + if$ 220 + } 221 + FUNCTION {field.or.null} 222 + { duplicate$ empty$ 223 + { pop$ "" } 224 + 'skip$ 225 + if$ 226 + } 227 + FUNCTION {emphasize} 228 + { duplicate$ empty$ 229 + { pop$ "" } 230 + { "{\em " swap$ * "}" * } 231 + if$ 232 + } 233 + INTEGERS { nameptr namesleft numnames } 234 + FUNCTION {format.publisher} 235 + { publisher empty$ 236 + { "" } 237 + { address empty$ 238 + { publisher } 239 + { address ": " * publisher * } 240 + if$ 241 + } 242 + if$ 243 + } 244 + FUNCTION {format.organization} 245 + { organization empty$ 246 + { "" } 247 + { address empty$ 248 + { organization } 249 + { address ": " * organization * } 250 + if$ 251 + } 252 + if$ 253 + } 254 + FUNCTION {format.names} 255 + { 's := 256 + #1 'nameptr := 257 + s num.names$ 'numnames := 258 + numnames 'namesleft := 259 + { namesleft #0 > } 260 + { s nameptr "{vv~}{ll}{, jj}{, f.}" format.name$ 't := 261 + nameptr #1 > 262 + { namesleft #1 > 263 + { "; " * t * } 264 + { numnames #2 > 265 + { ";" * } 266 + { "," * } 267 + if$ 268 + t "others" = 269 + { " et~al." * } 270 + { " and " * t * } 271 + if$ 272 + } 273 + if$ 274 + } 275 + 't 276 + if$ 277 + nameptr #1 + 'nameptr := 278 + namesleft #1 - 'namesleft := 279 + } 280 + while$ 281 + add.period$ 282 + } 283 + FUNCTION {format.authors} 284 + { author empty$ 285 + { "" } 286 + { author format.names } 287 + if$ 288 + } 289 + FUNCTION {format.editors} 290 + { editor empty$ 291 + { "" } 292 + { editor format.names 293 + editor num.names$ #1 > 294 + { ", eds." * } 295 + { ", ed." * } 296 + if$ 297 + } 298 + if$ 299 + } 300 + FUNCTION {format.title} 301 + { title empty$ 302 + { "" } 303 + { title "t" change.case$ } 304 + if$ 305 + } 306 + FUNCTION {n.dashify} 307 + { 't := 308 + "" 309 + { t empty$ not } 310 + { t #1 #1 substring$ "-" = 311 + { t #1 #2 substring$ "--" = not 312 + { "--" * 313 + t #2 global.max$ substring$ 't := 314 + } 315 + { { t #1 #1 substring$ "-" = } 316 + { "-" * 317 + t #2 global.max$ substring$ 't := 318 + } 319 + while$ 320 + } 321 + if$ 322 + } 323 + { t #1 #1 substring$ * 324 + t #2 global.max$ substring$ 't := 325 + } 326 + if$ 327 + } 328 + while$ 329 + } 330 + FUNCTION {format.year} 331 + { year empty$ 332 + { "" } 333 + { year extra.label * } 334 + if$ 335 + } 336 + FUNCTION {format.date} 337 + { year empty$ 338 + { month empty$ 339 + { "" } 340 + { "there's a month but no year in " cite$ * warning$ 341 + month 342 + } 343 + if$ 344 + } 345 + { month empty$ 346 + 'year 347 + { month " " * year * } 348 + if$ 349 + } 350 + if$ 351 + } 352 + FUNCTION {format.btitle} 353 + { title emphasize 354 + } 355 + FUNCTION {tie.or.space.connect} 356 + { duplicate$ text.length$ #3 < 357 + { "~" } 358 + { " " } 359 + if$ 360 + swap$ * * 361 + } 362 + FUNCTION {either.or.check} 363 + { empty$ 364 + 'pop$ 365 + { "can't use both " swap$ * " fields in " * cite$ * warning$ } 366 + if$ 367 + } 368 + FUNCTION {format.bvolume} 369 + { volume empty$ 370 + { "" } 371 + { "volume" volume tie.or.space.connect 372 + series empty$ 373 + 'skip$ 374 + { " of " * series emphasize * } 375 + if$ 376 + "volume and number" number either.or.check 377 + } 378 + if$ 379 + } 380 + FUNCTION {format.number.series} 381 + { volume empty$ 382 + { number empty$ 383 + { series field.or.null } 384 + { output.state mid.sentence = 385 + { "number" } 386 + { "Number" } 387 + if$ 388 + number tie.or.space.connect 389 + series empty$ 390 + { "there's a number but no series in " cite$ * warning$ } 391 + { " in " * series * } 392 + if$ 393 + } 394 + if$ 395 + } 396 + { "" } 397 + if$ 398 + } 399 + FUNCTION {format.edition} 400 + { edition empty$ 401 + { "" } 402 + { output.state mid.sentence = 403 + { edition "l" change.case$ " edition" * } 404 + { edition "t" change.case$ " edition" * } 405 + if$ 406 + } 407 + if$ 408 + } 409 + INTEGERS { multiresult } 410 + FUNCTION {multi.page.check} 411 + { 't := 412 + #0 'multiresult := 413 + { multiresult not 414 + t empty$ not 415 + and 416 + } 417 + { t #1 #1 substring$ 418 + duplicate$ "-" = 419 + swap$ duplicate$ "," = 420 + swap$ "+" = 421 + or or 422 + { #1 'multiresult := } 423 + { t #2 global.max$ substring$ 't := } 424 + if$ 425 + } 426 + while$ 427 + multiresult 428 + } 429 + FUNCTION {format.pages} 430 + { pages empty$ 431 + { "" } 432 + { pages multi.page.check 433 + { "" pages n.dashify tie.or.space.connect } 434 + { "" pages tie.or.space.connect } 435 + if$ 436 + } 437 + if$ 438 + } 439 + FUNCTION {format.vol.num.pages} 440 + { volume field.or.null 441 + number empty$ 442 + 'skip$ 443 + { "(" number * ")" * * 444 + volume empty$ 445 + { "there's a number but no volume in " cite$ * warning$ } 446 + 'skip$ 447 + if$ 448 + } 449 + if$ 450 + pages empty$ 451 + 'skip$ 452 + { duplicate$ empty$ 453 + { pop$ format.pages } 454 + { ":" * pages n.dashify * } 455 + if$ 456 + } 457 + if$ 458 + } 459 + FUNCTION {format.chapter.pages} 460 + { chapter empty$ 461 + 'format.pages 462 + { type empty$ 463 + { "chapter" } 464 + { type "l" change.case$ } 465 + if$ 466 + chapter tie.or.space.connect 467 + pages empty$ 468 + 'skip$ 469 + { ", " * format.pages * } 470 + if$ 471 + } 472 + if$ 473 + } 474 + FUNCTION {format.in.ed.booktitle} 475 + { booktitle empty$ 476 + { "" } 477 + { editor empty$ 478 + { "In " booktitle emphasize * } 479 + { "In " format.editors * ", " * booktitle emphasize * } 480 + if$ 481 + } 482 + if$ 483 + } 484 + FUNCTION {empty.misc.check} 485 + { author empty$ title empty$ howpublished empty$ 486 + month empty$ year empty$ note empty$ 487 + and and and and and 488 + key empty$ not and 489 + { "all relevant fields are empty in " cite$ * warning$ } 490 + 'skip$ 491 + if$ 492 + } 493 + FUNCTION {format.thesis.type} 494 + { type empty$ 495 + 'skip$ 496 + { pop$ 497 + type "t" change.case$ 498 + } 499 + if$ 500 + } 501 + FUNCTION {format.tr.number} 502 + { type empty$ 503 + { "Technical Report" } 504 + 'type 505 + if$ 506 + number empty$ 507 + { "t" change.case$ } 508 + { number tie.or.space.connect } 509 + if$ 510 + } 511 + FUNCTION {format.article.crossref} 512 + { key empty$ 513 + { journal empty$ 514 + { "need key or journal for " cite$ * " to crossref " * crossref * 515 + warning$ 516 + "" 517 + } 518 + { "In {\em " journal * "\/}" * } 519 + if$ 520 + } 521 + { "In " key * } 522 + if$ 523 + " \shortcite{" * crossref * "}" * 524 + } 525 + FUNCTION {format.crossref.editor} 526 + { editor #1 "{vv~}{ll}" format.name$ 527 + editor num.names$ duplicate$ 528 + #2 > 529 + { pop$ " et~al." * } 530 + { #2 < 531 + 'skip$ 532 + { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = 533 + { " et~al." * } 534 + { " and " * editor #2 "{vv~}{ll}" format.name$ * } 535 + if$ 536 + } 537 + if$ 538 + } 539 + if$ 540 + } 541 + FUNCTION {format.book.crossref} 542 + { volume empty$ 543 + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ 544 + "In " 545 + } 546 + { "Volume" volume tie.or.space.connect 547 + " of " * 548 + } 549 + if$ 550 + editor empty$ 551 + editor field.or.null author field.or.null = 552 + or 553 + { key empty$ 554 + { series empty$ 555 + { "need editor, key, or series for " cite$ * " to crossref " * 556 + crossref * warning$ 557 + "" * 558 + } 559 + { "{\em " * series * "\/}" * } 560 + if$ 561 + } 562 + { key * } 563 + if$ 564 + } 565 + { format.crossref.editor * } 566 + if$ 567 + " \shortcite{" * crossref * "}" * 568 + } 569 + FUNCTION {format.incoll.inproc.crossref} 570 + { editor empty$ 571 + editor field.or.null author field.or.null = 572 + or 573 + { key empty$ 574 + { booktitle empty$ 575 + { "need editor, key, or booktitle for " cite$ * " to crossref " * 576 + crossref * warning$ 577 + "" 578 + } 579 + { "In {\em " booktitle * "\/}" * } 580 + if$ 581 + } 582 + { "In " key * } 583 + if$ 584 + } 585 + { "In " format.crossref.editor * } 586 + if$ 587 + " \shortcite{" * crossref * "}" * 588 + } 589 + FUNCTION {article} 590 + { output.bibitem 591 + format.authors "author" output.check 592 + new.block format.year "year" output.check 593 + new.block 594 + format.title "title" output.check 595 + new.block 596 + crossref missing$ 597 + { journal emphasize "journal" output.check 598 + format.vol.num.pages sioutput 599 + } 600 + { format.article.crossref output.nonnull 601 + format.pages sioutput 602 + } 603 + if$ 604 + new.block 605 + note output 606 + fin.entry 607 + } 608 + FUNCTION {book} 609 + { output.bibitem 610 + author empty$ 611 + { format.editors "author and editor" output.check } 612 + { format.authors output.nonnull 613 + crossref missing$ 614 + { "author and editor" editor either.or.check } 615 + 'skip$ 616 + if$ 617 + } 618 + if$ 619 + new.block format.year "year" output.check 620 + new.block 621 + format.btitle "title" output.check 622 + crossref missing$ 623 + { format.bvolume output 624 + new.block 625 + format.number.series output 626 + new.sentence 627 + format.publisher "publisher" output.check 628 + } 629 + { new.block 630 + format.book.crossref output.nonnull 631 + } 632 + if$ 633 + format.edition output 634 + % format.date "year" output.check 635 + new.block 636 + note output 637 + fin.entry 638 + } 639 + FUNCTION {booklet} 640 + { output.bibitem 641 + format.authors output 642 + new.block format.year "year" output.check 643 + new.block 644 + format.title "title" output.check 645 + howpublished address new.block.checkb 646 + howpublished output 647 + address output 648 + % format.date output 649 + new.block 650 + note output 651 + fin.entry 652 + } 653 + FUNCTION {inbook} 654 + { output.bibitem 655 + author empty$ 656 + { format.editors "author and editor" output.check } 657 + { format.authors output.nonnull 658 + crossref missing$ 659 + { "author and editor" editor either.or.check } 660 + 'skip$ 661 + if$ 662 + } 663 + if$ 664 + new.block format.year "year" output.check 665 + new.block 666 + format.btitle "title" output.check 667 + crossref missing$ 668 + { format.bvolume output 669 + new.block 670 + format.number.series output 671 + new.sentence 672 + format.publisher "publisher" output.check 673 + } 674 + { format.book.crossref output.nonnull 675 + } 676 + if$ 677 + format.edition output 678 + % format.date "year" output.check 679 + new.block 680 + format.chapter.pages "chapter and pages" output.check 681 + new.block 682 + note output 683 + fin.entry 684 + } 685 + FUNCTION {incollection} 686 + { output.bibitem 687 + format.authors "author" output.check 688 + new.block format.year "year" output.check 689 + new.block 690 + format.title "title" output.check 691 + new.block 692 + crossref missing$ 693 + { format.in.ed.booktitle "booktitle" output.check 694 + format.bvolume output 695 + format.number.series output 696 + new.sentence 697 + format.publisher "publisher" output.check 698 + format.edition output 699 + % format.date "year" output.check 700 + new.block 701 + format.chapter.pages output 702 + } 703 + { format.incoll.inproc.crossref output.nonnull 704 + new.block 705 + format.chapter.pages output 706 + } 707 + if$ 708 + new.block 709 + note output 710 + fin.entry 711 + } 712 + FUNCTION {inproceedings} 713 + { output.bibitem 714 + format.authors "author" output.check 715 + new.block format.year "year" output.check 716 + new.block 717 + format.title "title" output.check 718 + new.block 719 + crossref missing$ 720 + { format.in.ed.booktitle "booktitle" output.check 721 + format.bvolume output 722 + format.number.series output 723 + format.pages output 724 + new.block 725 + organization empty$ 726 + { format.publisher output } 727 + { format.organization output } 728 + if$ 729 + } 730 + { format.incoll.inproc.crossref output.nonnull 731 + format.pages output 732 + } 733 + if$ 734 + new.block 735 + note output 736 + fin.entry 737 + } 738 + FUNCTION {conference} { inproceedings } 739 + FUNCTION {manual} 740 + { output.bibitem 741 + author empty$ 742 + { organization empty$ 743 + 'skip$ 744 + { organization output.nonnull 745 + address output 746 + } 747 + if$ 748 + } 749 + { format.authors output.nonnull } 750 + if$ 751 + new.block format.year "year" output.check 752 + new.block 753 + format.btitle "title" output.check 754 + author empty$ 755 + { organization empty$ 756 + { address new.block.checka 757 + address output 758 + } 759 + 'skip$ 760 + if$ 761 + } 762 + { organization address new.block.checkb 763 + organization output 764 + address output 765 + } 766 + if$ 767 + format.edition output 768 + % format.date output 769 + new.block 770 + note output 771 + fin.entry 772 + } 773 + FUNCTION {mastersthesis} 774 + { output.bibitem 775 + format.authors "author" output.check 776 + new.block format.year "year" output.check 777 + new.block 778 + format.title "title" output.check 779 + new.block 780 + "Master's thesis" format.thesis.type output.nonnull 781 + school "school" output.check 782 + address output 783 + % format.date "year" output.check 784 + new.block 785 + note output 786 + fin.entry 787 + } 788 + FUNCTION {misc} 789 + { output.bibitem 790 + format.authors output 791 + new.block format.year "year" output.check 792 + title howpublished new.block.checkb 793 + format.title output 794 + howpublished new.block.checka 795 + howpublished output 796 + % format.date output 797 + new.block 798 + note output 799 + fin.entry 800 + empty.misc.check 801 + } 802 + FUNCTION {phdthesis} 803 + { output.bibitem 804 + format.authors "author" output.check 805 + new.block format.year "year" output.check 806 + new.block 807 + format.btitle "title" output.check 808 + new.block 809 + "Ph.D. Dissertation" format.thesis.type output.nonnull 810 + school "school" output.check 811 + address output 812 + % format.date "year" output.check 813 + new.block 814 + note output 815 + fin.entry 816 + } 817 + FUNCTION {proceedings} 818 + { output.bibitem 819 + editor empty$ 820 + { organization output } 821 + { format.editors output.nonnull } 822 + if$ 823 + new.block format.year "year" output.check 824 + new.block 825 + format.btitle "title" output.check 826 + format.bvolume output 827 + format.number.series output 828 + editor empty$ 829 + { publisher empty$ 830 + { address output } 831 + { format.publisher output } 832 + if$ 833 + } 834 + { organization empty$ 835 + { publisher new.sentence.checka 836 + format.publisher output 837 + } 838 + { organization new.sentence.checkb 839 + format.organization output 840 + } 841 + if$ 842 + } 843 + if$ 844 + new.block 845 + note output 846 + fin.entry 847 + } 848 + FUNCTION {techreport} 849 + { output.bibitem 850 + format.authors "author" output.check 851 + new.block format.year "year" output.check 852 + new.block 853 + format.title "title" output.check 854 + new.block 855 + format.tr.number output.nonnull 856 + institution "institution" output.check 857 + address output 858 + % format.date "year" output.check 859 + new.block 860 + note output 861 + fin.entry 862 + } 863 + FUNCTION {unpublished} 864 + { output.bibitem 865 + format.authors "author" output.check 866 + new.block format.year "year" output.check 867 + new.block 868 + format.title "title" output.check 869 + new.block 870 + note "note" output.check 871 + % format.date output 872 + fin.entry 873 + } 874 + FUNCTION {default.type} { misc } 875 + MACRO {jan} {"January"} 876 + MACRO {feb} {"February"} 877 + MACRO {mar} {"March"} 878 + MACRO {apr} {"April"} 879 + MACRO {may} {"May"} 880 + MACRO {jun} {"June"} 881 + MACRO {jul} {"July"} 882 + MACRO {aug} {"August"} 883 + MACRO {sep} {"September"} 884 + MACRO {oct} {"October"} 885 + MACRO {nov} {"November"} 886 + MACRO {dec} {"December"} 887 + MACRO {acmcs} {"ACM Computing Surveys"} 888 + MACRO {acta} {"Acta Informatica"} 889 + MACRO {cacm} {"Communications of the ACM"} 890 + MACRO {ibmjrd} {"IBM Journal of Research and Development"} 891 + MACRO {ibmsj} {"IBM Systems Journal"} 892 + MACRO {ieeese} {"IEEE Transactions on Software Engineering"} 893 + MACRO {ieeetc} {"IEEE Transactions on Computers"} 894 + MACRO {ieeetcad} 895 + {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} 896 + MACRO {ipl} {"Information Processing Letters"} 897 + MACRO {jacm} {"Journal of the ACM"} 898 + MACRO {jcss} {"Journal of Computer and System Sciences"} 899 + MACRO {scp} {"Science of Computer Programming"} 900 + MACRO {sicomp} {"SIAM Journal on Computing"} 901 + MACRO {tocs} {"ACM Transactions on Computer Systems"} 902 + MACRO {tods} {"ACM Transactions on Database Systems"} 903 + MACRO {tog} {"ACM Transactions on Graphics"} 904 + MACRO {toms} {"ACM Transactions on Mathematical Software"} 905 + MACRO {toois} {"ACM Transactions on Office Information Systems"} 906 + MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} 907 + MACRO {tcs} {"Theoretical Computer Science"} 908 + READ 909 + FUNCTION {sortify} 910 + { purify$ 911 + "l" change.case$ 912 + } 913 + INTEGERS { len } 914 + FUNCTION {chop.word} 915 + { 's := 916 + 'len := 917 + s #1 len substring$ = 918 + { s len #1 + global.max$ substring$ } 919 + 's 920 + if$ 921 + } 922 + FUNCTION {format.lab.names} 923 + { 's := 924 + s num.names$ 'numnames := 925 + numnames #1 = 926 + { s #1 "{vv }{ll}" format.name$ } 927 + { numnames #2 = 928 + { s #1 "{vv }{ll} and " format.name$ s #2 "{vv }{ll}" format.name$ * 929 + } 930 + { numnames #3 = 931 + { s #1 "{vv }{ll}, " format.name$ 932 + s #2 "{vv }{ll}, and " format.name$ * 933 + s #3 "{vv }{ll}" format.name$ * 934 + } 935 + { s #1 "{vv }{ll }\bgroup et al.\egroup " format.name$ 936 + } 937 + if$ 938 + } 939 + if$ 940 + } 941 + if$ 942 + } 943 + FUNCTION {author.key.label} 944 + { author empty$ 945 + { key empty$ 946 + { cite$ #1 #3 substring$ } 947 + { key } 948 + if$ 949 + } 950 + { author format.lab.names } 951 + if$ 952 + } 953 + FUNCTION {author.editor.key.label} 954 + { author empty$ 955 + { editor empty$ 956 + { key empty$ 957 + { cite$ #1 #3 substring$ } 958 + { key } 959 + if$ 960 + } 961 + { editor format.lab.names } 962 + if$ 963 + } 964 + { author format.lab.names } 965 + if$ 966 + } 967 + FUNCTION {author.key.organization.label} 968 + { author empty$ 969 + { key empty$ 970 + { organization empty$ 971 + { cite$ #1 #3 substring$ } 972 + { "The " #4 organization chop.word #3 text.prefix$ } 973 + if$ 974 + } 975 + { key } 976 + if$ 977 + } 978 + { author format.lab.names } 979 + if$ 980 + } 981 + FUNCTION {editor.key.organization.label} 982 + { editor empty$ 983 + { key empty$ 984 + { organization empty$ 985 + { cite$ #1 #3 substring$ } 986 + { "The " #4 organization chop.word #3 text.prefix$ } 987 + if$ 988 + } 989 + { key } 990 + if$ 991 + } 992 + { editor format.lab.names } 993 + if$ 994 + } 995 + FUNCTION {calc.label} 996 + { type$ "book" = 997 + type$ "inbook" = 998 + or 999 + 'author.editor.key.label 1000 + { type$ "proceedings" = 1001 + 'editor.key.organization.label 1002 + { type$ "manual" = 1003 + 'author.key.organization.label 1004 + 'author.key.label 1005 + if$ 1006 + } 1007 + if$ 1008 + } 1009 + if$ 1010 + duplicate$ 1011 + "\protect\citeauthoryear{" swap$ * "}{" * 1012 + year field.or.null purify$ * % CHANGED - pfps - 15 Feb 1989 1013 + 'label := 1014 + year field.or.null purify$ * 1015 + sortify 'sort.label := 1016 + } 1017 + FUNCTION {sort.format.names} 1018 + { 's := 1019 + #1 'nameptr := 1020 + "" 1021 + s num.names$ 'numnames := 1022 + numnames 'namesleft := 1023 + { namesleft #0 > } 1024 + { nameptr #1 > 1025 + { " " * } 1026 + 'skip$ 1027 + if$ 1028 + s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't := 1029 + nameptr numnames = t "others" = and 1030 + { "et al" * } 1031 + { t sortify * } 1032 + if$ 1033 + nameptr #1 + 'nameptr := 1034 + namesleft #1 - 'namesleft := 1035 + } 1036 + while$ 1037 + } 1038 + FUNCTION {sort.format.title} 1039 + { 't := 1040 + "A " #2 1041 + "An " #3 1042 + "The " #4 t chop.word 1043 + chop.word 1044 + chop.word 1045 + sortify 1046 + #1 global.max$ substring$ 1047 + } 1048 + FUNCTION {author.sort} 1049 + { author empty$ 1050 + { key empty$ 1051 + { "to sort, need author or key in " cite$ * warning$ 1052 + "" 1053 + } 1054 + { key sortify } 1055 + if$ 1056 + } 1057 + { author sort.format.names } 1058 + if$ 1059 + } 1060 + FUNCTION {author.editor.sort} 1061 + { author empty$ 1062 + { editor empty$ 1063 + { key empty$ 1064 + { "to sort, need author, editor, or key in " cite$ * warning$ 1065 + "" 1066 + } 1067 + { key sortify } 1068 + if$ 1069 + } 1070 + { editor sort.format.names } 1071 + if$ 1072 + } 1073 + { author sort.format.names } 1074 + if$ 1075 + } 1076 + FUNCTION {author.organization.sort} 1077 + { author empty$ 1078 + { organization empty$ 1079 + { key empty$ 1080 + { "to sort, need author, organization, or key in " cite$ * warning$ 1081 + "" 1082 + } 1083 + { key sortify } 1084 + if$ 1085 + } 1086 + { "The " #4 organization chop.word sortify } 1087 + if$ 1088 + } 1089 + { author sort.format.names } 1090 + if$ 1091 + } 1092 + FUNCTION {editor.organization.sort} 1093 + { editor empty$ 1094 + { organization empty$ 1095 + { key empty$ 1096 + { "to sort, need editor, organization, or key in " cite$ * warning$ 1097 + "" 1098 + } 1099 + { key sortify } 1100 + if$ 1101 + } 1102 + { "The " #4 organization chop.word sortify } 1103 + if$ 1104 + } 1105 + { editor sort.format.names } 1106 + if$ 1107 + } 1108 + FUNCTION {presort} 1109 + { calc.label 1110 + sort.label 1111 + " " 1112 + * 1113 + type$ "book" = 1114 + type$ "inbook" = 1115 + or 1116 + 'author.editor.sort 1117 + { type$ "proceedings" = 1118 + 'editor.organization.sort 1119 + { type$ "manual" = 1120 + 'author.organization.sort 1121 + 'author.sort 1122 + if$ 1123 + } 1124 + if$ 1125 + } 1126 + if$ 1127 + * 1128 + " " 1129 + * 1130 + year field.or.null sortify 1131 + * 1132 + " " 1133 + * 1134 + title field.or.null 1135 + sort.format.title 1136 + * 1137 + #1 entry.max$ substring$ 1138 + 'sort.key$ := 1139 + } 1140 + ITERATE {presort} 1141 + SORT 1142 + STRINGS { longest.label last.sort.label next.extra } 1143 + INTEGERS { longest.label.width last.extra.num } 1144 + FUNCTION {initialize.longest.label} 1145 + { "" 'longest.label := 1146 + #0 int.to.chr$ 'last.sort.label := 1147 + "" 'next.extra := 1148 + #0 'longest.label.width := 1149 + #0 'last.extra.num := 1150 + } 1151 + FUNCTION {forward.pass} 1152 + { last.sort.label sort.label = 1153 + { last.extra.num #1 + 'last.extra.num := 1154 + last.extra.num int.to.chr$ 'extra.label := 1155 + } 1156 + { "a" chr.to.int$ 'last.extra.num := 1157 + "" 'extra.label := 1158 + sort.label 'last.sort.label := 1159 + } 1160 + if$ 1161 + } 1162 + FUNCTION {reverse.pass} 1163 + { next.extra "b" = 1164 + { "a" 'extra.label := } 1165 + 'skip$ 1166 + if$ 1167 + label extra.label * "}" * 'label := % CHANGED - pfps 15 Feb 1989 1168 + label width$ longest.label.width > 1169 + { label 'longest.label := 1170 + label width$ 'longest.label.width := 1171 + } 1172 + 'skip$ 1173 + if$ 1174 + extra.label 'next.extra := 1175 + } 1176 + EXECUTE {initialize.longest.label} 1177 + ITERATE {forward.pass} 1178 + REVERSE {reverse.pass} 1179 + FUNCTION {begin.bib} 1180 + { preamble$ empty$ 1181 + 'skip$ 1182 + { preamble$ write$ newline$ } 1183 + if$ 1184 + "\begin{thebibliography}{}" write$ newline$ 1185 + } 1186 + EXECUTE {begin.bib} 1187 + EXECUTE {init.state.consts} 1188 + ITERATE {call.type$} 1189 + FUNCTION {end.bib} 1190 + { newline$ 1191 + "\end{thebibliography}" write$ newline$ 1192 + } 1193 + EXECUTE {end.bib}
papers/iccc-kidlisp/iccc.pdf

This is a binary file and will not be displayed.

+299
papers/iccc-kidlisp/iccc.sty
··· 1 + %Filename: iccc.sty 2 + % 3 + \typeout{Conference Style for ICCC for LaTeX 2e -- version of 16 September 2010} 4 + % NOTICE: DO NOT MODIFY THIS FILE WITHOUT CHANGING ITS NAME. This style 5 + % file is called iccc.sty. It is lifted from the aaai.sty file used by the AAAI 6 + % and consists of minimal modification to allow its use for ICCC. These modifications 7 + % were done by Dan Ventura in September 2010. The original AAAI notice follows. 8 + % 9 + % NOTICE: DO NOT MODIFY THIS FILE WITHOUT CHANGING ITS NAME. This style 10 + % file is called aaai.sty. Modifications to this file are permitted, 11 + % provided that your modified version does not include the acronym "aaai" 12 + % in its name, that credit to the authors and supporting agencies is 13 + % retained, and that further modification or reuse is not restricted. This 14 + % file was originally prepared by Peter F. Patel-Schneider, liberally 15 + % using the ideas of other style hackers, including Barbara Beeton. It was 16 + % modified in April 1999 by J. Scott Penberthy and George Ferguson. It was 17 + % modified in 2007 by AAAI. It was modified in February 2009 18 + % and in November 2009 by Hans W. Guesgen and Giuseppe De Giacomo. It 19 + % was further modified in March 2010 by AAAI. 20 + % The original preparation of this file was supported by 21 + % Schlumberger Palo Alto Research, AT\&T Bell Laboratories, AAAI, and 22 + % Morgan Kaufmann Publishers. 23 + % 24 + % WARNING: This style is NOT guaranteed to work. It is provided in the 25 + % hope that it might make the preparation of papers easier, but this style 26 + % file is provided "as is" without warranty of any kind, either express or 27 + % implied, including but not limited to the implied warranties of 28 + % merchantability, fitness for a particular purpose, or noninfringement. 29 + % You use this style file at your own risk. Standard disclaimers apply. 30 + % 31 + % Do not use this file unless you are an experienced LaTeX user. To 32 + % satisfy AAAI's requirements, you must change your paper's configuration 33 + % to use Times fonts. AAAI will not accept your paper if it is formatted 34 + % using obsolete type 3 Computer Modern bitmapped fonts. Please ensure 35 + % that your version of dvips maps to type 1 fonts. Place this document in 36 + % a file called aaai.sty in the TeX search path. (Placing it in the same 37 + % directory as the paper should also work.) 38 + % 39 + % You must also format your paper for US letter-sized paper. 40 + % 41 + % There are undoubtably bugs in this style. If you would like to submit 42 + % bug fixes, improvements, etc. please let us know. Please use the contact form 43 + % at www.aaai.org. 44 + % 45 + % \documentclass[letterpaper]{article} 46 + % \usepackage{aaai} 47 + % \usepackage{times} 48 + % \usepackage{helvet} 49 + % \usepackage{courier} 50 + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 51 + % PDFMARK for TeX and GhostScript 52 + % Uncomment and complete the following for metadata if 53 + % your paper is typeset using TeX and GhostScript (e.g 54 + % if you use .ps or .eps files in your paper): 55 + % \special{! /pdfmark where 56 + % {pop} {userdict /pdfmark /cleartomark load put} ifelse 57 + % [ /Author (John Doe, Jane Doe) 58 + % /Title (Input Your Paper Title Here) 59 + % /Subject (Input the Proceedings Title Here) 60 + % /Keywords (AAAI, artificial intelligence) 61 + % /DOCINFO pdfmark} 62 + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 63 + % PDFINFO for PDFTeX 64 + % Uncomment and complete the following for metadata if 65 + % your paper is typeset using PDFTeX 66 + % \pdfinfo{ 67 + % /Title (Input Your Paper Title Here) 68 + % /Subject (Input the Proceedings Title Here) 69 + % /Author (John Doe, Jane Doe) 70 + % } 71 + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 72 + % Uncomment if you want to use section numbers 73 + % and change the 0 to a 1 or 2 74 + % \setcounter{secnumdepth}{0} 75 + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 76 + % \title{Title} 77 + % \author{Author 1 \and Author 2 \\ Address line \\ Address line \And 78 + % Author 3 \\ Address line \\ Address line} 79 + % \begin{document} 80 + % \maketitle 81 + % ... 82 + % \bibliography{Bibliography-File} 83 + % \bibliographystyle{aaai} 84 + % \end{document} 85 + % \pubnote{\em To appear, AAAI-10} % optional, remove for submission 86 + % 87 + % \pubnote is for printing the paper yourself, and should not be used in 88 + % submitted versions!!!! 89 + % Author information can be set in various styles: 90 + % For several authors from the same institution: 91 + % \author{Author 1 \and ... \and Author n \\ 92 + % Address line \\ ... \\ Address line} 93 + % if the names do not fit well on one line use 94 + % \author{Author 1 \\ {\bf Author 2} \\ ... \\ {\bf Author n} \\ 95 + % Address line \\ ... \\ Address line} 96 + % For authors from different institutions: 97 + % \author{Author 1 \\ Address line \\ ... \\ Address line 98 + % \And ... \And 99 + % Author n \\ Address line \\ ... \\ Address line} 100 + % To start a separate ``row'' of authors use \AND, as in 101 + % \author{Author 1 \\ Address line \\ ... \\ Address line 102 + % \AND 103 + % Author 2 \\ Address line \\ ... \\ Address line \And 104 + % Author 3 \\ Address line \\ ... \\ Address line} 105 + % If the title and author information does not fit in the area allocated, 106 + % place \setlength\titlebox{height} 107 + % after the \documentstyle line 108 + % where {height} is something like 2.5in 109 + % PHYSICAL PAGE LAYOUT 110 + \setlength\topmargin{-0.25in} \setlength\oddsidemargin{-0.25in} 111 + \setlength\textheight{9.0in} \setlength\textwidth{7.0in} 112 + \setlength\columnsep{0.375in} \newlength\titlebox \setlength\titlebox{2.25in} 113 + \setlength\headheight{0pt} \setlength\headsep{0pt} 114 + %\setlength\footheight{0pt} \setlength\footskip{0pt} 115 + \thispagestyle{empty} \pagestyle{empty} 116 + \flushbottom \twocolumn \sloppy 117 + % We're never going to need a table of contents, so just flush it to 118 + % save space --- suggested by drstrip@sandia-2 119 + \def\addcontentsline#1#2#3{} 120 + % gf: PRINT COPYRIGHT NOTICE 121 + %\def\copyright@year{\number\year} 122 + %\def\copyright@text{Copyright \copyright\space \copyright@year, 123 + %Association for the Advancement of Artificial Intelligence (www.aaai.org). 124 + %All rights reserved.} 125 + %\def\copyright@on{T} 126 + %\def\nocopyright{\gdef\copyright@on{}} 127 + %\def\copyrighttext#1{\gdef\copyright@on{T}\gdef\copyright@text{#1}} 128 + %\def\copyrightyear#1{\gdef\copyright@on{T}\gdef\copyright@year{#1}} 129 + % gf: End changes for copyright notice (used in \maketitle, below) 130 + % Title stuff, taken from deproc. 131 + \def\maketitle{\par 132 + \begingroup % to make the footnote style local to the title 133 + \def\thefootnote{\fnsymbol{footnote}} 134 + % gf: Don't see why we'd want the footnotemark to be 0pt wide 135 + %\def\@makefnmark{\hbox to 0pt{$^{\@thefnmark}$\hss}} 136 + \twocolumn[\@maketitle] \@thanks 137 + \endgroup 138 + % gf: Insert copyright slug unless turned off 139 + %\if T\copyright@on\insert\footins{\noindent\footnotesize\copyright@text}\fi 140 + % gf: And now back to your regular programming 141 + \setcounter{footnote}{0} 142 + \let\maketitle\relax \let\@maketitle\relax 143 + \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax} 144 + \def\@maketitle{\vbox to \titlebox{\hsize\textwidth 145 + %%% AAAI changed: 03/05/2010 146 + %%\linewidth\hsize \vskip 0.625in minus 0.125in \centering 147 + \linewidth\hsize \vskip 0.625in minus 0.125in \centering 148 + %%% END changed 149 + {\LARGE\bf \@title \par} \vskip 0.2in plus 1fil minus 0.1in 150 + {\def\and{\unskip\enspace{\rm and}\enspace}% 151 + \def\And{\end{tabular}\hss \egroup \hskip 1in plus 2fil 152 + \hbox to 0pt\bgroup\hss \begin{tabular}[t]{c}\Large\bf}% 153 + \def\AND{\end{tabular}\hss\egroup \hfil\hfil\egroup 154 + \vskip 0.25in plus 1fil minus 0.125in 155 + % hg: Changed Large to normalsize on next line 156 + \hbox to \linewidth\bgroup\normalsize \hfil\hfil 157 + \hbox to 0pt\bgroup\hss \begin{tabular}[t]{c}\Large\bf} 158 + \hbox to \linewidth\bgroup\normalsize \hfil\hfil 159 + \hbox to 0pt\bgroup\hss \begin{tabular}[t]{c}\Large\bf\@author 160 + \end{tabular}\hss\egroup 161 + \hfil\hfil\egroup} 162 + \vskip 0.3in plus 2fil minus 0.1in 163 + }} 164 + \renewenvironment{abstract}{\centerline{\bf 165 + Abstract}\vspace{0.5ex}\begin{quote}\small}{\par\end{quote}\vskip 1ex} 166 + % jsp added: 167 + \def\pubnote#1{\thispagestyle{myheadings} 168 + \pagestyle{myheadings} 169 + \markboth{#1}{#1} 170 + \setlength\headheight{10pt} \setlength\headsep{10pt} 171 + } 172 + % SECTIONS with less space 173 + \def\section{\@startsection {section}{1}{\z@}{-2.0ex plus 174 + -0.5ex minus -.2ex}{3pt plus 2pt minus 1pt}{\Large\bf\centering}} 175 + \def\subsection{\@startsection{subsection}{2}{\z@}{-2.0ex plus 176 + -0.5ex minus -.2ex}{3pt plus 2pt minus 1pt}{\large\bf\raggedright}} 177 + \def\subsubsection{\@startsection{subparagraph}{3}{\z@}{-6pt plus 178 + %%% DIEGO changed: 29/11/2009 179 + %% 2pt minus 1pt}{-1em}{\normalsize\bf}} 180 + -2pt minus -1pt}{-1em}{\normalsize\bf}} 181 + %%% END changed 182 + \setcounter{secnumdepth}{0} 183 + % add period to section (but not subsection) numbers, reduce space after 184 + %\renewcommand{\thesection} 185 + % {\arabic{section}.\hskip-0.6em} 186 + %\renewcommand{\thesubsection} 187 + % {\arabic{section}.\arabic{subsection}\hskip-0.6em} 188 + % FOOTNOTES 189 + \footnotesep 6.65pt % 190 + \skip\footins 9pt plus 4pt minus 2pt 191 + \def\footnoterule{\kern-3pt \hrule width 5pc \kern 2.6pt } 192 + \setcounter{footnote}{0} 193 + % LISTS AND PARAGRAPHS 194 + \parindent 10pt 195 + \topsep 4pt plus 1pt minus 2pt 196 + \partopsep 1pt plus 0.5pt minus 0.5pt 197 + \itemsep 2pt plus 1pt minus 0.5pt 198 + \parsep 2pt plus 1pt minus 0.5pt 199 + \leftmargin 10pt \leftmargini\leftmargin \leftmarginii 10pt 200 + \leftmarginiii 5pt \leftmarginiv 5pt \leftmarginv 5pt \leftmarginvi 5pt 201 + \labelwidth\leftmargini\advance\labelwidth-\labelsep \labelsep 5pt 202 + \def\@listi{\leftmargin\leftmargini} 203 + \def\@listii{\leftmargin\leftmarginii 204 + \labelwidth\leftmarginii\advance\labelwidth-\labelsep 205 + \topsep 2pt plus 1pt minus 0.5pt 206 + \parsep 1pt plus 0.5pt minus 0.5pt 207 + \itemsep \parsep} 208 + \def\@listiii{\leftmargin\leftmarginiii 209 + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep 210 + \topsep 1pt plus 0.5pt minus 0.5pt 211 + \parsep \z@ \partopsep 0.5pt plus 0pt minus 0.5pt 212 + \itemsep \topsep} 213 + \def\@listiv{\leftmargin\leftmarginiv 214 + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep} 215 + \def\@listv{\leftmargin\leftmarginv 216 + \labelwidth\leftmarginv\advance\labelwidth-\labelsep} 217 + \def\@listvi{\leftmargin\leftmarginvi 218 + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep} 219 + \abovedisplayskip 7pt plus2pt minus5pt% 220 + \belowdisplayskip \abovedisplayskip 221 + \abovedisplayshortskip 0pt plus3pt% 222 + \belowdisplayshortskip 4pt plus3pt minus3pt% 223 + % Less leading in most fonts (due to the narrow columns) 224 + % The choices were between 1-pt and 1.5-pt leading 225 + \def\normalsize{\@setfontsize\normalsize\@xpt{11}} % 10 point on 11 226 + \def\small{\@setfontsize\small\@ixpt{10}} % 9 point on 10 227 + \def\footnotesize{\@setfontsize\footnotesize\@ixpt{10}} % 9 point on 10 228 + \def\scriptsize{\@setfontsize\scriptsize\@viipt{10}} % 7 point on 8 229 + \def\tiny{\@setfontsize\tiny\@vipt{7}} % 6 point on 7 230 + \def\large{\@setfontsize\large\@xipt{12}} % 11 point on 12 231 + \def\Large{\@setfontsize\Large\@xiipt{14}} % 12 point on 14 232 + \def\LARGE{\@setfontsize\LARGE\@xivpt{16}} % 14 point on 16 233 + \def\huge{\@setfontsize\huge\@xviipt{20}} % 17 point on 20 234 + \def\Huge{\@setfontsize\Huge\@xxpt{23}} % 20 point on 23 235 + %%%% named style for aaai, included here for ease of use 236 + % This section implements citations for the ``named'' bibliography style, 237 + % modified for AAAI use. 238 + % This file can be modified and used in other conferences as long 239 + % as credit to the authors and supporting agencies is retained, this notice 240 + % is not changed, and further modification or reuse is not restricted. 241 + % The ``named'' bibliography style creates citations with labels like 242 + % \citeauthoryear{author-info}{year} 243 + % these labels are processed by the following commands: 244 + % \cite{keylist} 245 + % which produces citations with both author and year, 246 + % enclosed in square brackets 247 + % \shortcite{keylist} 248 + % which produces citations with year only, 249 + % enclosed in square brackets 250 + % \citeauthor{key} 251 + % which produces the author information only 252 + % \citeyear{key} 253 + % which produces the year information only 254 + \def\leftcite{(}\def\rightcite{)} 255 + \def\cite{\def\citeauthoryear##1##2{\def\@thisauthor{##1}% 256 + \ifx \@lastauthor \@thisauthor \relax \else##1 \fi ##2}\@icite} 257 + \def\shortcite{\def\citeauthoryear##1##2{##2}\@icite} 258 + \def\citeauthor{\def\citeauthoryear##1##2{##1}\@nbcite} 259 + \def\citeyear{\def\citeauthoryear##1##2{##2}\@nbcite} 260 + % internal macro for citations with () and with breaks between citations 261 + % used in \cite and \shortcite 262 + \def\@icite{\leavevmode\def\@citeseppen{-1000}% 263 + \def\@cite##1##2{\leftcite\nobreak\hskip 0in{##1\if@tempswa , ##2\fi}\rightcite}% 264 + \@ifnextchar [{\@tempswatrue\@citex}{\@tempswafalse\@citex[]}} 265 + % internal macro for citations without [] and with no breaks 266 + % used in \citeauthor and \citeyear 267 + \def\@nbcite{\leavevmode\def\@citeseppen{1000}% 268 + \def\@cite##1##2{{##1\if@tempswa , ##2\fi}}% 269 + \@ifnextchar [{\@tempswatrue\@citex}{\@tempswafalse\@citex[]}} 270 + % don't box citations, separate with ; and a space 271 + % also, make the penalty between citations a parameter, 272 + % it may be a good place to break 273 + \def\@citex[#1]#2{% 274 + \def\@lastauthor{}\def\@citea{}% 275 + \@cite{\@for\@citeb:=#2\do 276 + {\@citea\def\@citea{;\penalty\@citeseppen\ }% 277 + \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi 278 + \@ifundefined{b@\@citeb}{\def\@thisauthor{}{\bf ?}\@warning 279 + {Citation `\@citeb' on page \thepage \space undefined}}% 280 + {\csname b@\@citeb\endcsname}\let\@lastauthor\@thisauthor}}{#1}} 281 + %Ignore the key when generating the Reference section. 282 + \def\@lbibitem[#1]#2{\item\if@filesw 283 + { \def\protect##1{\string ##1\space}\immediate 284 + \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces} 285 + \def\thebibliography#1{\section*{References\@mkboth 286 + {REFERENCES}{REFERENCES}}\list 287 + {}{\labelwidth 0in\leftmargin\labelwidth 288 + %%% DIEGO removed 289 + %%\advance\leftmargin\labelsep 290 + %%% END removed 291 + %%% DIEGO changed 292 + \itemsep .01in % original 293 + %%\itemsep -.0125in % reduced space between bib entries 294 + %%% END changed 295 + } 296 + \def\newblock{\hskip .11em plus .33em minus .07em} 297 + \sloppy\clubpenalty4000\widowpenalty4000 298 + \sfcode`\.=1000\relax} 299 + \let\endthebibliography=\endlist
+263
papers/iccc-kidlisp/iccc.tex
··· 1 + % This file is iccc.tex. It contains the formatting instructions for and acts as a template for submissions to ICCC. It borrows liberally from the AAAI and IJCAI formats and instructions. It uses the files iccc.sty, iccc.bst and iccc.bib, the first two of which also borrow liberally from the same sources. The format has been updated for the ICCC2022 to include a new, mandatory section to be included in camera-ready manuscripts. 2 + 3 + 4 + \documentclass[letterpaper]{article} 5 + \usepackage{iccc} 6 + 7 + 8 + \usepackage{times} 9 + \usepackage{helvet} 10 + \usepackage{courier} 11 + \pdfinfo{ 12 + /Title (Formatting Instructions for Authors) 13 + /Subject (Proceedings of ICCC) 14 + /Author (ICCC)} 15 + % The file iccc.sty is the style file for ICCC proceedings. 16 + % 17 + \title{ICCC Formatting Instructions for Authors \\ 18 + Paper type: Technical Paper (see the CFP for paper types)} 19 + \author{Dan Ventura\\ 20 + Computer Science Department\\ 21 + Brigham Young University\\ 22 + Provo, UT 84602 USA\\ 23 + ventura@cs.byu.edu\\ 24 + } 25 + \setcounter{secnumdepth}{0} 26 + 27 + \begin{document} 28 + \maketitle 29 + \begin{abstract} 30 + \begin{quote} 31 + The {\em Proceedings of the International Conference on Computational Creativity} will be compiled from electronic manuscripts submitted by the authors. This paper provides brief style instructions that will facilitate a high-quality, consistent proceedings. 32 + \end{quote} 33 + \end{abstract} 34 + 35 + \section{Introduction} 36 + 37 + The {\it ICCC Proceedings} will be produced from electronic 38 + manuscripts submitted by the authors. These must be PDF ({\em Portable 39 + Document Format}) files formatted for 8-1/2$''$ $\times$ 11$''$ paper. 40 + 41 + Please see the conference web site 42 + (accessible from {\small \tt http://computationalcreativity.net/}) 43 + for submission instructions, including 44 + different possible paper types and their lengths. 45 + 46 + \subsection{Word Processing Software} 47 + 48 + As detailed below, ICCC has prepared and made available a set of 49 + \LaTeX{} macros and a Microsoft Word template for use in formatting 50 + your paper. If you are using some other word processing software, please follow the format instructions given below and ensure that your final paper looks as much like this sample as possible. 51 + 52 + \section{Style and Format} 53 + 54 + \LaTeX{} and Word templates that implement these instructions 55 + can be retrieved electronically at the conference web site. 56 + 57 + \subsection{Layout} 58 + 59 + Print manuscripts two columns to a page, in the manner in which these 60 + instructions are printed. The exact dimensions for pages are: 61 + \begin{itemize} 62 + \item left and right margins: 0.75$''$ 63 + \item column width: 3.375$''$ 64 + \item gap between columns: 0.25$''$ 65 + \item top margin---first page: 1.375$''$ 66 + \item top margin---other pages: 0.75$''$ 67 + \item bottom margin: 1.25$''$ 68 + \item column height---first page: 6.625$''$ 69 + \item column height---other pages: 9$''$ 70 + \end{itemize} 71 + 72 + \subsection{Format of Electronic Manuscript} 73 + 74 + For the production of the electronic manuscript, you must use Adobe's 75 + {\em Portable Document Format} (PDF). A PDF file can be generated, for 76 + instance, on Unix systems using {\tt pdflatex} 77 + (or {\tt ps2pdf} from a postscript file) or on Windows systems 78 + using Adobe's Distiller. There is also a website with free software 79 + and conversion services: {\tt http://www.ps2pdf.com/}. For reasons of 80 + uniformity, use of Adobe's {\em Times Roman} font is strongly suggested. In 81 + \LaTeX2e{}, this is accomplished by putting 82 + \begin{quote} 83 + \mbox{\tt $\backslash$usepackage\{times\}} 84 + \end{quote} 85 + in the preamble. 86 + 87 + Additionally, you must specify the American {\bf 88 + letter} format (corresponding to 8-1/2$''$ $\times$ 11$''$) when 89 + formatting the paper. 90 + 91 + \subsection{Title and Author Information} 92 + 93 + Center the title on the entire width of the page in a 15-point bold 94 + font. Below it, center the author name(s) in a 12-point bold font, and 95 + then center the address(es) in a 10-point regular font. Credit to a 96 + sponsoring agency can appear on the first page as a footnote. 97 + 98 + \subsubsection{Blind Review} 99 + 100 + ICCC may use a double blind review process where the author information 101 + must (or may) be hidden in the submissions. 102 + Please see the call for papers for instructions on possible blind reviews. 103 + 104 + \subsection{Abstract} 105 + 106 + Place the abstract at the beginning of the first column 3$''$ from the 107 + top of the page, unless that does not leave enough room for the title 108 + and author information. Use a slightly smaller width than in the body 109 + of the paper. Head the abstract with ``Abstract'' centered above the 110 + body of the abstract in a 10-point bold font. The body of the abstract 111 + should be 9-point in the same font as the body of the paper. 112 + 113 + The abstract should be a concise, one-paragraph summary describing the 114 + general thesis and conclusion of your paper. A reader should be able 115 + to learn the purpose of the paper and the reason for its importance 116 + from the abstract. As a guide, abstracts should normally be up to 250 words long. 117 + 118 + \subsection{Text} 119 + 120 + The main body of the text immediately follows the abstract. Use 121 + 10-point type in {\em Times Roman} font. 122 + 123 + Indent when starting a new paragraph, except after major headings. 124 + 125 + \subsection{Headings and Sections} 126 + 127 + When necessary, headings should be used to separate major sections of 128 + your paper. (These instructions use many headings to demonstrate their 129 + appearance; your paper should have fewer headings.) 130 + 131 + \subsubsection{Section Headings} 132 + 133 + Print section headings centered, in 12-point bold type in the style shown in 134 + these instructions. Leave a blank space of approximately 10 points 135 + above and 4 points below section headings. Do not number sections. 136 + 137 + \subsubsection{Subsection Headings} 138 + 139 + Print subsection headings left justified, in 12-point bold type. Leave a blank space 140 + of approximately 8 points above and 3 points below subsection 141 + headings. Do not number subsections. 142 + 143 + \subsubsection{Subsubsection Headings} 144 + 145 + Print subsubsection headings inline in 10-point bold type. Leave a blank 146 + space of approximately 6 points above subsubsection headings. Do not 147 + number subsubsections. 148 + 149 + \subsubsection{Special Sections} 150 + 151 + You may include an unnumbered acknowledgments section, including 152 + acknowledgments of help from colleagues, financial support, and 153 + permission to publish. 154 + 155 + Any appendices directly follow the text and look like sections. In general, appendices should 156 + be avoided in ICCC manuscripts. 157 + 158 + The references section is headed ``References,'' printed in the same 159 + style as a section heading. A sample list of 160 + references is given at the end of these instructions. Note the various examples for books, proceedings, multiple authors, etc. Use a consistent 161 + format for references, such as that provided by BiB\TeX{}. The reference 162 + list should not include unpublished work. 163 + 164 + \subsection{Citations} 165 + 166 + Citations within the text should include the author's last name and 167 + the year of publication, for example~\cite{boden92}. Append 168 + lowercase letters to the year in cases of ambiguity. Treat multiple 169 + authors as in the following examples:~\cite{lyu04} 170 + (for more than two authors) and 171 + \cite{veale07} (for two authors). If the author 172 + portion of a citation is obvious, omit it, e.g., 173 + Woods~\shortcite{Woods81}. Collapse multiple citations as 174 + follows:~\cite{UCI,Ruch07,OZ}. 175 + \emph{See below for \LaTeX{} commands for producing citations.} 176 + 177 + \subsubsection{Using \LaTeX{} and BiBTeX to Create Your References} 178 + At the end of your paper, you can include your reference list by using the following commands (which will insert a heading \textbf{References} automatically): 179 + 180 + \begin{footnotesize} 181 + \begin{verbatim} 182 + \bibliographystyle{iccc} 183 + \bibliography{bibfile1,bibfile2,...} 184 + \end{verbatim} 185 + \end{footnotesize} 186 + 187 + The list of files in the bibliography command should be the names of your BiBTeX source files (that is, the .bib files referenced in your paper). 188 + 189 + The iccc.sty file includes a set of definitions for use in formatting references with BiBTeX. These definitions make the bibliography style fairly close to the one specified previously. To use these definitions, you also need the BiBTeX style file iccc.bst available in the author kit on the ICCC web site. 190 + 191 + The following commands are available for your use in citing references: 192 + \begin{description} 193 + \item \verb+\+cite: Cites the given reference(s) with a full citation. This appears as ``(Author Year)'' for one reference, or ``(Author Year; Author Year)'' for multiple references. 194 + \item \verb+\+shortcite: Cites the given reference(s) with just the year. This appears as ``(Year)'' for one reference, or ``(Year; Year)'' for multiple references. 195 + \item \verb+\+citeauthor: Cites the given reference(s) with just the author name(s) and no parentheses. 196 + \item \verb+\+citeyear: Cites the given reference(s) with just the date(s) and no parentheses. 197 + \end{description} 198 + 199 + {\bf Warning:} The iccc.sty file is incompatible with the hyperref package. If you use it, your references will be garbled. {\it Do not use hyperref!} 200 + 201 + \subsection{Footnotes} 202 + 203 + Avoid footnotes as much as possible; they interrupt the flow of 204 + the text. 205 + Place footnotes at the bottom of the page in 9-point font. Refer to 206 + them with superscript numbers.\footnote{This is how your footnotes 207 + should appear.} Separate them from the text by a short 208 + line.\footnote{Note the line separating these footnotes from the 209 + text.} 210 + 211 + \section{Illustrations} 212 + 213 + Place all illustrations (figures, drawings, tables, and photographs) 214 + throughout the paper at the places where they are first discussed (at the bottom 215 + or top of the page), rather than at the end of the paper. If placed at the bottom or top of 216 + a page, illustrations may run across both columns. 217 + 218 + Illustrations must be rendered electronically or scanned and placed 219 + directly in your document. In most cases, it is best to render all illustrations 220 + in black and white; however, since the proceedings are produced and distributed electronically, if color 221 + is important for communicating your message, it may be included. Line weights should 222 + be 1/2-point or thicker. 223 + 224 + Number illustrations sequentially. Use references of the following 225 + form: Figure 1, Table 2, etc. Place illustration numbers and captions 226 + under illustrations. Leave a margin of 1/4-inch around the area 227 + covered by the illustration and caption. Use 9-point type for 228 + captions, labels, and other text in illustrations. 229 + 230 + \section{Author Contributions} 231 + This section should be anonymised for review. For the final camera ready version of the manuscript, use this section to describe the roles of the authors participating in this work. E.g. "Author 1 was in charge of writing the manuscript and planning the study, conducted the analysis and developed the a significant part of the tool. Author 2 and Author 3 carried out the studies with the tool and helped in data analysis, their participation was equal." Or: "All authors participated in the writing of this manuscript and are listed in alphabetical order." 232 + 233 + \section{Acknowledgments} 234 + 235 + The preparation of these instructions and the \LaTeX{} and Word files was 236 + facilitated by borrowing from similar documents used for AAAI and IJCAI proceedings. 237 + 238 + 239 + %\appendix{\LaTeX{} and Word Style Files}\label{stylefiles} 240 + 241 + %The \LaTeX{} and Word style files are available on the ICCC-13 242 + %website, {\tt http://computationalcreativity.net/iccc2013/}. 243 + %These style files implement the formatting instructions in this 244 + %document. 245 + 246 + %The \LaTeX{} files are {\tt iccc.sty} and {\tt iccc.tex}, and 247 + %the Bib\TeX{} files are {\tt iccc.bst} and {\tt iccc.bib}. The 248 + %\LaTeX{} style file is for version 2e of \LaTeX{}, and the Bib\TeX{} 249 + %style file is for version 0.99c of Bib\TeX{} ({\em not} version 250 + %0.98i). 251 + 252 + %The Microsoft Word style file consists of a single template file, {\tt 253 + %iccc.dot}. 254 + 255 + %These Microsoft Word and \LaTeX{} files contain the source of the 256 + %present document and may serve as a formatting sample. 257 + 258 + 259 + \bibliographystyle{iccc} 260 + \bibliography{iccc} 261 + 262 + 263 + \end{document}
+79
papers/iccc-kidlisp/kidlisp.bib
··· 1 + @book{boden92, 2 + author = {Margaret Boden}, 3 + title = {The Creative Mind}, 4 + publisher = {Abacus}, 5 + address = {London}, 6 + year = {1992} 7 + } 8 + 9 + @article{ritchie07, 10 + author = {Graeme Ritchie}, 11 + title = {Some Empirical Criteria for Attributing Creativity to a Computer Program}, 12 + journal = {Minds and Machines}, 13 + publisher = {Springer}, 14 + year = {2007}, 15 + pages = {76--99}, 16 + volume = {17} 17 + } 18 + 19 + @inproceedings{kantosalo16, 20 + author = {Anna Kantosalo and Hannu Toivonen}, 21 + title = {Modes for Creative Human-Computer Collaboration: {A}lternating and Task-Divided Co-Creativity}, 22 + booktitle = {Proceedings of the Seventh International Conference on Computational Creativity (ICCC)}, 23 + year = {2016}, 24 + pages = {77--84} 25 + } 26 + 27 + @inproceedings{davis15, 28 + author = {Nicholas Davis and Chih-Pin Hsiao and Kunwar Yashraj Singh and Lisa Li and Sanat Moningi and Brian Magerko}, 29 + title = {Drawing Apprentice: An Enactive Co-Creative Agent for Artistic Collaboration}, 30 + booktitle = {Proceedings of the 2015 ACM SIGCHI Conference on Creativity and Cognition}, 31 + year = {2015}, 32 + pages = {185--186}, 33 + publisher = {ACM} 34 + } 35 + 36 + @book{reas2007processing, 37 + author = {Casey Reas and Ben Fry}, 38 + title = {Processing: A Programming Handbook for Visual Designers and Artists}, 39 + publisher = {MIT Press}, 40 + year = {2007} 41 + } 42 + 43 + @misc{mccarthy2015p5js, 44 + author = {Lauren McCarthy and {Processing Foundation}}, 45 + title = {{p5.js}: A {JavaScript} Library for Creative Coding}, 46 + year = {2015}, 47 + note = {\url{https://p5js.org}} 48 + } 49 + 50 + @book{aaron2016sonic, 51 + author = {Sam Aaron}, 52 + title = {Sonic Pi: The Live Coding Music Synth for Everyone}, 53 + year = {2016}, 54 + note = {\url{https://sonic-pi.net}} 55 + } 56 + 57 + @inproceedings{roos2023strudel, 58 + author = {Felix Roos and Alex McLean}, 59 + title = {Strudel: {L}ive Coding Patterns on the Web}, 60 + booktitle = {Proceedings of the International Conference on Live Coding (ICLC)}, 61 + year = {2023} 62 + } 63 + 64 + @inproceedings{resnick2009scratch, 65 + author = {Mitchel Resnick and John Maloney and Andr{\'e}s Monroy-Hern{\'a}ndez and Natalie Rusk and Evelyn Eastmond and Karen Brennan and Amon Millner and Eric Rosenbaum and Jay Silver and Brian Silverman and Yasmin Kafai}, 66 + title = {Scratch: Programming for All}, 67 + booktitle = {Communications of the ACM}, 68 + volume = {52}, 69 + number = {11}, 70 + pages = {60--67}, 71 + year = {2009} 72 + } 73 + 74 + @misc{vanengelen2022tinylisp, 75 + author = {Robert van Engelen}, 76 + title = {tinylisp: A Lisp Interpreter in 99 Lines of {C}}, 77 + year = {2022}, 78 + note = {\url{https://github.com/Robert-van-Engelen/tinylisp}} 79 + }
papers/iccc-kidlisp/kidlisp.pdf

This is a binary file and will not be displayed.

+240
papers/iccc-kidlisp/kidlisp.tex
··· 1 + % ICCC 2026 Short Paper submission — anonymized 2 + % Adapted from arxiv-kidlisp/kidlisp.tex (6pp → 4pp) 3 + % Build: pdflatex kidlisp && bibtex kidlisp && pdflatex kidlisp && pdflatex kidlisp 4 + 5 + \documentclass[letterpaper]{article} 6 + \usepackage{iccc} 7 + 8 + \usepackage{times} 9 + \usepackage{helvet} 10 + \usepackage{courier} 11 + \usepackage{xcolor} 12 + \usepackage{booktabs} 13 + \usepackage{tabularx} 14 + \usepackage{listings} 15 + \usepackage{graphicx} 16 + \usepackage{url} 17 + 18 + \pdfinfo{ 19 + /Title (KidLisp: A Minimal DSL for Human-Machine Co-Creation of Generative Art) 20 + /Subject (Proceedings of ICCC) 21 + /Author (Anonymous)} 22 + 23 + % === CODE LISTING === 24 + \definecolor{klfn}{RGB}{0,100,140} 25 + \definecolor{klform}{RGB}{100,40,150} 26 + \definecolor{klnum}{RGB}{170,0,80} 27 + \definecolor{klstr}{RGB}{140,100,0} 28 + \definecolor{klcmt}{RGB}{110,110,110} 29 + \definecolor{klmath}{RGB}{0,110,0} 30 + \definecolor{klvar}{RGB}{180,90,0} 31 + \definecolor{klembed}{RGB}{0,110,0} 32 + \newcommand{\kn}[1]{\textcolor{klnum}{#1}} 33 + \newcommand{\kt}[1]{\textcolor{klstr}{#1}} 34 + \newcommand{\kv}[1]{\textcolor{klvar}{#1}} 35 + \newcommand{\ke}[1]{\textcolor{klembed}{\textbf{#1}}} 36 + \newcommand{\km}[1]{\textcolor{klmath}{#1}} 37 + 38 + \lstdefinelanguage{kidlisp}{ 39 + morekeywords=[1]{wipe,ink,line,box,circle,repeat,write,scroll,zoom,spin,blur,embed,layer,width,height,frame,time,wiggle,melody,mic,cube,form,trans,move,scale,random,sin,cos,floor,ceil,abs,sqrt,min,max,hop,paste,def,let,if,once,later,fade}, 40 + sensitive=true, 41 + morecomment=[l]{;}, 42 + morestring=[b]", 43 + escapeinside={|}{|}, 44 + } 45 + \lstset{ 46 + language=kidlisp, 47 + basicstyle=\ttfamily\footnotesize, 48 + keywordstyle=[1]\color{klfn}\bfseries, 49 + commentstyle=\color{klcmt}\itshape, 50 + stringstyle=\color{klstr}, 51 + breaklines=true, 52 + frame=single, 53 + rulecolor=\color{gray!35}, 54 + backgroundcolor=\color{gray!5}, 55 + xleftmargin=0.3em, 56 + xrightmargin=0.3em, 57 + aboveskip=0.3em, 58 + belowskip=0.3em, 59 + } 60 + 61 + \title{KidLisp: A Minimal DSL for Human--Machine\\Co-Creation of Generative Art \\ 62 + {\normalsize Paper type: Short Paper}} 63 + \author{Anonymous Authors} 64 + \setcounter{secnumdepth}{0} 65 + 66 + \begin{document} 67 + \maketitle 68 + 69 + \begin{abstract} 70 + \begin{quote} 71 + We describe \textsc{KidLisp}, a minimal Lisp dialect embedded in a browser-based creative computing platform, designed so that humans and large language models (LLMs) produce programs that each can read, modify, and remix. The language exposes 118 domain-specific primitives across 12 categories, has no file I/O, networking, or general string manipulation, and omits user-defined procedures. Every program receives a short alphanumeric code, is stored content-addressed, is executable at a URL, and can be embedded inside other programs as a first-class composition primitive. We report on a deployed corpus of over 16{,}000 programs by 59 authors created over twenty-two months. We argue that the constraints that make \textsc{KidLisp} tractable for novices also make it unusually legible to LLMs, and that the combination of a constrained vocabulary with social-by-default distribution produces co-creative workflows qualitatively different from those supported by general-purpose creative coding environments. 72 + \end{quote} 73 + \end{abstract} 74 + 75 + \section{Introduction} 76 + 77 + Computational creativity research increasingly treats human--machine \emph{co-creation} as a central setting~\cite{kantosalo16,davis15}: a creative system's value depends not only on what it can autonomously produce but on how well it scaffolds a human collaborator's work. Generative language models have made this question newly practical. Anyone with a chat interface can ask an LLM for a Processing sketch or a p5.js program. But two problems recur. First, general-purpose code produced by an LLM is frequently longer than the human collaborator can read, let alone modify. Second, the outputs live in isolated files on isolated machines; the collaboration does not accumulate. 78 + 79 + We describe \textsc{KidLisp}, a minimal domain-specific Lisp embedded in \textsc{Aesthetic Computer}, a browser-based creative computing platform. \textsc{KidLisp} starts from a different question than prior creative coding languages: \emph{what is the smallest language that can produce interesting generative art, and does that same minimality make it legible to an LLM?} A complete animated program can be a single line: 80 + 81 + \begin{lstlisting} 82 + (ink |\kt{rainbow}|) (repeat |\kn{100}| |\kv{i}| 83 + (circle (wiggle width) (wiggle height) |\kn{10}|)) 84 + \end{lstlisting} 85 + 86 + The language ships with 118 primitives, no user-defined procedures, no file I/O, no networking, no general string manipulation, and deterministic rendering seeded from each program's short code. Every program is stored content-addressed in a MongoDB collection, given a short code (e.g.\ \texttt{cow}), executable at \texttt{/\$cow}, and embeddable in another program via the \texttt{\$code} syntax. The platform has accumulated over 16{,}000 programs by 59 authors. 87 + 88 + We claim that \textsc{KidLisp}'s constraints---chosen originally to make a language small enough for children to learn through social participation~\cite{resnick2009scratch}---turn out to also make it a good substrate for human--LLM co-authorship: both parties produce programs the other can read. 89 + 90 + % =============================================================== 91 + \section{Language Design} 92 + 93 + \textsc{KidLisp} is an S-expression language. Each program is a sequence of expressions evaluated top-to-bottom, producing side effects on a Canvas 2D context, a WebGL context, a Web Audio graph, or some combination thereof. 94 + 95 + \subsubsection{Design principles} 96 + 97 + \begin{enumerate} 98 + \item \textbf{Every expression draws.} Valid \textsc{KidLisp} produces visible output. There is no \texttt{main}, no imports, no boilerplate. 99 + \item \textbf{Flat over deep.} Programs compose by \emph{embedding} other programs, not by defining abstractions. This keeps code readable at a glance. 100 + \item \textbf{Safe by construction.} No file I/O, no networking, no mutation of external state. Programs are sandboxed by the language's lack of dangerous primitives, so arbitrary user- or LLM-submitted code can execute without review. 101 + \item \textbf{Social by default.} Every program gets a short code and a URL. Sharing is the distribution mechanism, not an afterthought. 102 + \end{enumerate} 103 + 104 + \subsubsection{Function categories} 105 + 106 + The 118 built-ins span 12 categories (Table~\ref{tab:functions}). Each primitive has a mnemonic name and a small, positional arity. 107 + 108 + \begin{table}[h] 109 + \small 110 + \centering 111 + \begin{tabularx}{\columnwidth}{lrX} 112 + \toprule 113 + \textbf{Category} & \textbf{n} & \textbf{Examples} \\ 114 + \midrule 115 + Graphics & 9 & \texttt{wipe, ink, line, box, circle} \\ 116 + Transforms & 11 & \texttt{scroll, zoom, spin, blur, suck} \\ 117 + Math & 14 & \texttt{+, sin, cos, random, wiggle} \\ 118 + Colors & 19 & CSS names + \texttt{rainbow, zebra} \\ 119 + System & 9 & \texttt{width, height, frame, fps} \\ 120 + 3D & 8 & \texttt{cube, form, trans, move} \\ 121 + Audio & 6 & \texttt{mic, melody, overtone} \\ 122 + Control & 7 & \texttt{def, if, repeat, once, later} \\ 123 + Text & 4 & \texttt{write, type, paste} \\ 124 + Input & 3 & \texttt{pen, touch} \\ 125 + Composition & 4 & \texttt{embed, layer, fade} \\ 126 + Data & 4 & \texttt{let, list, get, set} \\ 127 + \midrule 128 + \textbf{Total} & \textbf{118} & \\ 129 + \bottomrule 130 + \end{tabularx} 131 + \caption{\textsc{KidLisp} built-in functions by category.} 132 + \label{tab:functions} 133 + \end{table} 134 + 135 + \subsubsection{Timing syntax} 136 + Temporal operators schedule evaluation without explicit loops or callbacks: 137 + \texttt{2.5s} (after 2.5s), \texttt{1s...} (every second), \texttt{3s!} (once at 3s), \texttt{30f} (after 30 frames). These compose with any expression and form the language's entire animation model. 138 + 139 + \subsubsection{Chaos mode} Invalid or random text input triggers artistic visual output rather than error messages. A confidence-scored detector examines word-recognition rate, special-character ratio, and parenthesis balance to classify input as code or chaos; chaotic input produces deterministic visuals seeded from the input. There are, effectively, no error states visible to the user---a design choice that matters for first-time users and is indirectly relevant to LLM output, which may arrive partially malformed. 140 + 141 + \subsubsection{What it omits} Recursion, user-defined functions beyond \texttt{def} for named values, string manipulation, file I/O, networking, mutable data structures, exception handling. These omissions are the design. Removing abstraction mechanisms keeps programs flat: a reader understands any program top-to-bottom without tracing a call stack. 142 + 143 + % =============================================================== 144 + \section{Storage, Composition, Distribution} 145 + 146 + Each program is stored as a document keyed by a content-addressed SHA-256 hash of its trimmed source and a short, human-meaningful code. The short code is derived from program content---extracting dominant function names, color keywords, or structural patterns---falling back to random generation when all inferred codes are taken. This produces codes like \texttt{cow} for a program with cow-like shapes rather than arbitrary alphanumeric strings. 147 + 148 + A single REST endpoint serves the corpus: POST stores a program (deduplicating by hash); GET with a code returns a single program; GET with a comma-separated list returns up to 50 programs for embedded-layer resolution during evaluation; GET with a \texttt{recent} flag paginates a feed; GET with a \texttt{stats=functions} flag returns weighted function-usage counts across the corpus. Authentication is optional with a three-second timeout so anonymous creation is always fast. 149 + 150 + \subsubsection{Embedding} The \texttt{\$code} syntax inside a program fetches that program from storage (or cache), evaluates it into an offscreen buffer, and composites the result onto the parent canvas. This creates a directed acyclic composition graph. Users build complex visuals by layering simple programs, not by writing complex single programs. 151 + 152 + \begin{lstlisting} 153 + ; A 3D cube grid with two embedded programs 154 + (wipe |\kt{black}|) 155 + (def |\kv{n}| |\kn{6}|) 156 + (repeat (|\km{*}| |\kv{n}| |\kv{n}|) |\kv{i}| 157 + (ink (hop |\kn{0.1}| |\kt{rainbow}| |\kt{blue}| |\kt{white}|)) 158 + (form (trans (cube |\kv{i}|) 159 + (move (|\km{*}| (|\km{\%}| |\kv{i}| |\kv{n}|) |\kn{3}|) |\kn{0}| |\kn{-20}|) 160 + (scale |\kn{1.5}|) (spin |\kn{0}| |\kn{1}| |\kn{0}|)))) 161 + (|\ke{\$27z}|) 162 + (|\ke{\$cow}|) 163 + \end{lstlisting} 164 + 165 + In our corpus the maximum observed embedding depth is 7 layers. 166 + 167 + % =============================================================== 168 + \section{Co-Creation with LLMs} 169 + 170 + Three properties of the language make it unusually tractable as an LLM output target. 171 + 172 + \textbf{Vocabulary is closed and small.} Any generated program draws from a fixed set of 118 primitives. An LLM-generated program with an unknown symbol is immediately flagged; there is no equivalent of silently importing a typo'd library. The constrained surface area also means the full language reference fits comfortably into an LLM's context window with room for examples. 173 + 174 + \textbf{Programs are short.} Because abstraction is unavailable, a working program is necessarily under a few dozen lines. A human collaborator can read the entire program end-to-end, change one number, and observe the result. This makes the conversation with an LLM tight: the model proposes, the human edits, the model can re-read the edited program in its next turn without losing context. 175 + 176 + \textbf{Output is safe to execute.} Lack of dangerous primitives means code produced by an LLM can be evaluated immediately in the shared browser runtime without trust decisions. The feedback loop from ``LLM produces code'' to ``human sees rendered result'' is one click; no container, no sandbox configuration, no API key. 177 + 178 + Together, these turn \textsc{KidLisp} into a shared notation for human--LLM co-creation rather than a language that an LLM writes \emph{for} a user. Users report a characteristic workflow: ask the model for a sketch; trim it; recombine it with an embedded program already in the corpus via \texttt{\$code}; save the result, which itself becomes available as a remixable building block. The corpus then grows as a library of co-authored fragments, indexed by short code. 179 + 180 + This workflow aligns with Kantosalo and Toivonen's~\shortcite{kantosalo16} characterization of co-creative systems as those that treat the human and machine as peers in the production of an artifact, and with Davis et al.~\shortcite{davis15}'s argument that the \emph{interaction design} of a co-creative system is as consequential as its generative capacity. 181 + 182 + % =============================================================== 183 + \section{Evaluation} 184 + 185 + We report deployment data collected from the live platform. 186 + 187 + \begin{table}[h] 188 + \small 189 + \centering 190 + \begin{tabular}{lr} 191 + \toprule 192 + \textbf{Metric} & \textbf{Value} \\ 193 + \midrule 194 + Total programs created & 16{,}174 \\ 195 + Unique authors & 59 \\ 196 + Programs per author (median) & 12 \\ 197 + Programs per author (top quartile)& 180+ \\ 198 + Max observed embedding depth & 7 layers \\ 199 + Platform registered users & 2{,}798 \\ 200 + Evaluator source size (lines) & 15{,}161 \\ 201 + \bottomrule 202 + \end{tabular} 203 + \caption{Adoption metrics, March 2026.} 204 + \label{tab:adoption} 205 + \end{table} 206 + 207 + \subsubsection{Function usage analytics} The \texttt{?stats=functions} endpoint scans up to 5{,}000 programs sorted by hits, parses each source to extract function calls, and returns counts weighted by program popularity. The most-used functions are \texttt{wipe}, \texttt{ink}, \texttt{repeat}, and \texttt{circle}---confirming that drawing and iteration, rather than the more elaborate transforms and composition primitives, anchor most practice. Boden's~\shortcite{boden92} distinction between \emph{exploratory} and \emph{transformational} creativity is visible in the corpus: most programs sit in the exploratory region (recombinations of common primitives), with rarer transformational work appearing at the embedding frontier, where users compose previously unrelated programs via \texttt{\$code}. 208 + 209 + \subsubsection{Observations} 210 + \textbf{Composition over abstraction.} Users embed rather than abstract. The most-referenced programs are simple visual primitives (gradients, shapes, patterns) that serve as building blocks. 211 + \textbf{Exploration over engineering.} Programs are typically under ten lines. Users iterate by saving new programs rather than editing existing ones, creating divergent exploration paths visible in the storage timestamps. 212 + \textbf{Social learning.} The most prolific authors began by viewing and remixing existing programs; the short-code system makes discovery accidental. 213 + 214 + Following Ritchie's~\shortcite{ritchie07} empirical criteria, the system exhibits high \emph{quantity} and measurable \emph{novelty}---each short-code-keyed program is, by content-addressed construction, distinct from every other---while \emph{quality} is harder to assess automatically and is left to the social signal of the \texttt{hits} counter. 215 + 216 + % =============================================================== 217 + \section{Related Work} 218 + 219 + \textbf{Creative coding.} Processing~\cite{reas2007processing} and p5.js~\cite{mccarthy2015p5js} are the dominant tools; Sonic Pi~\cite{aaron2016sonic} targets live musical coding. All require managing a project structure and a general-purpose language. 220 + 221 + \textbf{Live coding and the browser.} Hydra provides browser-based live visual coding via JavaScript method chaining but without persistent corpus or social infrastructure. Strudel~\cite{roos2023strudel} brings TidalCycles-style pattern coding to the browser; like \textsc{KidLisp}, it is installation-free, but it targets rhythmic pattern composition rather than generative visual art. 222 + 223 + \textbf{Educational languages.} Scratch~\cite{resnick2009scratch} demonstrated that social sharing drives engagement in educational programming. \textsc{KidLisp} inherits this insight but uses text-based Lisp syntax and deliberately positions LLMs as a first-class peer in authoring. 224 + 225 + \textbf{Minimal Lisp implementations.} Van Engelen~\cite{vanengelen2022tinylisp} showed a usable Lisp in 99 lines of C. \textsc{KidLisp}'s evaluator is considerably larger (15{,}161 lines) because the bulk of the code implements drawing, audio, and composition primitives rather than Lisp semantics. 226 + 227 + \textbf{Co-creative systems.} Davis et al.~\shortcite{davis15} and Kantosalo and Toivonen~\shortcite{kantosalo16} frame creativity support as a design problem in interaction between human and machine agents; our contribution reads as an argument for minimal DSLs as a particularly tractable substrate for that interaction under modern LLM capabilities. 228 + 229 + % =============================================================== 230 + \section{Conclusion} 231 + 232 + A minimal, browser-native, content-addressed DSL supports a productive community of generative-art practitioners and, as a side effect of the same constraints, an unusually tractable human--LLM co-creation loop. The language's 118-primitive vocabulary fits in a model context window; its syntactic flatness keeps programs human-readable end-to-end; its lack of dangerous primitives makes generated code safe to execute without sandboxing decisions. The resulting corpus---over 16{,}000 timestamped, attributed programs with an explicit composition graph---is, in addition to an artwork platform, a dataset for studying how non-expert users and LLMs jointly converge on creative output. 233 + 234 + \section{Author Contributions} 235 + [Anonymised for review.] 236 + 237 + \bibliographystyle{iccc} 238 + \bibliography{kidlisp} 239 + 240 + \end{document}