Open Access. Powered by Scholars. Published by Universities.®

Articles 1 - 9 of 9

Full-Text Articles in Programming Languages and Compilers

Processj: A Process-Oriented Programming Language, Matthew Sowders Dec 2011

Processj: A Process-Oriented Programming Language, Matthew Sowders

UNLV Theses, Dissertations, Professional Papers, and Capstones

Java is a general purpose object-oriented programming language that has been widely adopted. Because of its high adoption rate and its lineage as a C-style language, its syntax is familiar to many programmers. The downside is that Java is not natively concurrent. Volumes have been written about concurrent programming in Java; however, concurrent programming is difficult to reason about within an object-oriented paradigm and so is difficult to get right.

occam -π is a general purpose process-oriented programming language. Concurrency is part of the theoretical underpinnings of the language. Concurrency is simple to reason about within an occam -π application …


Amibe: An Imperative Programming Language With First Class Continuations, Yuting Wang Aug 2011

Amibe: An Imperative Programming Language With First Class Continuations, Yuting Wang

Master's Theses

A continuation represents the future of an execution. It is often used as an intermediate representation(IR) to compile functional programming languages, make control flow explicit and full beta-reduction(function inlining) possible. Continuations are also a language feature that gives user the ability to completely control the execution control flow(first class continuation). Efficient implementation of first class continuation is important for languages that need non-determinism and backtracking(e.g., COMET). We present a prototype imperative programming language with first class continuation -- AMIBE. AMIBE uses the LLVM compiler infrastructure which is attractive for its optimizing tools and overall modern organization. However, LLVM does not …


Roaming Region For Delaunay Triangulation, Romas James Hada Aug 2011

Roaming Region For Delaunay Triangulation, Romas James Hada

UNLV Theses, Dissertations, Professional Papers, and Capstones

Delaunay graphs have been used in CAD/CAM, sensor network and geographic information systems. We investigate the reliability properties of nodes in Delaunay graphs. For measuring the reliability we formulate the concept of roaming-region for nodes. A node v with large roaming-region r(v) such that v is positioned near the center of r(v) is identified as a reliable node. We develop algorithms for constructing roaming-regions and present an implementation of the proposed algorithm in the Java programming language.


Combinational Circuit Obfuscation Through Power Signature Manipulation, Hyunchul Ko Jun 2011

Combinational Circuit Obfuscation Through Power Signature Manipulation, Hyunchul Ko

Theses and Dissertations

Today's military systems are composed of hardware and software systems, many of which are critical technologies, and must be protected to ensure our adversaries cannot gain any information from a various analysis attacks. Side Channel Analysis (SCA) attacks allow an attacker to gain the significant information from the measured signatures leaked by side-channels such as power consumption, and electro-magnetic emission. In this research the focus on detecting, characterizing, and manipulating the power signature by designing a power signature estimation and manipulation method. This research has determined that the proposed method capable of characterizing and altering the type of power signature …


Parallelizing Scale Invariant Feature Transform On A Distributed Memory Cluster, Stanislav Bobovych May 2011

Parallelizing Scale Invariant Feature Transform On A Distributed Memory Cluster, Stanislav Bobovych

Computer Science and Computer Engineering Undergraduate Honors Theses

Scale Invariant Feature Transform (SIFT) is a computer vision algorithm that is widely-used to extract features from images. We explored accelerating an existing implementation of this algorithm with message passing in order to analyze large data sets. We successfully tested two approaches to data decomposition in order to parallelize SIFT on a distributed memory cluster.


Model-Controller Interfacing Using Struts-Based Web Application, Deepti Bhardwaj Apr 2011

Model-Controller Interfacing Using Struts-Based Web Application, Deepti Bhardwaj

Master's Projects

StrutsHib IDE is an IDE for interfacing the model and controller of a MVC architecture based applications. It is developed using Java-based technologies such as the Struts framework, Hibernate and jQuery. The StrutsHib IDE is a web application. This project implements the part of StrutsHib IDE that makes it easy to create model and controller components. Moreover, it automates the process of database creation for web applications which means the user does not have to be a database expert when dealing with databases. Finally, StrutsHib IDE takes all the advantages of a web-based application and provides lot of flexibility to …


Decompiler For Pseudo Code Generation, Ankit Patel Apr 2011

Decompiler For Pseudo Code Generation, Ankit Patel

Master's Projects

Decompiling is an area of interest for researchers in the field of software reverse engineering. When the source code from a high-level programming language is compiled, it loses a great deal of information, including code structure, syntax, and punctuation.
The purpose of this research is to develop an algorithm that can efficiently decompile assembly language into pseudo C code. There are tools available that claim to extract high-level code from an executable file, but the results of these tools tend to be inaccurate and unreadable.
Our proposed algorithm can decompile assembly code to recover many basic high-level programming structures, including …


An Executable Packer, Neel Bavishi Apr 2011

An Executable Packer, Neel Bavishi

Master's Projects

This thesis addresses the topic of development and advancement of the Packer technology. It aims to prove that with the implementation of advanced code encryption and cryptographic techniques in conjunction with standard packing
methods, testing binaries with anti-virus will become increasingly difficult.
Study on this topic reveals that the idea of encoding data has already been established, but it is still not fully incorporated into a technique to pack an executable file. There are some noticeable defects as un-packer tools have also made a great advancement in the field of dynamic analysis. The addition of new capability to recognize emulation …


Jshield: A Java Anti-Reversing Tool, Deepti Kundu Mar 2011

Jshield: A Java Anti-Reversing Tool, Deepti Kundu

Master's Projects

Java is a platform independent language. Java programs can be executed on any machine, irrespective of its hardware or the operating system, as long as a Java virtual machine for that platform is available. A Java compiler converts the source code into „bytecode‟ instead of native binary machine code. This bytecode contains a lot of information from and about the source code, which makes it easy to decompile, and hence, vulnerable to „reverse engineering attacks‟. In addition to the obvious security implications, businesses and the wider software engineering community also risk widespread IP theft - proprietary algorithms, for example, that …