Matches in SemOpenAlex for { <https://semopenalex.org/work/W3101608049> ?p ?o ?g. }
- W3101608049 abstract "Since the early days of the Web, web application developers have aspired to develop much of their applications declaratively. However, one aspect of the application, namely its business-logic is constantly left imperative. In this work we present Application Embedding, a novel approach to application development which allows all aspects of an application, including its business-logic, to be programmed declaratively. We develop this approach in a two-step process. First, we draw a mapping between web applications and Domain-Specific Languages (DSLs). Second, we note that out of the two methods for implementing DSLs, namely as either internal or external, most traditional web applications correspond to external DSLs, while the the technique that corresponds to DSL embedding (implementing internal DSLs) is left mostly unexplored. By projecting the well-known technique of DSL embedding onto web applications, we derive a novel technique--Application Embedding. Application embedding offers a separation of code assets that encourages reuse of imperative code, while keeping all application-specific assets, including those specifying its business- logic, declarative. As validation, we implemented a simple, though nontrivial web application using the proposed separation of assets. This implementation includes an application-agnostic imperative host application named FishTank, intended to be applicable for a wide variety of web applications, and a declarative definition of the different aspects of the specific application, intended to be loaded on that host. Our method of separation of code assets facilitates a better separation of work, in comparison to traditional methods. By this separation, host application developers can focus mostly on the extra-functional aspects of a web application, namely on improving performance, scalability, and availability, while developers of an embedded application can focus on the functional aspects of their application, without worrying about extra- functional concerns. The reusability of the host application makes the effort put into a better implementation cost-effective, since it can benefit all applications built on top of it." @default.
- W3101608049 created "2020-11-23" @default.
- W3101608049 creator A5028481096 @default.
- W3101608049 creator A5049115992 @default.
- W3101608049 date "2017-01-27" @default.
- W3101608049 modified "2023-10-14" @default.
- W3101608049 title "Application Embedding: A Language Approach to Declarative Web Programming" @default.
- W3101608049 cites W121159850 @default.
- W3101608049 cites W1479857163 @default.
- W3101608049 cites W1491573719 @default.
- W3101608049 cites W1509428113 @default.
- W3101608049 cites W1533109738 @default.
- W3101608049 cites W1558663026 @default.
- W3101608049 cites W1586338668 @default.
- W3101608049 cites W158887749 @default.
- W3101608049 cites W1968856499 @default.
- W3101608049 cites W196999659 @default.
- W3101608049 cites W1995618084 @default.
- W3101608049 cites W2026049208 @default.
- W3101608049 cites W2044701300 @default.
- W3101608049 cites W2048485245 @default.
- W3101608049 cites W2071599766 @default.
- W3101608049 cites W2075139806 @default.
- W3101608049 cites W2117489143 @default.
- W3101608049 cites W2132308739 @default.
- W3101608049 cites W2136327713 @default.
- W3101608049 cites W2137196294 @default.
- W3101608049 cites W2140493799 @default.
- W3101608049 cites W2161433768 @default.
- W3101608049 cites W2191031914 @default.
- W3101608049 cites W28925417 @default.
- W3101608049 doi "https://doi.org/10.22152/programming-journal.org/2017/1/2" @default.
- W3101608049 hasPublicationYear "2017" @default.
- W3101608049 type Work @default.
- W3101608049 sameAs 3101608049 @default.
- W3101608049 citedByCount "2" @default.
- W3101608049 countsByYear W31016080492020 @default.
- W3101608049 countsByYear W31016080492021 @default.
- W3101608049 crossrefType "journal-article" @default.
- W3101608049 hasAuthorship W3101608049A5028481096 @default.
- W3101608049 hasAuthorship W3101608049A5049115992 @default.
- W3101608049 hasBestOaLocation W31016080491 @default.
- W3101608049 hasConcept C115903868 @default.
- W3101608049 hasConcept C118643609 @default.
- W3101608049 hasConcept C120665830 @default.
- W3101608049 hasConcept C121332964 @default.
- W3101608049 hasConcept C134306372 @default.
- W3101608049 hasConcept C135257023 @default.
- W3101608049 hasConcept C136764020 @default.
- W3101608049 hasConcept C146222976 @default.
- W3101608049 hasConcept C154945302 @default.
- W3101608049 hasConcept C177264268 @default.
- W3101608049 hasConcept C192209626 @default.
- W3101608049 hasConcept C199360897 @default.
- W3101608049 hasConcept C201374245 @default.
- W3101608049 hasConcept C2776760102 @default.
- W3101608049 hasConcept C2777904410 @default.
- W3101608049 hasConcept C33923547 @default.
- W3101608049 hasConcept C36503486 @default.
- W3101608049 hasConcept C41008148 @default.
- W3101608049 hasConcept C41608201 @default.
- W3101608049 hasConcept C76155785 @default.
- W3101608049 hasConcept C76214141 @default.
- W3101608049 hasConceptScore W3101608049C115903868 @default.
- W3101608049 hasConceptScore W3101608049C118643609 @default.
- W3101608049 hasConceptScore W3101608049C120665830 @default.
- W3101608049 hasConceptScore W3101608049C121332964 @default.
- W3101608049 hasConceptScore W3101608049C134306372 @default.
- W3101608049 hasConceptScore W3101608049C135257023 @default.
- W3101608049 hasConceptScore W3101608049C136764020 @default.
- W3101608049 hasConceptScore W3101608049C146222976 @default.
- W3101608049 hasConceptScore W3101608049C154945302 @default.
- W3101608049 hasConceptScore W3101608049C177264268 @default.
- W3101608049 hasConceptScore W3101608049C192209626 @default.
- W3101608049 hasConceptScore W3101608049C199360897 @default.
- W3101608049 hasConceptScore W3101608049C201374245 @default.
- W3101608049 hasConceptScore W3101608049C2776760102 @default.
- W3101608049 hasConceptScore W3101608049C2777904410 @default.
- W3101608049 hasConceptScore W3101608049C33923547 @default.
- W3101608049 hasConceptScore W3101608049C36503486 @default.
- W3101608049 hasConceptScore W3101608049C41008148 @default.
- W3101608049 hasConceptScore W3101608049C41608201 @default.
- W3101608049 hasConceptScore W3101608049C76155785 @default.
- W3101608049 hasConceptScore W3101608049C76214141 @default.
- W3101608049 hasIssue "1" @default.
- W3101608049 hasLocation W31016080491 @default.
- W3101608049 hasLocation W31016080492 @default.
- W3101608049 hasOpenAccess W3101608049 @default.
- W3101608049 hasPrimaryLocation W31016080491 @default.
- W3101608049 hasRelatedWork W1485300234 @default.
- W3101608049 hasRelatedWork W1573904598 @default.
- W3101608049 hasRelatedWork W2014596857 @default.
- W3101608049 hasRelatedWork W2058907533 @default.
- W3101608049 hasRelatedWork W2097052821 @default.
- W3101608049 hasRelatedWork W2119542776 @default.
- W3101608049 hasRelatedWork W2140083133 @default.
- W3101608049 hasRelatedWork W2258960507 @default.
- W3101608049 hasRelatedWork W2582410692 @default.
- W3101608049 hasRelatedWork W4313343615 @default.
- W3101608049 hasVolume "1" @default.