Cimple Programming Language
Jump to navigation
Jump to search
A Cimple Programming Language is a visual programming language that tries to mimic procedural languages.
References
2017
- (Wikipedia, 2017) ⇒ https://en.wikipedia.org/wiki/CiMPLE Retrieved:2017-5-28.
- CiMPLE is a visual programming language that tries to visually mimic procedural languages like C/C++. Created using C++ on a Qt 4.+ cross-platform application framework, CiMPLE was awarded by Nokia as the First Qt/C++ Ambassador Application. Motivation to create CiMPLE was to help do away for rote memorization of language syntax while programming a robotic kit.
2016
- (Pailoor et al.,2016) ⇒ Shankara Pailoor, Panchampreet Kaur & Graham Barab (2016). “The Cimple Programming Language" http://www.cs.columbia.edu/~sedwards/classes/2016/4115-fall/proposals/Cimple.pdf
- The Cimple Programming Language: We hope to build a statically typed language based off C with features that enable the programmer to write expressive server side programs with the same ease as he or she would with a language like python or ruby. These features include inheritance, interface types, anonymous functions and closures.
- We have chosen C as the basis of our language due to its status as a "lowlevel" language. The ideas expressible in the language have close relationships with the resulting CPU instructions the compiler generates. This proximity of the language to the computer hardware in this sense promotes fast execution speed. Therefore, our language would benefit programs that require fast execution speed, such as any software that processes or renders signals in real time, such as digital audio production workstations and plugins, video editing and rendering, realtime (or otherwise) 3D graphics, video games, etc.
- Additionally, we are introducing some higher level language features, including objectoriented principles such as structs with inheritance and methods, anonymous functions with closures, and interfaces. This extends the ways a programmer may organize code, and increase the speed with which more abstract concepts can be represented in code. Types of programs that can benefit from this include those that rely on asynchronous communication. An example would be client software interacting with a server, and vice verse.
2007A
- (Doan, 2007) ⇒ AnHai Doan (2007)."The Cimple Project on Community Information Management". http://www.cs.wisc.edu/~anhai/projects/cimple/
- The Cimple Project: Cimple is a joint project between the Univ. of Wisconsin-Madison and Yahoo! Research. It develops a software platform that can be rapidly deployed and customized to manage data-rich online communities. This software platform can be valuable for communities in a broad range of domains, ranging from scientific data management, government agencies, and enterprise intranets, to those on the World-Wide Web.
2007B
- (DeRose et al., 2007) ⇒ DeRose, P., Shen, W., Chen, F., Lee, Y., Burdick, D., Doan, A., & Ramakrishnan, R. (2007, January). DBLife: A community information management platform for the database research community. In CIDR (pp. 169-172) [1].
- The Cimple Project: To address the CIM problem, we have recently started Cimple, a joint project between the University of Wisconsin and Yahoo! Research [4]. Our goal is to develop a software platform that a data-rich online community can quickly deploy and customize to effectively manage its data. This software platform can be valuable for communities in a broad range of domains, ranging from scientific data management [5], government agencies, PIM [2, 8], dataspace management [6], and enterprise intranets, to those on the World-Wide Web. Cimple’s approach has three steps:
- (1) We start with a high-quality seed provided by a community expert; this seed includes relevant data sources and domain knowledge about entities and relationships of interest.
- (2) We exploit this seed using simple but focused automatic methods to create and maintain an entity-relationship graph of the community.
- (3) We leverage the community by providing valuable, carefully crafted functionalities whose use helps correct, maintain, and evolve this graph.
- In general, Cimple attempts to extend the footprints of DBMSs and more broadly apply database technologies to manage Web data. A major problem with doing database and IR research that involves the Web is that the Web is simply too big. In academic environments, it is possible, but difficult, to build infrastructures and user bases at the Web scale to uncover more interesting problems and better validate solutions. Cimple can be viewed as attempting to circumvent this problem by focusing on Web communities, which are in effect “mini-Webs”. At this scale, it may be the case that it is easier to build infrastructures and user bases, to perform deeper semantic analysis to infer more complex structured data, and to apply database/IR technologies.
2006
- AnHai Doan, Raghu Ramakrishnan, Fei Chen, Pedro DeRose, Yoonkyong Lee, Robert McCann, Mayssam Sayyadian, and Warren Shen. (2006). “Community Information Management.” In: IEEE Data Engineering Bulletin, Special Issue on Probabilistic Databases, 29(1).
- ABSTRACT: We introduce Cimple, a joint project between the University of Illinois and the University of Wisconsin. Cimple aims to develop a software platform that can be rapidly deployed and customized to manage data-rich online communities. We first describe the envisioned working of such a software platform and our prototype, DBLife, which is a community portal being developed for the database research community. We then describe the technical challenges in Cimple and our solution approach. Finally, we discuss managing uncertainty and provenance, a crucial task in making our software platform practical.