Aranea—Web Framework Construction and Integration Kit

Total Page:16

File Type:pdf, Size:1020Kb

Aranea—Web Framework Construction and Integration Kit Aranea—Web Framework Construction and Integration Kit Oleg Murk¨ Jevgeni Kabanov Dept. of Computer Science and Engineering, Dept. of Computer Science, Chalmers University of Technology, University of Tartu, SE-412 96 Goteborg,¨ Sweden J. Liivi 2, EE-50409 Tartu, Estonia [email protected] [email protected] ABSTRACT proaches and ideas are tried out. Indeed, many very good Currently there exist dozens of web controller frameworks ideas have been proposed during these years, many of which that are incompatible, but at the same time have large por- we will describe later in this paper. On a longer time- tions of overlapping functionality that is implemented over scale the stronger (or better marketed) frameworks and ap- and over again. Web programmers are facing limitations on proaches will survive, the weaker will diminish. However, in code reuse, application and framework integration, extensi- our opinion, such situation also has a lot of disadvantages. bility, expressiveness of programming model and productiv- 1.1 Problem Description ity. In this paper we propose a minimalistic component model First of all let’s consider the problems of the web frame- Aranea that is aimed at constructing and integrating server- work ecosystem from the viewpoint of application develop- side web controller frameworks in Java. It allows assembling ment. Framework user population is very fragmented as a most of available web programming models out of reusable result of having many incompatible frameworks with simi- components and patterns. We also show how to integrate lar programming models. Each company or even project, is different existing frameworks using Aranea as a common using a different web framework, which requires learning a protocol. In its default configuration Aranea supports both different skill set. As a result, it is hard to find qualified developing sophisticated user interfaces using stateful com- work force for a given web framework. For the same reason ponents and nested processes as well as high-performance it is even harder to reuse previously developed application stateless components. code. We propose to use this model as a platform for frame- Moreover, it is sometimes useful to write different parts work development, integration and research. This would of the same application using different approaches, which allow combining different ideas and avoid reimplementing might prove impossible, as the supporting frameworks are the same features repeatedly. An open source implementa- incompatible. Portal solutions that should facilitate in- tion of Aranea framework together with reusable controls, tegrating disparate applications provide very limited ways such as input forms and data lists, and a rendering engine for components to communicate with each other. Finally, are ready for real-life applications. frameworks are often poorly designed, limiting expressive- ness, productivity and quality. System programmers face additional challenges. Creators 1. INTRODUCTION of reusable components have to target one particular frame- During the last 10 years we have witnessed immense ac- work, consequently their market shrinks. Framework de- tivity in the area of web framework design. Currently, signers implement overlapping features over and over again, there are more than 30 actively developed open source web with each new feature added to each framework separately. frameworks in Java [10], let alone commercial products or Many useful ideas cannot be used together because they other platforms like .NET and numerous dynamic languages. have been implemented in different frameworks. Not to mention in-house corporate frameworks that never We think that web framework market would win a lot if saw public light. Many different and incompatible design there were two or three popular platforms with orthogonal philosophies are used, but even within one approach there philosophies that would consolidate proponents of their ap- are multiple frameworks that have small implementation dif- proach. Application programmers would not have to learn a ferences and are consequently incompatible with each other. new web framework at the beginning of each project. Writ- The advantage of such a situation is that different ap- ing reusable components and application integration would be easier and more rewarding. Framework designers could try out new ideas much easier by writing extensions to the platform and targeting a large potential user-base. 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 1.2 Contributions not made or distributed for profit or commercial advantage and that copies In this paper we will describe a component framework bear this notice and the full citation on the first page. To copy otherwise, to that we named Aranea. Aranea is written in Java and al- republish, to post on servers or to redistribute to lists, requires prior specific lows assembling server-side controller web frameworks out permission and/or a fee. PPPJ 2006, August 30–September 1, 2006, Mannheim, Germany. of reusable components and patterns. Aranea applications Copyright 2006 ACM ...$5.00. are pure Java and can be written without any static con- 1 different implementation and is more general in terms of where sequential programming can be applied. This topic is discussed in Section 7.1 as one of extensions. All web frameworks have to handle such aspects as con- figuration, security, error handling and concurrency. We explain how Aranea handles these issues in Section 5. One of the most important differentiating factors of Aranea, is in our mind its ability to serve as a vehicle for integration of existing frameworks due to its orthogonal de- sign. We discuss this topic in Section 6. Finally, we see Aranea as a research platform. It it very easy to try out a new feature without having to write an entire web framework. A framework is assembled out of independent reusable components, so essentially everything can be reconfigured, extended or replaced. If Aranea be- comes popular, writing a new component for Aranea would also mean a large potential user base. Naturally, there are still numerous framework extensions to be made and further directions to be pursued. These are described in Section 7. Last, but not least, Aranea is based on great ideas originating from prior work of many people. When possible, we reference the original source of idea at the time of introducing it. In Section 8 we compare Aranea with some of the existing frameworks. 2. BACKGROUND Figure 1: A sketch of a rich user interface. As we mentioned in the introduction, our aim is to sup- port most of programming models and patterns available in the existing controller frameworks. We present here, un- figuration files. In Section 2 we describe our approach and avoidably incomplete and subjective, list of profound ideas motivation. We find that one of the strengths of this frame- used in contemporary web controller frameworks. work is its conceptual integrity—it has very few core con- The first important alternative is using stateless or reen- cepts that are applied uniformly throughout the framework. trant components for high performance and low memory The number of core interfaces is small, as is the number of footprint, available in such frameworks as Struts [3] and methods in the interfaces. Components are easy to reuse, ex- WebWork [19]. tend and test, because all external dependencies are injected Another important approach is using hierarchical com- into them. The details of the Aranea core abstractions are position of stateful non-reentrant components with event- explained in Section 3. based programming model, available in such frameworks as In different configurations of Aranea components we can JSF [8], ASP.NET [4], Seaside [21], Wicket [20], Tapestry mimic principles and patterns of most existing server-side [5]. This model is often used for developing rich UI, but web controller frameworks as well as combine them arbitrar- generally poses higher demands on server’s CPU and mem- ily. Possible configurations are described in Section 4. We ory. concentrate on implementation of server-side controllers, but The next abstraction useful especially for developing rich we also intend to support programming model where most UI is nested processes, often referred to as modal processes, of UI is implemented on the client-side and server-side con- present for instance in such web frameworks as WASH tains only coarse-grained stateful components corresponding [26], Cocoon [2], Spring Web Flow [18] and RIFE [14]. roughly to active use-cases. They are often referred to by the name of implementation Of particular interest is the configuration supporting pro- mechanism—continuations. The original idea comes from gramming model that allows expressing a rich user interface Scheme [25], [22]. as a dynamic hierarchical composition of components that All of these continuation frameworks provide one top-level maintain call stacks of nested processes (we refer to such call-stack—essentially flows are like function calls spanning processes as flows further on). As an example of rich user multiple web requests. A significant innovation can be found interface at extreme, consider Figure 1: multiple interact- in framework Seaside [21], where continuations are combined ing windows per user session, each window contains a stack with component model and call stack can be present at any of flows, flows can call nested flows that after completing level of component hierarchy. return values, flows can display additional UI (side-menu, Yet another important model is using asynchronous re- context information) even when a nested flow is executing, quests and partial page updates, coined Ajax [1]. This allows flows can contain tabbed areas, wizards, input forms, lists, decreasing server-side state representation demands and in- other controls and even other flows. creases responsiveness of UI. At the extreme, this allows cre- Further, the framework facilitates both event-based and ating essentially fat client applications with a sophisticated sequential programming (using continuations).
Recommended publications
  • Transform View
    4/20/04 Doc 17 Model-View-Controller part 2 slide 1 CS 635 Advanced Object-Oriented Design & Programming Spring Semester, 2004 Doc 17 Model-View-Controller part 2 Contents Transform View ......................................................................... 2 Context Object .......................................................................... 5 Application Controller ................................................................ 7 Continuation-Based Web Servers ............................................. 9 References Patterns of Enterprise Application Architecture, Folwer, 2003, pp 330-386 Core J2EE Patterns: Best Practices and Design Strategies, 2nd, Alur, Crupi, Malks, 2003 Copyright ©, All rights reserved. 2004 SDSU & Roger Whitney, 5500 Campanile Drive, San Diego, CA 92182-7700 USA. OpenContent (http://www.opencontent.org/opl.shtml) license defines the copyright on this document. 4/20/04 Doc 17 Model-View-Controller part 2 slide 2 Transform View A view that processes domain data elements by element and transforms them into HTML Given a domain object, MusicAlbum, how to generate a web page for the object? • Use Template View • Convert object into html 4/20/04 Doc 17 Model-View-Controller part 2 slide 3 Converting object into html One could add toHtml to the object MusicAlbum ragas = new MusicAlbum.find(“Passages”); String html = ragas.toHtml(); • Domain object is coupled to view language • Provides only one way to display object Better use XML and XSLT • Convert domain object to XML • Use XSLT to convert XML into HTML Now
    [Show full text]
  • VAST Platform 2021 Design It. Build It. Deploy
    VAST Platform 2021 10.0.2 Design it. Build it. Deploy it. Create object-oriented software that’s stable, easy to maintain, and deploys smoothly — all from the same comprehensive development environment. The VAST Platform is a comprehensive integrated development environment (IDE) that works with a Smalltalk language New in 9.2.2 runtime. Because it’s Smalltalk-based, the IDE and the runtime are essentially a development ‘image’ that’s executed by a virtual machine (VM). First released as IBM® VisualAge® Smalltalk in 1993, the VAST Platform has built upon this original foundation starting in 2005 and has continued to grow in power and flexibility through ongoing research and development. VAST has evolved beyond what the original VisualAge developers could have foreseen, and allows developers to quickly iterate new ideas with proven Smalltalk-based live programming methodologies and deploy to a variety of desktop, cloud, Internet of Things (IoT), and on-premise server hardware. Version Control What’s New in VAST 2021 • Git/Tonel tooling Platform Development Tools • Brace array syntax • Migration to LLVM 10 compiler toolchain • Method type annotations • Asynchronous call-ins • SELinux Support (As of 10.0.1) Look and Feel Core Libraries • Hi-DPI fixes and enhancements • Cross-platform OsProcess framework • Product branding and other visual updates • Futures/promises asynchronous framework • High-resolution timer • Secure RNG stream • Swapper performance increase • Enhanced walkback generator Documentation • Lightweight/mobile-friendly documentation Communications • IBM MQ Series SSL/TLS support and 64-bit updates • Improved SMTP handling • Socket fixes and enhancements Top Features Type Analysis & Enhanced Multi-CPU Capable with Asynchronous Code Completion FFI & OsProcess Programming Real-time and lag free.
    [Show full text]
  • Impassive Modernism in Arabic and Hebrew Literatures
    UNIVERSITY OF CALIFORNIA Los Angeles Against the Flow: Impassive Modernism in Arabic and Hebrew Literatures A dissertation submitted in partial satisfaction of the requirements for the degree Doctor of Philosophy in Comparative Literature by Shir Alon 2017 © Copyright by Shir Alon 2017 ABSTRACT OF THE DISSERTATION Against the Flow: Impassive Modernism in Arabic and Hebrew Literatures by Shir Alon Doctor of Philosophy in Comparative Literature University of California, Los Angeles, 2017 Professor Gil Hochberg, Co-Chair Professor Nouri Gana, Co-Chair Against the Flow: Impassive Modernism in Arabic and Hebrew Literatures elaborates two interventions in contemporary studies of Middle Eastern Literatures, Global Modernisms, and Comparative Literature: First, the dissertation elaborates a comparative framework to read twentieth century Arabic and Hebrew literatures side by side and in conversation, as two literary cultures sharing, beyond a contemporary reality of enmity and separation, a narrative of transition to modernity. The works analyzed in the dissertation, hailing from Lebanon, Palestine, Israel, Egypt, and Tunisia, emerge against the Hebrew and Arabic cultural and national renaissance movements, and the establishment of modern independent states in the Middle East. The dissertation stages encounters between Arabic and Hebrew literary works, exploring the ii parallel literary forms they develop in response to shared temporal narratives of a modernity outlined elsewhere and already, and in negotiation with Orientalist legacies. Secondly, the dissertation develops a generic-formal framework to address the proliferation of static and decadent texts emerging in a cultural landscape of national revival and its aftermaths, which I name impassive modernism. Viewed against modernism’s emphatic features, impassive modernism is characterized by affective and formal investment in stasis, immobility, or immutability: suspension in space or time and a desire for nonproductivity.
    [Show full text]
  • Dead Babies and Seaside Towns Ebook, Epub
    DEAD BABIES AND SEASIDE TOWNS Author: Alice Jolly Number of Pages: 432 pages Published Date: 25 Sep 2018 Publisher: Unbound Publication Country: London, United Kingdom Language: English ISBN: 9781783523610 DOWNLOAD: DEAD BABIES AND SEASIDE TOWNS Dead Babies and Seaside Towns PDF Book More than 100 fiction films and documentaries are discussed in this completely original and definitive work on how film meets neurology. Creatively imagined and beautifully written, this book: Interweaves theoretical concepts and professional practice on every pageUses cultural economy to teach the essential concepts and thinkersIntegrates case studies from fashion and gaming to journalism and musicTeaches strategies for navigating the links between skills, industries, creativity and markets. How the statutory residence test applies from April 2013. Gen. Environment focuses on inclusion, including residence life, the local community, the working and learning environment, and external factors and events such as national and international news events or town gown relationships. She has built up a professional reputation from her hands-on, direct client experience, as well as through evidence gained from many years of conducting client surveys and analysis of client data. With this book, you will learn about technical, legal, and resource sharing developments that will contribute to the future distribution of global information in libraries. All you have to do is read the book to start your new journey today. "-Gary Stoner, Ph. " Murach's ADO. She also illustrates assumptions about language and being American, as these are both debated and shared by each "side" of the language and immigration debates in California and Georgia. The report lays out clear evidence of the significant successes that can be achieved by properly structured RCM programs.
    [Show full text]
  • In Re Equifax Inc. Securities Litigation 17-CV-03463-Consolidated Class
    Case 1:17-cv-03463-TWT Document 49 Filed 04/23/18 Page 1 of 198 UNITED STATES DISTRICT COURT NORTHERN DISTRICT OF GEORGIA ATLANTA DIVISION IN RE EQUIFAX INC. SECURITIES Consolidated Case No. LITIGATION 1:17-cv-03463-TWT CONSOLIDATED CLASS ACTION COMPLAINT FOR VIOLATIONS OF THE FEDERAL SECURITIES LAWS Case 1:17-cv-03463-TWT Document 49 Filed 04/23/18 Page 2 of 198 TABLE OF CONTENTS Page I. PRELIMINARY STATEMENT .....................................................................2 II. PARTIES .......................................................................................................10 A. Lead Plaintiff ...................................................................................... 10 B. Defendants .......................................................................................... 10 1. Equifax, Inc. ............................................................................. 10 2. Individual Defendants .............................................................. 12 III. JURISDICTION AND VENUE ....................................................................13 IV. SUMMARY OF THE FRAUD .....................................................................13 A. Equifax’s Business is to Collect and Sell Sensitive Personal Information About Global Consumers ............................................... 13 B. Defendants Knew that Securing the Information Equifax Collected Was Critical to the Company’s Business ........................... 16 C. Defendants Issue Statements Touting Cybersecurity, Compliance with
    [Show full text]
  • Car Agency in Lakewood Going to the Dogs!
    July 7th, 2016 The Ocean County Gazette - www.ocgazette.news 1 The OC Gazette P.O. Box 577 Seaside Heights NJ 08751 On The Web at: www.ocgazette.news JULY 29TH, 2016 VOL. 16 NO. 570 THIS WEEKS Car Agency in Lakewood Going ALERT SHERIFF’S ISSUE OFFICER CATCHES Pages 8-9 to the Dogs! Ocean County POSSIBLE BURGLARY Featured Events FROM COURTROOM Pages 10-11 Ocean County WINDOW; WARRANT Library Weekend Events and ISSUED Exhibits TOMS RIVER – The keen eye of Pages 12-13 an Ocean County Sheriff’s Officer Ocean County caught a suspicious male gaining Artists Guild entry into an apartment on Washington Street in the downtown Page - 16-17 area on July 21. And now, that Long Beach Island Foundation of the person has a warrant out for his Arts & Sciences arrest on charges of burglary, theft Events and criminal trespassing. According to a report provided Page 25 by Ocean County Sheriff Michael Museums, Historic, G. Mastronardy, Sheriff’s Officer Arts & Exhibits Robert Mazur was just completing Photo credits: Courtesy of Caregiver Volunteers; Picture of Alice, courtesy of Michael his security detail around noon in Page 25 Bagley Photography Alice, Lavallette, with Golden Retriever Simon Courtroom 214 on the third floor A Summary of of 213 Washington St., when he Comedy & Stage glanced out the window toward the Performances Kick off the “Dog Days of Summer” $5.00 to the nonprofit Caregiver with a celebration of Caregivers, Canines® program for every vehicle Harbor Front Condominiums at 215 Page 27-34 Canines, and Cars at the Larson Ford sold during the Caregivers, Canines, Washington Street.
    [Show full text]
  • Design and Analysis of Web Application Frameworks
    Aarhus University PhD Dissertation Design and Analysis of Web Application Frameworks Mathias Schwarz Supervisor: Anders Møller Submitted: January 29, 2013 Abstract Numerous web application frameworks have been developed in recent years. These frameworks enable programmers to reuse common components and to avoid typical pitfalls in web application development. Although such frameworks help the pro- grammer to avoid many common errors, we find that there are important, common errors that remain unhandled by web application frameworks. Guided by a survey of common web application errors and of web application frameworks, we identify the need for techniques to help the programmer avoid HTML invalidity and security vulnerabilities, in particular client-state manipulation vulnerabilities. The hypothesis of this dissertation is that we can design frameworks and static analyses that aid the programmer to avoid such errors. First, we present the JWIG web application framework for writing secure and maintainable web applications. We discuss how this framework solves some of the common errors through an API that is designed to be safe by default. Second, we present a novel technique for checking HTML validity for output that is generated by web applications. Through string analysis, we approximate the out- put of web applications as context-free grammars. We model the HTML validation algorithm and the DTD language, and we generalize the validation algorithm to work for context-free grammars. Third, we present a novel technique for identifying client-state manipulation vulnerabilities. The technique uses a combination of output analysis and informa- tion flow analysis to detect flow in the web application that might be exploited by malicious clients.
    [Show full text]
  • “Develop in Pharo, Deploy in Gemstone” with Seaside Johan Brichau
    10 Years later “develop in Pharo, deploy in Gemstone” with Seaside Johan Brichau - [email protected] Yesplan ? Web Application (SaaS) to manage an event venue Yesplan ? Web Application (SaaS) to manage an event venue Yesplan ? Web Application (SaaS) to manage an event venue Yesplan ? Web Application (SaaS) to manage an event venue - jQuery - jQuery-UI - KnockoutJs - D3.js - Datatables - Jasper reports - …. Yesplan ? Web Application (SaaS) to manage an event venue - jQuery - jQuery-UI - KnockoutJs - D3.js - Datatables - Jasper reports ReactJs - …. Yesplan ? • Founded by aa. and arts centre • Over 200 customers (in BE, NL, Lux, CH, UK, NO, DK, FI) • Currently 25 employees: • 5 software engineers, 1 dev ops engineer, 1 interaction designer and 1 report engineer • sales, account management, marketing, support, • Emphasis on making an application that not only works, but also is enjoyable to use Yesplan 0.1 (2009) • Yesplan calendar built using Seaside’s “full page rendering” in-place editing info bubbles title • Standard ‘component calls component’ implementation group • A lot of jQuery for animations and ajax updates group visualization • Javascript universe was “big mess” (excluding notable exceptions) • More errors than functionality in most ‘plugins’ • Bad performance and horrible engineering • Pharo + GoodsDB in production Yesplan 1.0 (2010) • Yesplan calendar with incremental ajax updates • A lot of jQuery-based scripts • SVG animations using generated Javascript • Develop in Pharo, deploy in GemStone • Pharo for development • GemStone
    [Show full text]
  • Clackamas County Reopening Plan
    Clackamas County Phase I Reopening Application May 2020 CLACKAMAS COUN T Y 1 May 19 \ 2020 Honorable Governor Kate Brown c/o/Jennifer Andrew 254 State Capitol Salem, OR 97301-4047 Clackamas County's Application for Phase One Reopening Dear Governor Brown: On behalf of the Clackamas County Board of Commissioners, we are pleased to submit Clackamas County's Phase 1 Reopening Application for consideration by the Governor's Office and the Oregon Health Authority. Our residents have taken your directive to "Stay Home, Save Lives" seriously and local efforts have been highly effective in "flatting the curve" for COVID-19 in Clackamas County. Our community has experienced significant community impacts, and it is time to begin gradually reopening additional sectors of our local economy. Staff within our Clackamas County Emergency Operations Center have worked hard on an in-depth analysis of each of the 7 prerequisites required for entering Phase 1. We are confident that we either meet the necessary requirements or have comprehensive plans in place to address urgent needs as our businesses (identified in Phase 1) start to reopen. Additional financial and technical resources from state and federal sources will be critical to implement our plans related to testing, contact tracing and monitoring, and isolation facilities. We have been in regular communication with our partners in Health Region 1 and neighboring Local Public Health Authorities to coordinate local response efforts, prepare for reopening, and monitor the established gating criteria. We are doing all we can to prevent having to re-impose restrictions. We also recognize the need for our residents and visitors to remain vigilant in protecting themselves and others from the risks of COVID-19.
    [Show full text]
  • A Framework for Toxic Tort Litigation
    A FRAMEWORK FOR TOXIC TORT LITIGATION Joe G. Hollingsworth Katharine R. Latimer Hollingsworth LLP Foreword Dorothy P. Watson Vice President and General Counsel Novartis Pharmaceuticals Corporation WASHINGTON LEGAL FOUNDATION Washington, D.C. This Monograph is one of a series of original papers published by the Legal Studies Division of the Washington Legal Foundation. Through this and other publications, WLF seeks to provide the national legal community with legal studies on a variety of timely public policy issues. Additional copies of this Monograph may be obtained by writing to the Publications Department, Washington Legal Foundation, 2009 Massachusetts Avenue, N.W., Washington, D.C. 20036. Other recent studies in the WLF Monograph series include: Science Through the Looking-Glass: The Manipulation of “Addiction” & Its Influence over Obesity Policy by Dr. John C. Luik. Foreword by Daniel J. Popeo, Washington Legal Foundation. 2007. Library of Congress No. 2007931992. Ideology Masked As Scientific Truth: The Debate About Advertising And Children by Dr. John C. Luik. Foreword by Professor Todd J. Zywicki, George Mason University Law School. 2006. Library of Congress No. 2006927394 Waiver Of The Attorney-Client Privilege: A Balanced Approach by The Honorable Dick Thornburgh, Kirkpatrck & Lockhart Nicholson Graham LLP. Foreword by The Honorable John Engler, President and CEO, National Association of Manufacturers. Introduction by Laura Stein, Senior Vice President – General Counsel and Corporate Secretary, The Clorox Company. 2006. Library of Congress No. 2006927395. Exporting Precaution: How Europe’s Risk-Free Regulatory Agenda Threatens American Free Enterprise by Lawrence A. Kogan, Institute for Trade, Standards and Sustainable Development, Inc. Commentary by The Honorable James C.
    [Show full text]
  • Religion and the Return of Magic: Wicca As Esoteric Spirituality
    RELIGION AND THE RETURN OF MAGIC: WICCA AS ESOTERIC SPIRITUALITY A thesis submitted for the degree of PhD March 2000 Joanne Elizabeth Pearson, B.A. (Hons.) ProQuest Number: 11003543 All rights reserved INFORMATION TO ALL USERS The quality of this reproduction is dependent upon the quality of the copy submitted. In the unlikely event that the author did not send a com plete manuscript and there are missing pages, these will be noted. Also, if material had to be removed, a note will indicate the deletion. uest ProQuest 11003543 Published by ProQuest LLC(2018). Copyright of the Dissertation is held by the Author. All rights reserved. This work is protected against unauthorized copying under Title 17, United States C ode Microform Edition © ProQuest LLC. ProQuest LLC. 789 East Eisenhower Parkway P.O. Box 1346 Ann Arbor, Ml 48106- 1346 AUTHOR’S DECLARATION The thesis presented is entirely my own work, and has not been previously presented for the award of a higher degree elsewhere. The views expressed here are those of the author and not of Lancaster University. Joanne Elizabeth Pearson. RELIGION AND THE RETURN OF MAGIC: WICCA AS ESOTERIC SPIRITUALITY CONTENTS DIAGRAMS AND ILLUSTRATIONS viii ACKNOWLEDGEMENTS ix ABSTRACT xi INTRODUCTION: RELIGION AND THE RETURN OF MAGIC 1 CATEGORISING WICCA 1 The Sociology of the Occult 3 The New Age Movement 5 New Religious Movements and ‘Revived’ Religion 6 Nature Religion 8 MAGIC AND RELIGION 9 A Brief Outline of the Debate 9 Religion and the Decline o f Magic? 12 ESOTERICISM 16 Academic Understandings of
    [Show full text]
  • Smalltalk Web Frameworks
    Smalltalk Web frameworks Comparison of Aida/Web and Seaside Janko Mivšek [email protected] Vsebina Definition of Web App server Aida's ideas and architecture Comparison to Seaside Examples Conclusion Web application server Web + application server For web applications Dynamic, on-the-fly built web pages Web pages instead of GUI apps Thin clients instead of fat clients Examples: business apps, portals, ... Swazoo vs. Aida & Seaside Swazoo Seaside AIDA SmallWiki Methods of building web pages Embedded tags into HTML jsp, asp, php Cincom Web Toolkit Programming Java Servlets Struts AIDA/Web, Seaside Embedded tags ± SSP example <html> <head><title>Toyz Employees</title></head> <body> <table border=1> <% employees := (Toyz new) getEmployees. employees do: [:each | response write: ‘<tr>’. response write: (‘<td>’, each number’, ‘</td>’). response write: (‘<td>’, each name, ‘ ‘, each surname, ‘</td>’). response write: ‘</tr>’]. %> </table> </body> </html> Enbedded commands Pros Simple for web designers Cons Functional logic get lost among presentation logic (HTML) ªspaghettiº code ± hard to maintain and extend Programming ± two examples Aida: element := WebElement new. element table width: 500; cell color: (self navigatorColor); cell colspan: 3; addText: self title header: 3; newRow; cell colspan: 3; addRulerSize: 1; newRow; cell addText: 'uptime: '; newCell align: #right; addText: (self printSeconds: self session site uptime); newRow. ^self pageFrameWith: element title: self title . Seaside: renderContentOn: html html form: [ html table:
    [Show full text]