Meta: Avaliacao最新文献

筛选
英文 中文
Squirrel: an extensible distributed key-value store Squirrel:一个可扩展的分布式键值存储
Meta: Avaliacao Pub Date : 2019-10-20 DOI: 10.1145/3358502.3361271
Kevin De Porre, E. G. Boix
{"title":"Squirrel: an extensible distributed key-value store","authors":"Kevin De Porre, E. G. Boix","doi":"10.1145/3358502.3361271","DOIUrl":"https://doi.org/10.1145/3358502.3361271","url":null,"abstract":"Distributed key-value (KV) stores are a rising alternative to traditional relational databases since they provide a flexible yet simple data model. Recent KV stores use eventual consistency to ensure fast reads and writes as well as high availability. Support for eventual consistency is however still very limited as typically only a handful of replicated data types are provided. Moreover, modern applications maintain various types of data, some of which require strong consistency whereas other require high availability. Implementing such applications remains cumbersome due to the lack of support for data consistency in today's KV stores. In this paper we propose Squirrel, an open implementation of an in-memory distributed KV store. The core idea is to reify distribution through consistency models and protocols. We implement two families of consistency models (strong consistency and strong eventual consistency) and several consistency protocols, including two-phase commit and CRDTs.","PeriodicalId":38836,"journal":{"name":"Meta: Avaliacao","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2019-10-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"74388325","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Proceedings of the 4th ACM SIGPLAN International Workshop on Meta-Programming Techniques and Reflection 第四届ACM SIGPLAN元编程技术与反思国际研讨会论文集
Meta: Avaliacao Pub Date : 2019-01-01 DOI: 10.1145/3358502
{"title":"Proceedings of the 4th ACM SIGPLAN International Workshop on Meta-Programming Techniques and Reflection","authors":"","doi":"10.1145/3358502","DOIUrl":"https://doi.org/10.1145/3358502","url":null,"abstract":"","PeriodicalId":38836,"journal":{"name":"Meta: Avaliacao","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2019-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"88566371","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Through a glass, darkly (invited talk) 透过玻璃,阴暗地(应邀谈话)
Meta: Avaliacao Pub Date : 2018-11-05 DOI: 10.1145/3281074.3281075
J. Noble
{"title":"Through a glass, darkly (invited talk)","authors":"J. Noble","doi":"10.1145/3281074.3281075","DOIUrl":"https://doi.org/10.1145/3281074.3281075","url":null,"abstract":"Reflection gives us a mirror into our programs. Using this mirror, we can see our programs’ structures, perhaps their execution, and maybe even reach through the mirror to change what our programs are and what they do. In this talk, I’ll consider what lives on each side of the mirror and what happens when we cross that boundary. I’ll describe how mirrors let us peer into the middle of our programs, what happens when we reflect on concepts rather than objects, and what happens when we hold up a mirror up to itself. I’ll discuss the way reflection works in the Grace language, and present some prospects for extending it in the future.","PeriodicalId":38836,"journal":{"name":"Meta: Avaliacao","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2018-11-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"84956574","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Does it make sense to have application-specific code conventions as a complementary approach to code annotations? 使用特定于应用程序的代码约定作为代码注释的补充方法有意义吗?
Meta: Avaliacao Pub Date : 2018-11-05 DOI: 10.1145/3281074.3281078
R. Teixeira, E. Guerra, Phyllipe Lima, Paulo Meirelles, Fabio Kon
{"title":"Does it make sense to have application-specific code conventions as a complementary approach to code annotations?","authors":"R. Teixeira, E. Guerra, Phyllipe Lima, Paulo Meirelles, Fabio Kon","doi":"10.1145/3281074.3281078","DOIUrl":"https://doi.org/10.1145/3281074.3281078","url":null,"abstract":"Code annotations are extensively used by Java developers, especially in enterprise frameworks and APIs such as Spring and Java EE. Different code elements that frequently share some similarities, sometimes, repeat the annotations. The goal of this paper is to evaluate whether a real-world system could use code conventions as a means to avoid replicating code annotations. We report on a study on the software used for the EMBRACE Space Weather program at INPE to search for similarities.","PeriodicalId":38836,"journal":{"name":"Meta: Avaliacao","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2018-11-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"77254670","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
SemanticDB: a common data model for Scala developer tools (invited talk) SemanticDB: Scala开发工具的通用数据模型(特邀演讲)
Meta: Avaliacao Pub Date : 2018-11-05 DOI: 10.1145/3281074.3281076
E. Burmako
{"title":"SemanticDB: a common data model for Scala developer tools (invited talk)","authors":"E. Burmako","doi":"10.1145/3281074.3281076","DOIUrl":"https://doi.org/10.1145/3281074.3281076","url":null,"abstract":"Nowadays, there is a clear trend towards standards for communication between developer tools. Language Server Protocol (LSP), a protocol that connects programming language implementations and text editors, has gained strong industrial support and at the time of writing has implementations for many programming languages and editors. Build Server Protocol (BSP) follows in LSP’s tracks with an ambition to define a protocol for communication between language servers and build tools. While lots of work in the open-source community has been invested in unifying user experience (by codifying commonly used operations like go to definition or find all references), relatively less work went into unifying implementor experience. For example, at the moment, there exist five different LSP implementations for Scala. They all implement the same protocol that works with code, but they all use different data structures to represent that code. In this talk, we will present SemanticDB - a data model for semantic information such as symbols and types about programs in Scala and other languages. We will discuss our experience of building an ecosystem of developers tools around SemanticDB and using these tools on Twitter source code - arguably the largest Scala codebase on the planet. SemanticDB is joint work between Eugene Burmako, Twitter and Ólafur Páll Geirsson, EPFL who together developed and maintain the open-source specification and implementations at https://github.com/scalameta/scalameta. The project has received contributions from the Advanced Scala Tools team at Twitter - Eugene Burmako, Shane Delmore, Max Ovsiankin and Uma Srinivasan - as well as many open-source enthusiasts.","PeriodicalId":38836,"journal":{"name":"Meta: Avaliacao","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2018-11-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"75951885","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
GraalVM: metaprogramming inside a polyglot system (invited talk) GraalVM:多语言系统中的元编程(特邀演讲)
Meta: Avaliacao Pub Date : 2018-11-05 DOI: 10.1145/3281074.3284935
Daniele Bonetta
{"title":"GraalVM: metaprogramming inside a polyglot system (invited talk)","authors":"Daniele Bonetta","doi":"10.1145/3281074.3284935","DOIUrl":"https://doi.org/10.1145/3281074.3284935","url":null,"abstract":"GraalVM is a polyglot virtual machine for running applications written in a variety of languages such as JavaScript, Ruby, Python, R, JVM-based languages like Java, Scala, Kotlin, and LLVM-based languages such as C and C++. GraalVM enables interoperability between different programming languages in a shared runtime, and can run either standalone or embedded in other software systems such as Node.js, the Oracle RDBMS, and MySQL. In this talk I will give an overview of GraalVM and present how polyglot features such as language interoperability and language-agnostic instrumentation are enabled in GraalVM by means of VM-internal metaprogramming.","PeriodicalId":38836,"journal":{"name":"Meta: Avaliacao","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2018-11-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"85193178","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 8
Recognizing heterogeneous sequences by rational type expression 利用有理型表达式识别异质序列
Meta: Avaliacao Pub Date : 2018-11-05 DOI: 10.1145/3281074.3281077
Jim E. Newton, D. Verna
{"title":"Recognizing heterogeneous sequences by rational type expression","authors":"Jim E. Newton, D. Verna","doi":"10.1145/3281074.3281077","DOIUrl":"https://doi.org/10.1145/3281074.3281077","url":null,"abstract":"We summarize a technique for writing functions which recognize types of heterogeneous sequences in Common Lisp. The technique employs sequence recognition functions, generated at compile time, and evaluated at run-time. The technique we demonstrate extends the Common Lisp type system, exploiting the theory of rational languages, Binary Decision Diagrams, and the Turing complete macro facility of Common Lisp. The resulting system uses meta-programming to move an Omega(2^n) complexity operation from run-time to a compile-time operation, leaving a highly optimized Theta(n) complexity operation for run-time.","PeriodicalId":38836,"journal":{"name":"Meta: Avaliacao","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2018-11-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"76000425","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Proceedings of the 3rd ACM SIGPLAN International Workshop on Meta-Programming Techniques and Reflection 第三届ACM SIGPLAN元编程技术与反思国际研讨会论文集
Meta: Avaliacao Pub Date : 2018-01-01 DOI: 10.1145/3281074
{"title":"Proceedings of the 3rd ACM SIGPLAN International Workshop on Meta-Programming Techniques and Reflection","authors":"","doi":"10.1145/3281074","DOIUrl":"https://doi.org/10.1145/3281074","url":null,"abstract":"","PeriodicalId":38836,"journal":{"name":"Meta: Avaliacao","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2018-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"89544188","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
An annotation-based API for supporting runtime code annotation reading 一个基于注释的API,用于支持运行时代码注释读取
Meta: Avaliacao Pub Date : 2017-10-22 DOI: 10.1145/3141517.3141856
Phyllipe Lima, E. Guerra, Marco Nardes, Andrea Mocci, G. Bavota, Michele Lanza
{"title":"An annotation-based API for supporting runtime code annotation reading","authors":"Phyllipe Lima, E. Guerra, Marco Nardes, Andrea Mocci, G. Bavota, Michele Lanza","doi":"10.1145/3141517.3141856","DOIUrl":"https://doi.org/10.1145/3141517.3141856","url":null,"abstract":"Code annotations are the core of the main APIs and frameworks for enterprise development, and are widely used on several applications. However, despite these APIs and frameworks made advanced uses of annotations, the language API for annotation reading is far from their needs. In particular, annotation reading is still a relatively complex task, that can consume a lot of development time and that can couple the framework internal structure to its annotations. This paper proposes an annotation-based API to retrieve metadata from code annotations and populate an instance with meta-information ready to be used by the framework. The proposed API is based on best practices and approaches for metadata definition documented on patterns, and has been implemented by a framework named Esfinge Metadata. We evaluated the approach by refactoring an existing framework to use it through Esfinge Metadata. The original and the refactored versions are compared using several code assessment techniques, such as software metrics, and bad smells detection, followed by a qualitative analysis based on source code inspection. As a result, the case study revealed that the usage of the proposed API can reduce the coupling between the metadata reading code and the annotations.","PeriodicalId":38836,"journal":{"name":"Meta: Avaliacao","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2017-10-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"87063876","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Toward abstract interpretation of program transformations 对程序转换进行抽象解释
Meta: Avaliacao Pub Date : 2017-10-22 DOI: 10.1145/3141517.3141855
Sven Keidel, Sebastian Erdweg
{"title":"Toward abstract interpretation of program transformations","authors":"Sven Keidel, Sebastian Erdweg","doi":"10.1145/3141517.3141855","DOIUrl":"https://doi.org/10.1145/3141517.3141855","url":null,"abstract":"Developers of program transformations often reason about transformations to assert certain properties of the generated code. We propose to apply abstract interpretation to program transformations in order to automate and support such reasoning. In this paper, we present work in progress on the development and application of an abstract interpreter for the program transformation language Stratego. In particular, we present challenges encountered during the development of the abstract Stratego interpreter and how we intend to solve these challenges.","PeriodicalId":38836,"journal":{"name":"Meta: Avaliacao","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2017-10-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"75946186","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信