Spelling suggestions: "subject:"closure"" "subject:"conjure""
1 |
Avaliação de desempenho do sistema de memória transacional de Clojure como biblioteca de sincronização na linguagem Java / Performance evaluation of Clojure transactional memory system as a synchronization library in Java languageCalcina Ccori, Pablo César 14 June 2011 (has links)
Neste trabalho apresenta-se uma avaliação do desempenho da implementação de memória transacional da linguagem Clojure, utilizada como biblioteca de sincronização para uso em conjunto com outras aplicações dentro da máquina virtual de Java. É implementada uma camada de interface entre as estruturas de dados de Clojure e o benchmark STMBench7 e são discutidos alguns aspectos que geram sobrecarga no desempenho. / In this work a performance evaluation of Clojure transactional memory implementation is presented, using it as a synchronization library to work together with other applications on Java virtual machine. It is implemented an interface layer between Clojure data structures and STMBench7 benchmark, and issues about overhead in performance are discussed.
|
2 |
Avaliação de desempenho do sistema de memória transacional de Clojure como biblioteca de sincronização na linguagem Java / Performance evaluation of Clojure transactional memory system as a synchronization library in Java languagePablo César Calcina Ccori 14 June 2011 (has links)
Neste trabalho apresenta-se uma avaliação do desempenho da implementação de memória transacional da linguagem Clojure, utilizada como biblioteca de sincronização para uso em conjunto com outras aplicações dentro da máquina virtual de Java. É implementada uma camada de interface entre as estruturas de dados de Clojure e o benchmark STMBench7 e são discutidos alguns aspectos que geram sobrecarga no desempenho. / In this work a performance evaluation of Clojure transactional memory implementation is presented, using it as a synchronization library to work together with other applications on Java virtual machine. It is implemented an interface layer between Clojure data structures and STMBench7 benchmark, and issues about overhead in performance are discussed.
|
3 |
Reliable Web Applications Through Contracts and Generative Testing / Pålitliga webbapplikationer med kontrakt och automatisk testningHallsmar, Fredrik January 2022 (has links)
Client-side web applications have recently gone from progressive enhancements to powering large scale Single-page Applications (SPAs). Testing such applications is a tedious effort, often requiring manually constructing tests and emulating the browser, which leads to high programming effort and low performance. This thesis investigates how web applications can be designed, implemented and tested in order to make reliable applications with high test performance using Design by Contract (DbC) and automatically generated tests without significantly increasing programming effort. The results consist of a formal model for reactive programs using denotational and axiomatic semantics in order to not be tied to a specific programming language. The model is tested by implementing a sample application in Clojure and evaluating different aspects such as test coverage and test performance, in addition to mutation-based testing. Furthermore, the formal model can be used as a blueprint for developing reliable applications and serve as a formal building block for future research on web applications. Additionally, the sample application may be used as a guideline for real world development. The results show that applications implementing the formal model have generated test suites that are likely to detect programmer errors and can achieve high test coverage and performance while requiring less or equal effort when compared to other implementations and manual testing. / Klientbaserade webbapplikationer har under de senaste åren växt från mindre dynamiska förbättringar till att fullständigt driva Single-page Applikationer (SPAs). Att skriva tester för sådana applikationer är en komplex uppgift som ofta kräver emulering av webbläsare, vilket leder till mycket arbete och låg prestanda. Den här studien undersöker hur webbapplikationer kan designas och implementeras för att skapa pålitliga applikationer genom att använda Design by Contract (DbC) och automatiskt genererade tester, utan att signifikant påverka arbetsbördan för utvecklare. En formell modell för reaktiva applikationer presenteras med hjälp av denotationell och axiomatisk semantik för att inte begränsas till ett enskilt programspråk. Modellen testas genom utveckling och utvärdering av en exempelapplikation skriven i Clojure där olika aspekter såsom täckningsgrad och prestanda hos tester samt mutationsbaserad testning undersöks. I resultaten av den här studien presenteras en formell modell som kan användas som riktlinje för att bygga pålitliga webbapplikationer samt som en formell byggsten för framtida studier. Vidare så kan även exempelapplikationen användas som mall för utveckling av applikationer i industrin. Resultaten visar att applikationer som implementerar modellen har en testsvit som är trolig att upptäcka programmeringsfel samt uppnår hög täckningsgrad och prestanda, medan de kräver mindre eller liknande arbete som andra implementationer och manuellt programmerade tester.
|
4 |
Automated GUI Generation for functional data structures / Automated GUI Generation for functional data structuresPodloucký, Martin January 2012 (has links)
This thesis addresses the problem of automated graphical user interface generation for functional programs. First an analysis of current state in the field of automated GUI generation is performed. Based on the analysis the concept of Functionally Structured User Interface (FSUI) is introduced. Meta-data system for code annotation is then specified for the Clojure programming language and a transformation from this system to FSUI data model is implemented. Finally a graphical layer for displaying the actual interface is implemented in Clojure. Benefits of this approach are demonstrated by proof-of-concept case study.
|
5 |
Test-Driven Development in Clojure : An analysis of how differences between Clojure and Java affects unit testing and design patterns / Testdriven utveckling i Clojure : En analys av hur skillnader mellan Clojure och Java påverkar enhetstestning och designmönsterNilsson, Niclas January 2015 (has links)
Agile methods and Test-Driven Development are well established methodologies within the software development industry. As a large part of today’s software development is done in Object-Oriented languages like Java it’s only natural that agile best practices have evolved to fit into the Object-Oriented paradigm. Clojure is a relatively young programming language that greatly differs from Object-Oriented languages and it’s thus not certain that these best practices can be directly applicable in Clojure development. This thesis attempts to identify key differences between Clojure and Java that may affect unit testing and the Test-Driven Development process. It finds that although the two languages are fundamentally the difference between them in regards to unit test creation and execution is small. The most striking consequence of Clojure’s lack of Object-Orientation is that dependency injection must be done between functions rather than between classes and objects. It’s also argued that the relative immaturity of the available Clojure development tools can have negative effects on the Test-Driven Development process. / Agila metoder och Testdriven Utveckling är väletablerade metoder inom mjukvaruindustrin. Då en stor del av dagens mjukvaruutveckling sker inom Objektorienterade språk som Java är det bara naturligt att agila best-practices har utvecklats för att passa den Objektorienterade paradigmen. Clojure är ett relativt ungt programmeringsspråk som skiljer sig kraftigt från Objektorienterade språk och det är därför inte självklart att dessa best-practices kan vara direkt applicerbara på utveckling i Clojure. Denna uppsats försöker identifiera de huvudskillnader mellan Clojure och Java som kan ha en direkt påverkan på enhetstestning och den Testdrivna Utvecklingsprocessen. Man upptäcker att det - de två språkens fundamentala skillnader till trots - endast finns små skillnader som påverkar skapandet och körandet av enhetstester. Den mest iögonfallande konsekvensen av bristen på Objektorientering i Clojure är att Dependency Injection måste ske på funktionsnivå, istället för klass- och objektsnivå. Man argumenterar även för att den relativa omogenheten hos verktyg som används vid mjukvaruutveckling i Clojure kan ha en negativ effekt på den Testdrivna Utvecklingsprocessen.
|
Page generated in 0.0531 seconds