Pyscan: Interfacing Laboratory Instruments With Python,
2019
Hope College
Pyscan: Interfacing Laboratory Instruments With Python, Julian N. Payne, Peter E. Timperman
18th Annual Celebration of Undergraduate Research and Creative Activity (2019)
Laboratory instruments can be interfaced with and controlled from personal computers. Several programs to scan lasers and acquire data have been written by students in the Polik Lab. However, computer hardware and software change more rapidly (3-5 years) than instrument lifetime (20 years). Thus, programs must be replaced to run on modern computers and operating systems. This can be done to minimize dependence on specific hardware and software. PyScan is a laser instrument interface program intended to replace the Polik Lab’s current software. It allows the user to control the laser, setup a scan, acquire data, and store the data …
Autonomous Watercraft Simulation And Programming,
2019
University of Lynchburg
Autonomous Watercraft Simulation And Programming, Nicholas J. Savino
Student Scholar Showcase
Automation of various modes of transportation is thought to make travel more safe and efficient. Over the past several decades, advances to semi-autonomous and autonomous vehicles have led to advanced autopilot systems on planes and boats, and an increasing popularity of self-driving cars. We predicted the motion of an autonomous vehicle using simulations in Python. The simulation models the motion of a small scale watercraft, which can then be built and programmed using an Arduino Microcontroller. We examined different control methods for a simulated rescue craft to reach a target. We also examined the effects of different factors, such as …
Dynamic Lazy Grounding In Answer Set Programming,
2019
University of Nebraska at Omaha
Dynamic Lazy Grounding In Answer Set Programming, Brian Hodges
Computer Science Graduate Research Workshop
No abstract provided.
Automatic Program Rewriting For Non-Ground Answer Set Programs,
2019
University of Nebraska at Omaha
Automatic Program Rewriting For Non-Ground Answer Set Programs, Nicholas Hippen
Computer Science Graduate Research Workshop
No abstract provided.
Cst1101–Problem Solving With Computer Programming, Syllabus, Spring 2019,
2019
CUNY New York City College of Technology
Cst1101–Problem Solving With Computer Programming, Syllabus, Spring 2019, Douglas L. Moody
Open Educational Resources
No abstract provided.
Revocable Attribute-Based Encryption With Decryption Key Exposure Resistance And Ciphertext Delegation,
2019
Singapore Management University
Revocable Attribute-Based Encryption With Decryption Key Exposure Resistance And Ciphertext Delegation, Shengmin Xu, Guomin Yang, Yi Mu
Research Collection School Of Computing and Information Systems
Attribute-based encryption (ABE) enables fine-grained access control over encrypted data. A practical and popular approach for handing revocation in ABE is to use the indirect revocation mechanism, in which a key generation centre (KGC) periodically broadcasts key update information for all data users over a public channel. Unfortunately, existing RABE schemes are vulnerable to decryption key exposure attack which has been well studied in the identity-based setting. In this paper, we introduce a new notion for RABE called re-randomizable piecewise key generation by allowing a data user to re-randmomize the combined secret key and the key update to obtain the …
Functionality & Privacy In Mobile Applications - Who's Going To Win The Game,
2019
Singapore Management University
Functionality & Privacy In Mobile Applications - Who's Going To Win The Game, Debin Gao
MITB Thought Leadership Series
MOBILE APPS have brought so much convenience and fun into our lives. From route planning to grocery shopping, reserving flights and hiring bicycles, to the action games we play to pass the time on public transport.
Microbtc: Efficient, Flexible And Fair Micropayment For Bitcoin Using Hash Chains,
2019
Singapore Management University
Microbtc: Efficient, Flexible And Fair Micropayment For Bitcoin Using Hash Chains, Zhiguo Wan, Robert H. Deng, David Kuo Chuen Lee, Ying Li
Research Collection School Of Computing and Information Systems
While Bitcoin gains increasing popularity in different payment scenarios, the transaction fees make it difficult to be applied to micropayment. Given the wide applicability of micropayment, it is crucial for all cryptocurrencies including Bitcoin to provide effective support therein. In light of this, a number of low-cost micropayment schemes for Bitcoin have been proposed recently to reduce micropayment costs. Existing schemes, however, suffer from drawbacks such as high computation cost, inflexible payment value, and possibly unfair exchanges. The paper proposes two new micropayment schemes, namely the basic MicroBTC and the advanced MicroBTC, for Bitcoin by integrating the hash chain technique …
Supported Programming For Beginning Developers,
2019
California Polytechnic State University, San Luis Obispo
Supported Programming For Beginning Developers, Andrew Gilbert
Master's Theses
Testing code is important, but writing test cases can be time consuming, particularly for beginning programmers who are already struggling to write an implementation. We present TestBuilder, a system for test case generation which uses an SMT solver to generate inputs to reach specified lines in a function, and asks the user what the expected outputs would be for those inputs. The resulting test cases check the correctness of the output, rather than merely ensuring the code does not crash. Further, by querying the user for expectations, TestBuilder encourages the programmer to think about what their code ought to do, …
Cs04all: List Comprehensions,
2019
CUNY John Jay College
Cs04all: List Comprehensions, Hunter R. Johnson
Open Educational Resources
List Comprehensions
This is a tutorial on list comprehensions in Python, suitable for use in an Intro or CS0 course. We also briefly mention set comprehensions and dictionary comprehensions.
https://cocalc.com/share/bde99afd-76c8-493d-9608-db9019bcd346/171/list_comprehensions?viewer=share/
This OER material was produced as a result of the CS04ALL CUNY OER project
Topical Co-Attention Networks For Hashtag Recommendation On Microblogs,
2019
Singapore Management University
Topical Co-Attention Networks For Hashtag Recommendation On Microblogs, Yang Li, Ting Liu, Jingwen Hu, Jing Jiang
Research Collection School Of Computing and Information Systems
Hashtags provide a simple and natural way of organizing content in microblog services. Along with the fast growing of microblog services, the task of recommending hashtags for microblogs has been given increasing attention in recent years. However, much of the research depends on hand-crafted features. Motivated by the successful use of neural models for many natural language processing tasks, in this paper, we adopt an attention based neural network to learn the representation of a microblog post. Unlike previous works, which only focus on content attention of microblogs, we propose a novel Topical CoAttention Network (TCAN) that jointly models content …
Automatic Code Review By Learning The Revision Of Source Code,
2019
Singapore Management University
Automatic Code Review By Learning The Revision Of Source Code, Shu-Ting Shi, Ming Li, David Lo, Ferdian Thung, Xuan Huo
Research Collection School Of Computing and Information Systems
Code review is the process of manual inspection on the revision of the source code in order to find out whether the revised source code eventually meets the revision requirements. However, manual code review is time-consuming, and automating such the code review process will alleviate the burden of code reviewers and speed up the software maintenance process. To construct the model for automatic code review, the characteristics of the revisions of source code (i.e., the difference between the two pieces of source code) should be properly captured and modeled. Unfortunately, most of the existing techniques can easily model the overall …
A Randomized Controlled Trial On The Impact Of Polyglot Programming In A Database Context,
2019
University of Nevada, Las Vegas
A Randomized Controlled Trial On The Impact Of Polyglot Programming In A Database Context, Andreas Stefik, Phillip Merlin Uesbeck
Computer Science Faculty Research
Using more than one programming language in the same project is common practice. Often, additional languages might be introduced to projects to solve specific issues. While the practice is common, it is unclear whether it has an impact on developer productivity. In this paper, we present a pilot study investigating what happens when programmers switch between programming languages. The experiment is a repeated measures double-blind randomized controlled trial with 3 groups with various kinds of code switching in a database context. Results provide a rigorous testing methodology that can be replicated by us or others and a theoretical backing for …
Improving Vix Futures Forecasts Using Machine Learning Methods,
2019
Southern Methodist University
Improving Vix Futures Forecasts Using Machine Learning Methods, James Hosker, Slobodan Djurdjevic, Hieu Nguyen, Robert Slater
SMU Data Science Review
The problem of forecasting market volatility is a difficult task for most fund managers. Volatility forecasts are used for risk management, alpha (risk) trading, and the reduction of trading friction. Improving the forecasts of future market volatility assists fund managers in adding or reducing risk in their portfolios as well as in increasing hedges to protect their portfolios in anticipation of a market sell-off event. Our analysis compares three existing financial models that forecast future market volatility using the Chicago Board Options Exchange Volatility Index (VIX) to six machine/deep learning supervised regression methods. This analysis determines which models provide best …
Programming Safety Tips: Why You Should Use Immutable Objects Or How To Create Programs With Bugs That Can Never Be Found Or Fixed.,
2019
Gettysburg College
Programming Safety Tips: Why You Should Use Immutable Objects Or How To Create Programs With Bugs That Can Never Be Found Or Fixed., Charles W. Kann
Programming Tips and Tricks
Program safety deals with how to make programs as error free as possible. The hardest errors in a program for a programmer to find are often errors in using memory. There are two reasons for this. The first is that errors in accessing memory almost never show problems in the proximate area of the program where the error is made. The error has no apparent impact when it is made, but often causes catastrophic results to occur much later in the program, in areas of the program unrelated to memory error that caused it.
The second reason memory errors are …
Introductory R For Water Resources - Fall 2019 - University Of North Carolina At Chapel Hill,
2019
University of North Carolina at Chapel Hill
Introductory R For Water Resources - Fall 2019 - University Of North Carolina At Chapel Hill, David Gorelick, Gregory Characklis
All ECSTATIC Materials
This is all course material for R for Researchers, a one-credit course taught at UNC Chapel Hill in Fall 2019 to introduce upperclassmen and graduate students to the R programming language and apply learned skills in basic water resources applications, as well as other (semi-related) topics of interest to students.
Lecture notes were distributed before (as a subset of full lecture notes) and after lectures, and lectures involved collaborative coding exercises with students in class without any powerpoint material. Course material here includes:
Syllabus: rough schedule and description of lectures
Lectures: pdf lecture notes with embedded code, including …
Automatic Query Reformulation For Code Search Using Crowdsourced Knowledge,
2019
Singapore Management University
Automatic Query Reformulation For Code Search Using Crowdsourced Knowledge, Mohammad M. Rahman, Chanchal K. Roy, David Lo
Research Collection School Of Computing and Information Systems
Traditional code search engines (e.g., Krugle) often do not perform well with natural language queries. They mostly apply keyword matching between query and source code. Hence, they need carefully designed queries containing references to relevant APIs for the code search. Unfortunately, preparing an effective search query is not only challenging but also time-consuming for the developers according to existing studies. In this article, we propose a novel query reformulation technique–RACK–that suggests a list of relevant API classes for a natural language query intended for code search. Our technique offers such suggestions by exploiting keyword-API associations from the questions and answers …
Deep Code Comment Generation With Hybrid Lexical And Syntactical Information,
2019
Peking University
Deep Code Comment Generation With Hybrid Lexical And Syntactical Information, Xing Hu, Ge Li, Xin Xia, David Lo, Zhi Jin
Research Collection School Of Computing and Information Systems
During software maintenance, developers spend a lot of time understanding the source code. Existing studies show that code comments help developers comprehend programs and reduce additional time spent on reading and navigating source code. Unfortunately, these comments are often mismatched, missing or outdated in software projects. Developers have to infer the functionality from the source code. This paper proposes a new approach named Hybrid-DeepCom to automatically generate code comments for the functional units of Java language, namely, Java methods. The generated comments aim to help developers understand the functionality of Java methods. Hybrid-DeepCom applies Natural Language Processing (NLP) techniques to …
Automatic Query Reformulation For Code Search Using Crowdsourced Knowledge,
2019
Singapore Management University
Automatic Query Reformulation For Code Search Using Crowdsourced Knowledge, Mohammad M. Rahman, Chanchal K. Roy, David Lo
Research Collection School Of Computing and Information Systems
Traditional code search engines (e.g., Krugle) often do not perform well with natural language queries. They mostly apply keyword matching between query and source code. Hence, they need carefully designed queries containing references to relevant APIs for the code search. Unfortunately, preparing an effective search query is not only challenging but also time-consuming for the developers according to existing studies. In this article, we propose a novel query reformulation technique–RACK–that suggests a list of relevant API classes for a natural language query intended for code search. Our technique offers such suggestions by exploiting keyword-API associations from the questions and answers …
A Compiler Target Model For Line Associative Registers,
2019
University of Kentucky
A Compiler Target Model For Line Associative Registers, Paul S. Eberhart
Theses and Dissertations--Electrical and Computer Engineering
LARs (Line Associative Registers) are very wide tagged registers, used for both register-wide SWAR (SIMD Within a Register )operations and scalar operations on arbitrary fields. LARs include a large data field, type tags, source addresses, and a dirty bit, which allow them to not only replace both caches and registers in the conventional memory hierarchy, but improve on both their functions. This thesis details a LAR-based architecture, and describes the design of a compiler which can generate code for a LAR-based design. In particular, type conversion, alignment, and register allocation are discussed in detail.
