Knowledge

Live coding

Source đź“ť

202:. Republic is built into the SuperCollider language, and allows participants to collaboratively write live code that is distributed across the network of computers. There are similar efforts in other languages, such as the distributed tuple space used in the Impromptu language. Additionally Overtone, Impromptu and Extempore support multi-user sessions, in which any number of programmers can intervene across the network in a given runtime process. The practice of writing code in group can be done in the same room through a local network or from remote places accessing a common server. Terms like laptop band, laptop orchestra, collaborative live coding or collective live coding are used to frame a networked live coding practice both in a local or remote way. 113:. Typically, the process of writing source code is made visible by projecting the computer screen in the audience space, with ways of visualising the code an area of active research. Live coding techniques are also employed outside of performance, such as in producing sound for film or audiovisual work for interactive art installations. Also, the interconnection between computers makes possible to realize this practice networked in group. 38: 222:
A number of research projects and research groups have been created to explore live coding, often taking interdisciplinary approaches bridging the humanities and sciences. First efforts to both develop live coding systems and embed the emerging field in the broader theoretical context happened in the
210:
TOPLAP (The (Temporary|Transnational|Terrestrial|Transdimensional) Organisation for the (Promotion|Proliferation|Permanence|Purity) of Live (Algorithm|Audio|Art|Artistic) Programming) is an informal organization formed in February 2004 to bring together the various communities that had formed around
162:
programming environment. Technical elements within a programming environment continue to locate compressors and recursion solutions, but timing had been a major issue. While the general form of a temporal recursion, being any asynchronous function recursion through time, is available to any event
143:
The specific affordances of time-based media and live interaction with code has led to a number of novel developments and uses in programming language design. Through mutual embedding of imperative and declarative subsystems, the programming language
43: 42: 40: 44: 589:
Julian Rohrhuber, Alberto de Campo, and Renate Wieser (2005), Algorithms today - Notes on Language Design for Just In Time Programming, Proceedings of International Computer Music Conference (Barcelona), ICMC, 2005, pp.
41: 163:
driven system, Impromptu has placed a special emphasis on this particular design pattern, making it the centre piece of the concurrency architecture on that platform. Temporal recursion had repeatedly been used in
120:
is who performs the act of live coding, usually "artists who want to learn to code, and coders who want to express themselves" or in terms of Wang & Cook the "programmer/performer/composer".
415:
Alan Blackwell, Alex McLean, James Noble, Jochen Otto, and Julian Rohrhuber, "Collaboration and learning through live coding (Dagstuhl Seminar 13382)", Dagstuhl Reports 3 (2014), no. 9, 130–168.
123:
Live coding is also an increasingly popular technique in programming-related lectures and conference presentations, and has been described as a "best practice" for computer science lectures by
234:
for two years from February 2014, supporting a range of activities including symposia, workshops and an annual international conference called International Conference on Live Coding (ICLC).
211:
live coding environments. The TOPLAP manifesto asserts several requirements for a TOPLAP compliant performance, in particular that performers' screens should be projected and not hidden.
560: 39: 214:
On-the-fly promotes live coding practice since 2020. This is a project co-funded by the Creative European program and run in Hangar, ZKM, Ljudmila and Creative Code Utrecht.
462: 696:
Impromptu : an interactive programming environment for composition and performance, In proceedings of the Australasian Computer Music Conference 2005
538: 155:
language introduced an approach to "strongly timed" programming in 2002, embedding precision timing into control flow through a concise syntax.
633: 833: 354:—academic and artistic conference on advances in music technology, sometimes featuring live coding performances and research presentations 665: 264: 756: 459: 231: 269: 159: 52: 922: 516: 148:
permitted to build a library that allows incomplete and provisional specifications which can be rewritten at runtime.
497: 259: 168: 862: 224: 183: 601:
Programming With Time: Cyberphysical Programming In Impromptu, In proceedings of the ACM Splash Conference 2010
294: 194:
Multi-user programming has developed in the context of group music-making, through the long development of the
912: 867: 616:
In proceedings of the 2nd ACM SIGPLAN International Workshop on Functional Art, Music, Modelling and Design
897: 706:
Ward, A., Rohrhuber, J., Olofsson, F., McLean, A., Griffiths, D., Collins, N., and Alexander, A. (2004).
372: 399: 614: 561:"What students get wrong when building computational physics models in Python: Cabellero thesis part 2" 17: 182:, which represents patterns as combinators operating over functions of time, similar to techniques in 822:.” Critical Code Studies Workshop, March 2010. A short film on live coding and the TOPLAP manifesto. 179: 580:
James McCartney (1996), SuperCollider: a new real time synthesis language, ICMC Proceedings, 1996.
499:
Artificial, Natural, Historical in Transdisciplinary Digital Art. Sound, Vision and the New Screen
907: 345: 339: 110: 90: 31: 404:
Proceedings of the 2004 International Conference on New Interfaces for Musical Expression (NIME)
812: 790: 223:
research project Artistic Interactivity in Hybrid Networks from 2005 to 2008, funded by the
135:
A range of techniques have been developed and appropriated for the purposes of live coding.
917: 887: 826: 254: 82: 8: 902: 613:
McLean, Alex (2014). "Making programming languages to dance to: Live Coding with Tidal".
600: 425: 801: 707: 662: 342:—the practice of building software as a way to understand its requirements and structure 627: 309: 175: 892: 768: 661:
Rohrhuber, J., A. de Campo, R. Wieser, J.-K. van Kampen, E. Ho, and H. Hölzl (2007).
330:—event where music and/or visuals are generated from algorithms, generally live coded 438: 682: 380: 710:. In Goriunova, O. and Shulgin, A., editors, read_me - Software Art and Cultures. 669: 466: 78: 279: 106: 844: 483: 384: 881: 304: 164: 145: 98: 94: 124: 174:
Another functional approach to the representation of time is shown in the
708:
Live algorithm programming and a temporary organisation for its promotion
86: 539:"Live coding brings programming to life - an interview with Alex McLean" 400:"On-the-fly Programming: Using Code as an Expressive Musical Instrument" 815:." "Computer Music Journal" Spring 2014, Vol. 38, No. 1, pp. 8–16. 333: 315: 289: 158:"Temporal recursion" was a term initially coined in relation to the 720: 695: 327: 299: 274: 348:—programming practice of using live coding in software development 685:. In Proceedings of International Computer Music Conference 2010. 428:. In Live 2013. First International Workshop on Live Programming. 845:
Proceedings of the First International Conference on Live Coding
827:
Programming With Time: Cyber-physical programming with Impromptu
482:
McLean, A., Griffiths, D., Collins, N., and Wiggins, G. (2010).
371:
Collins, N., McLean, A., Rohrhuber, J. & Ward, A. (2003), "
249: 230:
Further, the Live Coding Research Network was funded by the UK
97:
way. Live coding is often used to create sound and image based
284: 244: 198:
system developed and employed by members of the network band
152: 109:
usually as improvisation, although it could be combined with
102: 74:, makes programming an integral part of the running program. 819: 517:"Communion by Universal Everything and Field.io: interview" 426:
The Threnoscope. A Musical Work for Live Coding Performance
351: 336:—subculture around coding audiovisual presentations (demos) 189: 872: 738: 648: 138: 683:
A distributed memory for networked livecoding performance
486:. In Electronic Visualisation and the Arts London 2010. 237: 857: 27:
Integration of programming as part of running program
755:"Artistic Interactivity in Hybrid Networks" (2016) 672:. In Music in the Global Village Conference 2007. 879: 105:and poetry, though is particularly prevalent in 813:Herding Cats: Observing Live Coding in the Wild 505:. Springer Berlin Heidelberg. pp. 60–70. 838:Contenido. Arte, Cultura y Ciencias Sociales 820:Algorithms are Thoughts, Chainsaws are Tools 834:Live coding. Arte computacional en proceso 632:: CS1 maint: location missing publisher ( 663:Purloined letters and distributed persons 495: 190:Multi-user programming and shared memory 51:is a musical live coding performance in 36: 873:International Conference on Live Coding 558: 460:Generative Music and Laptop Performance 139:Representation and manipulation of time 101:, as well as light systems, improvised 14: 880: 646: 612: 394: 392: 167:and has since been implemented in the 825:Sorensen, Andrew and Henry Gardner. “ 599:Sorensen, A & Gardner, H (2010) " 439:"Tech Know: Programming, meet music" 238:Examples of live coding environments 232:Arts and Humanities Research Council 389: 24: 783: 25: 934: 863:/*vivo*/ symposium on live coding 851: 373:Live Coding in Laptop Performance 536: 205: 761: 749: 731: 713: 700: 688: 675: 655: 640: 606: 593: 583: 574: 552: 530: 184:functional reactive programming 509: 489: 476: 452: 431: 418: 409: 365: 13: 1: 559:Guzdial, Mark (August 2011). 398:Wang G. & Cook P. (2004) 358: 130: 840:2015, Vol. 5, pp. 5–19. 85:centred upon the writing of 7: 758:--- Wayback Machine archive 647:McLean, Alex (2013-08-02). 321: 217: 62:, sometimes referred to as 10: 939: 868:Live Code Research Network 496:Rohrhuber, Julian (2008). 484:Visualisation of live code 225:German Research Foundation 77:It is most prominent as a 72:conversational programming 29: 923:User interface techniques 471:Contemporary Music Review 385:10.1017/S135577180300030X 832:Di PrĂłspero, Carolina. " 68:just in time programming 30:Not to be confused with 858:Official TOPLAP website 797:(online), 7 March 2006. 406:(New York: NIME, 2004). 346:Interactive programming 340:Exploratory programming 111:algorithmic composition 91:interactive programming 32:Interactive programming 441:. BBC News. 2009-08-28 424:Magnusson, T. (2013). 64:on-the-fly programming 56: 829:.” 22 September 2010. 769:"Live Coding Network" 739:"On-the-flly project" 694:Sorensen, A. (2005). 681:Sorensen, A. (2010). 47: 913:Computer programming 808:9/6 (December 2006). 458:Collins, N. (2003) " 200:PowerBooks Unplugged 83:creativity technique 55:by Andrew Sorensen. 898:Experimental music 818:Ramsay, Stephen. “ 811:Magnusson, Thor. " 800:Brown, Andrew R. “ 791:Real DJs Code Live 789:Andrews, Robert. “ 668:2016-03-03 at the 465:2014-05-14 at the 57: 45: 16:(Redirected from 930: 777: 776: 765: 759: 753: 747: 746: 735: 729: 728: 721:"ManifestoDraft" 717: 711: 704: 698: 692: 686: 679: 673: 659: 653: 652: 649:"Tidal homepage" 644: 638: 637: 631: 623: 621: 610: 604: 597: 591: 587: 581: 578: 572: 571: 569: 567: 556: 550: 549: 547: 545: 534: 528: 527: 525: 523: 513: 507: 506: 504: 493: 487: 480: 474: 456: 450: 449: 447: 446: 435: 429: 422: 416: 413: 407: 396: 387: 369: 49:A Study in Keith 46: 21: 938: 937: 933: 932: 931: 929: 928: 927: 878: 877: 854: 786: 784:Further reading 781: 780: 767: 766: 762: 754: 750: 737: 736: 732: 719: 718: 714: 705: 701: 693: 689: 680: 676: 670:Wayback Machine 660: 656: 645: 641: 625: 624: 619: 611: 607: 598: 594: 588: 584: 579: 575: 565: 563: 557: 553: 543: 541: 535: 531: 521: 519: 515: 514: 510: 502: 494: 490: 481: 477: 467:Wayback Machine 457: 453: 444: 442: 437: 436: 432: 423: 419: 414: 410: 397: 390: 377:Organised Sound 370: 366: 361: 324: 319: 240: 220: 208: 192: 141: 133: 89:and the use of 79:performing arts 37: 35: 28: 23: 22: 15: 12: 11: 5: 936: 926: 925: 920: 915: 910: 908:Computer music 905: 900: 895: 890: 876: 875: 870: 865: 860: 853: 852:External links 850: 849: 848: 841: 830: 823: 816: 809: 798: 785: 782: 779: 778: 760: 748: 743:onthefly.space 730: 712: 699: 687: 674: 654: 639: 605: 592: 582: 573: 551: 529: 508: 488: 475: 451: 430: 417: 408: 388: 379:8(3): 321–30. 363: 362: 360: 357: 356: 355: 349: 343: 337: 331: 323: 320: 318: 317: 312: 307: 302: 297: 292: 287: 282: 277: 272: 267: 262: 257: 252: 247: 241: 239: 236: 219: 216: 207: 204: 191: 188: 140: 137: 132: 129: 116:The figure of 107:computer music 26: 9: 6: 4: 3: 2: 935: 924: 921: 919: 916: 914: 911: 909: 906: 904: 901: 899: 896: 894: 891: 889: 886: 885: 883: 874: 871: 869: 866: 864: 861: 859: 856: 855: 847:." Leeds, UK. 846: 842: 839: 835: 831: 828: 824: 821: 817: 814: 810: 807: 803: 799: 796: 792: 788: 787: 774: 770: 764: 757: 752: 744: 740: 734: 726: 722: 716: 709: 703: 697: 691: 684: 678: 671: 667: 664: 658: 650: 643: 635: 629: 622:. Gothenburg. 618: 617: 609: 602: 596: 586: 577: 562: 555: 540: 537:Bell, Sarah. 533: 518: 512: 501: 500: 492: 485: 479: 472: 468: 464: 461: 455: 440: 434: 427: 421: 412: 405: 401: 395: 393: 386: 382: 378: 374: 368: 364: 353: 350: 347: 344: 341: 338: 335: 332: 329: 326: 325: 316: 313: 311: 308: 306: 305:SuperCollider 303: 301: 298: 296: 293: 291: 288: 286: 283: 281: 278: 276: 273: 271: 268: 266: 263: 261: 258: 256: 253: 251: 248: 246: 243: 242: 235: 233: 228: 226: 215: 212: 206:Organizations 203: 201: 197: 187: 185: 181: 177: 172: 171:environment. 170: 166: 165:SuperCollider 161: 156: 154: 149: 147: 146:SuperCollider 136: 128: 126: 121: 119: 114: 112: 108: 104: 100: 99:digital media 96: 92: 88: 84: 80: 75: 73: 69: 65: 61: 54: 50: 33: 19: 843:ICLC 2015. " 837: 805: 802:Code Jamming 794: 773:Gtr.ukri.org 772: 763: 751: 742: 733: 724: 715: 702: 690: 677: 657: 642: 615: 608: 595: 585: 576: 564:. Retrieved 554: 542:. Retrieved 532: 520:. Retrieved 511: 498: 491: 478: 473:22(4):67–79. 470: 454: 443:. Retrieved 433: 420: 411: 403: 376: 367: 229: 221: 213: 209: 199: 195: 193: 173: 157: 150: 142: 134: 125:Mark Guzdial 122: 117: 115: 76: 71: 67: 63: 59: 58: 48: 918:Digital art 888:Live coding 806:M/C Journal 310:TidalCycles 87:source code 81:form and a 60:Live coding 903:Live music 882:Categories 725:Toplap.org 566:5 February 522:5 February 445:2010-03-25 359:References 131:Techniques 118:live coder 95:improvised 18:Livecoding 628:cite book 334:Demoscene 290:Pure Data 270:Impromptu 255:Extempore 160:Impromptu 53:Impromptu 893:Algorave 666:Archived 590:455–458. 463:Archived 328:Algorave 322:See also 314:Sardine 300:Sonic Pi 275:ixi lang 218:Research 196:Republic 178:pattern 544:2 March 295:Scratch 265:Glicol 260:Fluxus 250:Csound 169:Fluxus 93:in an 795:Wired 620:(PDF) 503:(PDF) 402:, In 285:Pharo 245:ChucK 176:Tidal 153:ChucK 103:dance 634:link 568:2013 546:2016 524:2013 352:NIME 151:The 70:and 836:." 804:.” 793:.” 469:", 381:doi 375:", 280:Max 180:DSL 884:: 771:. 741:. 723:. 630:}} 626:{{ 391:^ 227:. 186:. 127:. 66:, 775:. 745:. 727:. 651:. 636:) 603:" 570:. 548:. 526:. 448:. 383:: 34:. 20:)

Index

Livecoding
Interactive programming
Impromptu
performing arts
creativity technique
source code
interactive programming
improvised
digital media
dance
computer music
algorithmic composition
Mark Guzdial
SuperCollider
ChucK
Impromptu
SuperCollider
Fluxus
Tidal
DSL
functional reactive programming
German Research Foundation
Arts and Humanities Research Council
ChucK
Csound
Extempore
Fluxus
Glicol
Impromptu
ixi lang

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑