skip to main content
10.1145/1176617.1176631acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
Article

JDA: a step towards large-scale reuse on the web

Published: 22 October 2006 Publication History

Abstract

The Web is maturing as a rich application development platform, and efforts are being made to provide richer and more dynamic interactions using JavaScript. JavaScript-based Web applications such as Google Maps have gained extra attention because they can be easily included in HTML for reuse. Unfortunately, various technical hurdles have made it difficult for JavaScript reuse to extend beyond its current state. Furthermore, JavaScript reuse is still out of reach for a large portion of the Web user base unversed in the use of programming languages.In this paper, we dive deeper into our previous work on the JavaScript Dataflow Architecture (JDA). JDA is intended for Web client applications written using HTML and JavaScript. We discuss the ways in which the architecture addresses many of the hurdles that modern Web client applications face in the realm of large-scale reuse and remixing. JDA aims to provide an ecosystem comprised of black box components operating within a JavaScript-based asynchronous message-passing environment. The environment allows you to use simple HTML to assemble Web applications from JavaScript black boxes scattered around the World Wide Web. No programming skill is required in their assembly, and no plug-ins or applets are required for their execution. Furthermore, the architecture extends the black box metaphor beyond the boundaries of JavaScript and allows multiple JavaScript components contained within an HTML file to be reused as a whole.A detailed account of an early prototype is discussed, and research is being done to improve it. JDA suggests that large-scale reuse and arbitrary remixing of Web applications can be realized using currently existing technologies.

References

[1]
http://www.e-janco.com/browser.htm
[2]
Damith C. Rajapakse, Stan Jarzabek. An Investigation of Cloning in Web Applications. In Proceedings of WWW'05 (Chiba, Japan) ACM Press 924--925
[3]
http://backbase.com
[4]
http://dojotoolkit.org
[5]
http://developer.yahoo.net/yui/
[6]
http://en.wikipedia.org/wiki/Mashup_28web_application_hybrid29
[7]
Shirley V. Browne, James W. Moore, Reuse Library Interoperability and the World Wide Web. In Proceedings of SIGSOFT'97 (Boston, MA, 1997) ACM Press 182--189
[8]
http://dynapi.sf.net
[9]
Seung Chan Lim, JavaScript Devices Architecture: Building Extensible Rich Web Applications Using Black Box Composition. In Proceedings of WTAS'05 (Calgary, AB, Canada) ACTA Press 1--6
[10]
Gamma, E., Helm, R., Johnson R., Vlissides J., Design Patterns: Elements of Reusable Object-Oriented Software. Addisson Wesely. 1994
[11]
Software Reuse and Re-engineering http://frakes.cs.vt.edu/5744pdf/reuse.pdf
[12]
Jones M., Rashid R., Mach and Matchmaker: Kernel and Language Support for Object-Oriented Distributed Systems. In Proceedings of OOPSLA'86 (Portland, Oregon, 1986) ACM Press 67--77
[13]
Agha Gul, Foundational Issues in Concurrent Computing. In Proceedings of the SIGPLAN'88 (San Diego, CA, 1988)
[14]
Hewitt C., Bishop P., Greif I., Smith. B., Matson T., Steiger R., Actor Induction and Meta-Evaluation. In Proceedings of SIGPLAN'73 (Boston, MA, 1973) ACM Press, 153--168
[15]
Krishnamurth S., Fellesen M., Toward a Formal Theory of Extensible Software. In Proceedings of SIGSOFT'98 (lake Buena Vista, FL, 1998) ACM Press, 88--98
[16]
Standardization in Technology-Based Markets Gregory Tassey Senior Economist National Institute of Standards and Technology June 1999
[17]
Szyperski C., Gruntz, D., and Murer, S. Component Software: Beyond Object-Oriented Programming. ACM Press, Addison Wesley 2002
[18]
Ward, S. A. and Halstead, R. H. 1980. A Syntactic Theory of Message Passing. J. ACM 27, 2 (Apr. 1980), 365--383.
[19]
Schlichting, R. D. and Schneider, F. B. 1982. Understanding and using asynchronous message passing (Preliminary Version). In Proceedings of the First ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing (Ottawa, Canada, August 18 - 20, 1982). PODC '82. ACM Press, New York, NY, 141--147.
[20]
http://www.microsoft.com/com/
[21]
http://www.corba.org/
[22]
Silc, J., Robic, B., and Ungerer, T. 1998. Asynchrony in parallel computing: from dataflow to multithreading. Parallel Distrib. Comput. Pract. 1, 1, 3--30
[23]
Simon, Herbert. The Sciences of the Artificial. MIT Press 1998
[24]
Raymond, Eric The Art of UNIX Programming. Addison Wesley. 2003
[25]
DesJardins, R. 1981. Overview and status of the ISO reference model of open systems interconnection. SIGCOMM Comput. Commun. Rev. 11, 2 (Apr. 1981), 10--14.
[26]
Lee, B. and Hurson, A. R. 1993. Issues in dataflow computing. Adv. in Comput. 37, 285--333.
[27]
Sarkar V., Hennessy J., Partitioning Parallel Programs for Macro-Dataflow. In Proceedings of LFP'86 (Cambridge, MA, 1986) ACM Press 202--211
[28]
http://www.sun.com/software/jxta/
[29]
The Open Group, DCE 1.1: Remote Procedure Call. CAE Specification C706, The Open Group, Cambridge, MA 1997
[30]
Friedrich Steinmann, Thomas Kühne, Coding for the Code. ACM Queue, Vol. 3 No. 10. ACM, Dec/Jan 2005-6.
[31]
http://openjsan.org/
[32]
http://bennolan.com/behaviour/
[33]
http://www.xmlrpc.com/
[34]
http://www.json.org/
[35]
Dahofy E. M., Hoek A., Taylor R. N., An Infrastructure for the Rapid Development of XML-Based Architecture Description Language. In Proceedings of ICSE'02 (Orlando, FL, 2002) ACM Press, 266--276.
[36]
http://djslim.com/hrb/
[37]
http://www.xml.com/pub/a/2005/12/21/json-dynamic-script-tag.html
[38]
http://java.sun.com/products/ejb/
[39]
http://www.w3.org/2002/ws/
[40]
Garlan D., Monroe R., and Wile D. ACME: An Architecture Description Interchange Language Conger. In Proceedings of CASCON'97 (Toronto, Ontario, Canada, 1997) IBM Press, 7--21
[41]
Dahofy E. M., Hoek A., Taylor R. N., An Infrastructure for the Rapid Development of XML-Based Architecture Description Language. In Proceedings of ICSE'02 (Orlando, FL, 2002) ACM Press, 266--276.
[42]
Martin Gaedke, Jorn Rehse, Supporting compositional reuse in component-based Web engineering. In proceedings of SIGAPP'00 (Como, Italy, 2000) ACM Press, 927--933
[43]
DeRemer F., Kron H., Programming-in-the-Large Versus Programming-in-the-Small. In Proceedings of ICRS'75 (Los Angeles, CA, 1975) ACM Press, 114--121
[44]
Arvind, Kathail, V., Pingali, K. A datafiow architecture with tagged tokens. Tech. Memo. 174, Laboratory for Computer Science, MIT, Cambridge, Mass. 1983
[45]
Daivs, A. L., Keller, R.M. Data Flow Program Graphs. IEEE Computer 15, 2, 26--41. 1982.
[46]
Dennis, J. B., Misunas, D. P., A Preliminary Architecture for a Basic Data-Flow Processor. In Proceedings of the Second Annual Symposium on Computer Architecture. 126--132. 1975.
[47]
Karp, R., Miller, R., Properties of a Model for Parallel Computations: Determinacy, Termination, Queueing. SIAM J. 14, 1390--1411. 1966
[48]
http://bindows.net/
[49]
http://beta.asp.net/default.aspx?tabindex7&tabid47
[50]
http://prototype.conio.net/
[51]
http://www.maya.com/web/what/papers/maya_trillion_node_network.pdf
[52]
http://www.maya.com/web/what/papers/maya_universal_database.pdf
[53]
Johnston, W. M., Hanna, J. P., and Millar, R. J. 2004. Advances in dataflow programming languages. ACM Comput. Surv. 36, 1 (Mar. 2004), 1--34.

Cited By

View all
  • (2014)EUKLASProceedings of the 5th Workshop on Evaluation and Usability of Programming Languages and Tools10.1145/2688204.2688208(13-20)Online publication date: 21-Oct-2014
  • (2007)Application of visual programming to web mash up developmentProceedings of the 12th international conference on Human-computer interaction: interaction design and usability10.5555/1772490.1772618(1139-1148)Online publication date: 22-Jul-2007
  • (2007)Intel Mash MakerACM SIGMOD Record10.1145/1361348.136135536:4(27-33)Online publication date: 1-Dec-2007
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
OOPSLA '06: Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications
October 2006
530 pages
ISBN:159593491X
DOI:10.1145/1176617
  • General Chair:
  • Peri Tarr,
  • Program Chair:
  • William R. Cook
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 October 2006

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. JavaScript
  2. black box reuse
  3. composition
  4. dataflow architecture
  5. information devices architecture
  6. rich web application
  7. web engineering

Qualifiers

  • Article

Conference

OOPSLA06
Sponsor:

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)4
  • Downloads (Last 6 weeks)0
Reflects downloads up to 16 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2014)EUKLASProceedings of the 5th Workshop on Evaluation and Usability of Programming Languages and Tools10.1145/2688204.2688208(13-20)Online publication date: 21-Oct-2014
  • (2007)Application of visual programming to web mash up developmentProceedings of the 12th international conference on Human-computer interaction: interaction design and usability10.5555/1772490.1772618(1139-1148)Online publication date: 22-Jul-2007
  • (2007)Intel Mash MakerACM SIGMOD Record10.1145/1361348.136135536:4(27-33)Online publication date: 1-Dec-2007
  • (2007)User-friendly functional programming for web mashupsACM SIGPLAN Notices10.1145/1291220.129118742:9(223-234)Online publication date: 1-Oct-2007
  • (2007)User-friendly functional programming for web mashupsProceedings of the 12th ACM SIGPLAN international conference on Functional programming10.1145/1291151.1291187(223-234)Online publication date: 3-Oct-2007
  • (2007)Application of Visual Programming to Web Mash Up DevelopmentHuman-Computer Interaction. Interaction Design and Usability10.1007/978-3-540-73105-4_124(1139-1148)Online publication date: 2007

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media