CV, Teaching Evaluations, Annual Reports, Awards and Grant Proposals

Size: px
Start display at page:

Download "CV, Teaching Evaluations, Annual Reports, Awards and Grant Proposals"

Transcription

1 CV, Teaching Evaluations, Annual Reports, Awards and Grant Proposals Contents CV Teaching Evaluations Annual Evaluations Awards This category contains different awards including but not limited to: - TA awards - Best paper awards - College of Engineering 2008/2009 Best Teacher of the Year award Grant Proposals Submitted (Funded and Non-funded) Current Projects: - ProcessJ (formerly Joccam) a new process oriented language.

2 Curriculum Vitæ Jan Bækgaard Pedersen School of Computer Science Phone: (702) University of Nevada, Las Vegas Fax: (702) South Maryland Parkway Las Vegas, NV, Web: (Home address) 8399 Transvaal Blue Street Phone: (702) Las Vegas, NV Cell: (702) Area of Research Primary area of research is parallel programming. This includes tools for developing parallel programs, in particular message passing programs, tools for debugging message passing programs, parallel and distributed algorithms and language and compiler support for parallel and distributed programming. Other areas of interest include programming language design, compiler construction and optimization and runtime environments. In addition I am very interested in applying parallel programming techniques to the field of graphics, in particular, developing algorithms and programs for utilizing clusters for obtaining fast performance of time consuming tasks. Education Ph.D. student, Department of Computer Science, University of British Columbia. Supervisor: Dr. Alan Wagner M.Sc. (Cand. Scient.) degree in computer science, B.Sc. in computer science, B.Sc. in Mathematics, Department of Computer Science at the Institute of Mathematics, University of Århus, Denmark. Supervisor: Dr. Peter Møller-Nielsen Work Experience University of Nevada, Las Vegas Oct Present Assistant Professor, University of Nevada, Las Vegas. In charge of the area of programming language. CSC 326 Programming Languages (Fa04, Fa05, Sp08, Fa08, Sp09) CSC 460 Compilers (Sp04, Sp05, Sp06, Fa06, Sp07, Fa07, Sp08, Sp09) CSC 465 Networks (Sp05, Sp06) CSC 489 Network and Distributed Systems (Sp07) CSC 789 Multiprocessor Programming (Fa04, Fa06, Fa08) CSC 789 Multiparadigmatic Programming (Fa07)

3 University of British Columbia Summer 2000, Summer 2001, Summer 2002 Spring 2003 Lecturer in computer science, CPSC 124 Principles of Computer Science I Lecturer in computer science, CPSC 218 Computer Organization Lecturer in computer science, CPSC 124 Principles of Computer Science I Summer 2003 Lecturer in computer science, CPSC 128 Summer 2003 Lecturer in computer science, CPSC 126 Fall 2002 Fall Present Member of the curriculum development committee. Teaching assistant (Giving tutorials, marking, making assignments, etc.): CPSC 122 Principles of Computer Programming CPSC 124 Principles of Computer Science I CPSC 126 Principles of Computer Science II CPSC 128 Principles of Computer Science CPSC 152 Principles of Software Development CPSC 218 Computer Organization CPSC 311 Definition of Programming Languages CPSC 318 Machine Structures CPSC 411 Introduction to Compiler Construction CPSC 416 Distributed Systems CPSC 418 Advanced Computer Architectures CPSC 520 Language Translation and Analysis Twinsoft/Tele Danmark (TDC) Feb Aug System consultant (SQL, Databases, Scripting) University of Århus Sep Dec Teaching assistant in computer science (Giving labs and tutorials): Distributed systems (4th year), Introduction to programming (1st year), Algorithms and data structures (1st year) Contract Software Development. Sep Dec software). Midtjydsk Revisions Kontor (Time management and billing Herning Taxa (Taxi route planning software). Midtjydsk Autoophug (Inventory and accounting software). Midtjydsk Autokøler Værksted (Production planning software). Scholarships and Awards Spring 2009 Sep Aug Sep & Sep Jun Best teacher of the College of Engineering, UNLV. Tuition scholarship by the Danish Research Academy. Travel support by the World Transputer User Group (WOTUG) Travel support by the North American Transputer User Group

4 Sep Aug Jun Sep (NATUG) and by the PDPTA conference. Tuition scholarship by the Danish Research Academy. Travel support by the North American Transputer User Group (NATUG). Scholarship by Randers Reb & The Jensen Family Memorial Foundation. Refereed Journal Papers Santa Claus Formal Analysis of a Process Oriented Solution, Peter H. Welch, Jan B. Pedersen in Transactions of Programming Languages and Systems; accepted with minor revisions. Estimating the Free Region of a Sensor Node, Laxmi Gewali, Navin Rongratana, Jan B. Pedersen, in Journal of Combinatorical Mathematics and Combinatorical Computing. Random Number Generators: Metrics and Tests for Uniformity and Randomness, Angelo Yfantis and Jan B. Pedersen, in Journal of Combinatorial Mathematics and Combinatorial Computing. Free Regions of Sensor Nodes. Laxmi Gewali, Navin Rongatana, Henry Selveraj, Jan B. Pedersen, in Journal of Systems Science. Approximating the Buffer Allocation Problem Using Epochs. Jan B. Pedersen, Alex Brodsky, Jeffrey Sampson. in Journal of Parallel and Distributed Computing, Vol. 68, No. 9 (September 2008), pages On the Complexity of Buffer Allocation in Parallel Message Passing Systems. Alex Brodsky, Jan B. Pedersen and Alan Wagner, Journal of Parallel and Distributed Computing, Vol. 65, No. 5. (June 2005) pp Refereed Conference Papers Resumable Java Bytecode Process Mobility in ProcessJ for the JVM, Jan B. Pedersen, Brian Kauke, to appear in proceedings of Communicating Process Architectures (CPA 09), Eindhoven, Holland, November 1-4, Asynchronous Active Objects in Java. George Oprean and Jan B. Pedersen in the proceedings of Communicating Processes Architectures 2008 (CPA'08), York, United Kingdom, September 7-10, pp Solving the Santa Claus Problem: A Comparison of Various Concurrent Programming Techniques. Jason L. Hurt and Jan B. Pedersen in the proceedings of Communicating Processes Architectures 2008 (CPA'08), York, United Kingdom, September 7-10, pp Approximating the Buffer Allocation Problem Using Epochs, Jan B. Pedersen and Alex Brodsky. To appear in proceedings of Parallel and Distributed Computing and Systems (PDC 2006), Dallas, Texas, USA, November [Best paper in the algorithms category] Classification of Programming Errors in Parallel Message Passing Systems, Jan B. Pedersen, Proceedings of Communicating Process Architectures (CPA 2006), Edinburgh, Scotland, September , pp IDLI: An Interactive Message Debugger for Parallel Programs using LAM-MPI, Hoimonti Basu and Jan B. Pedersen, in Proceedings of the International Conference on Parallel and Distributed Techniques and Applications (PDPTA 2006), Las Vegas, Nevada, USA, June Millipede: A Multilevel Debugging Environment for Distributed Systems. Erik H. Tribou and Jan B. Pedersen, Proceedings of the International Conference on Parallel and Distributed Processing Techniques (PDPTA 2005), Las Vegas, Nevada, June 2005, pp

5 A Parallel Framework For Simplification of Massive Meshes. Dmitry Brodsky and Jan B. Pedersen, Proceedings of IEEE Symposium of Parallel and Large-Data Visualization and Graphics. Seattle On the Complexity of Buffer Allocation in Message Passing Systems, Alex Brodsky, Jan B. Pedersen and Alan Wagner, in Proceedings of Communicating Process Architectures (CPA 2002), Reading, United Kingdom, September 2002, pp Parallel Model Simplification of Very Large Polygonal Meshes, Dmitry Brodsky and Jan B. Pedersen, in Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2002), Las Vegas, Nevada, June 24-27, Protocol Verification in Millipede, Jan B. Pedersen and Alan Wagner, in Proceedings of Communicating Process Architectures (CPA 2001), Bristol, United Kingdom, August 2001, pp Compiling, Assembling and Executing Java Using Java, Jan B. Pedersen and Alan Wagner, in Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2001), Las Vegas, Nevada, June 25-28, 2001, pp Correcting Errors in Message Passing Programs, Jan B. Pedersen and Alan Wagner, in Proceedings of the 6ht International Workshop on High Level Parallel Programming Models and Supportive Environments (HIPS 2001), San Francisco, California, April, 2001, pp Sequential Debugging of Parallel Message Passing Programs, Jan B. Pedersen and Alan Wagner, in Proceedings of the International Conference on Communications in Computing (CIC'2000), Las Vegas, Nevada, USA, June 26-29, 2000, pp PVM-Builder A Tool for Parallel Programming, Jan B. Pedersen and Alan Wagner, in Proceedings of the 5th International Euro-Par Conference, Toulouse, France, August/September 1999, pp Contract Software Development Sep Dec software). Midtjydsk Revisions Kontor (Time management and billing Herning Taxa (Taxi route planning software). Midtjydsk Autoophug (Inventory and accounting software). Midtjydsk Autokøler Værksted (Production planning software). Theses Multi Level Debugging of Parallel Message Passing Programs A Different Approach to Debugging Parallel Programs, Ph.D. Thesis, University of British Columbia. "PVMBuilder, et grafisk værktøj til parallel programmering" ( PVMBuilder, a Graphical Tool for Parallel Programming ), Masters Thesis, University of Aarhus, Presentations at Conferences Asynchronous Active Objects in Java. George Oprean and Jan B. Pedersen in the proceedings of Communicating Processes Architectures 2008 (CPA'08), York, United Kingdom, September 7-10, pp Approximating the Buffer Allocation Problem using Epochs, to be given at Parallel and Distributed Computing and Systems (PCDS 2006), Dallas, Texas, USA, November Classification of Programming Errors in Parallel Message Passing Systems, Communicating Process Architectures (CPA 2006), Edinburgh, Scotland, 2006.

6 IDLI: An Interactive Message Debugger for Parallel Message Passing Programs Using LAM_MPI, the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2006), Las Vegas, Nevada, June 26-29, Protocol Verification in Millipede, Communicating Process Architectures 2001, Bristol, United Kingdom, August Compiling, Assembling and Executing Java Using Java, the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2001), Las Vegas, Nevada, June 25-28, Correcting Errors in Message Passing Programs, the 6ht International Workshop on High Level Parallel Programming Models and Supportive Environments (HIPS 2001), San Francisco, California, April, Sequential Debugging of Parallel Message Passing Programs, the International Conference on Communications in Computing (CIC 2000), Las Vegas, Nevada, USA, June 26-29, PVM-Builder A Tool for Parallel Programming, the 5 th International Euro-Par Conference, August/September 1999, Toulouse, France. Misc. / Posters / Fringe Presentations Fringe: Santa Claus - with Mobile Reindeer and Elves, P. H. Welch and J. B. Pedersen, abstract published in in Communicating Process Architectures, 2008 (CPA'08), September 7-10, 2008, York, United Kingdom. Conferences Attended Communicating Process Architectures (CPA 2008), York, York, United Kingdom, September Communicating Process Architectures (CPA 2007), Guilford, Surry, United Kingdom, July 2007 Parallel and Distributed Computing and Systems (PDCS 2006), Dallas, Texas, USA, November 2006 Communicating Process Architectures (CPA 2006), Edinburgh, Scotland, September The International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2006), Las Vegas, Nevada, June, Communicating Process Architectures (CPA 2005), Eindhoven, Holland, September The International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2005), Las Vegas, Nevada, June, Communicating Process Architectures (CPA 2004), Oxford, United Kingdom, September The International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2004), Las Vegas, Nevada, June, Special Interest Group on Graphics (SIGGRAPH 2002), San Antonio, Texas, USA, July Communicating Process Architectures (CPA 2002), Reading, United Kingdom, September The International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2002), Las Vegas, Nevada, June 24-27, Communicating Process Architectures (CPA 2001), Bristol, United Kingdom, August 2001 The International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2001), Las Vegas, Nevada, June 25-28, 2001.

7 The 6ht International Workshop on High Level Parallel Programming Models and Supportive Environments (HIPS 2001), San Francisco, California, April, The International Conference on Communications in Computing (CIC 2000), Las Vegas, Nevada, USA, June 26-29, 2000 The 5 th International Euro-Par Conference, August/September 1999, Toulouse, France. Program Committees Communicating Process Architectures (CPA), 2004 (since 2007 member of the steering committee) Public Relations Officer for CPA (2008-) International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA), Referee The Journal of Supercomputing Journal of Parallel and Distributed Computing International Conference on Parallel and Distributed Processing Techniques and Applications Communicating Process Architectures Graduated Students Erik Tribou, M.Sc. Thesis. Millipede: A Graphical Tool for Debugging Distributed Systems With a Multilevel Approach (July 2005) Hoimonti Basu, M.Sc. Thesis. Interactive Message Debugger for Parallel Message Passing Programs Using MPI (November 2005) Kamesh Kanna, M.Sc. Thesis. Ubiquitous Health Monitoring System for Seniors, (May 2007) Jeffrey Sampson, M.Sc. Thesis. Implementation of the an approximation of the buffer allocation problem for MPI programs. (December 2007) George Oprean, M.Sc. Thesis. An Implementation of Active Objects in Java (May 2008) Research Grants Co-PI, college of Engineering Beowulf cluster grant ($500,000) 2008 Research Development Award ($10,000) Course Development During my time as untenured faculty at UNLV I have developed course material for 6 undergraduate and graduate courses. CSC 326 Programming Languages. Developed new curriculum including a 70 page assignment for developing a virtual machine for a Java like Language. CSC 460 Compiler Construction. Developed new curriculum including a 101 page assignment for developing a compiler for a Java like language using state of the art tools. CSC 465 Networks I. Developed new curriculum and assignments.

8 CSC 489 Networks and Distributed Systems. Develop curriculum and assignments as well as teaching it the first time it was offered. CSC 789 (Multiprocessor programming) CSC 789 (Multiparadigmatic programming) developed curriculum, handouts, and assignments for both of these courses, as well as taught them every time then have ever been taught.

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85 Grant Applications (Funded and Unfunded) Funded 2008: TITLE FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ PI OTHER PERCENTAGE 100% OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD $10,000 Language and Tool Development for Multi-core Architectures UNLV Research Development Award Develop and implement process oriented programming languages July 08/June : TITLE FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ CO-PI OTHER PERCENTAGE 33.33% OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD ~$500,000 College of Engineering Beowulf Cluster Federal Appropriations Build the College of Engineering Beowulf Cluster

86 Unfunded TITLE FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ OTHER PERCENTAGE 50% OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD $1,135,818 Affectively Intelligent Computing Federal Appropriation 2009 This project s main objective is to develop Affectively Intelligent Computer Applications that will measure its user s (i.e. a driver, student, or patient) physiological signals with non-invasive wearable computers and employ pattern recognition and neural network algorithms to analyze and classify those physiological signals into an emotional state. CO-PI Submitted in 2009 but prepared in 2008 TITLE FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ CO-PI OTHER PERCENTAGE 10-15% OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD $568,000 Opportunities and Challenges in Broadband Technology Federal Appropriation 2009 TITLE FUNDING AGENCY AIMS / GOAL OF GRANT NSF PI/CO-PI/ OTHER PERCENTAGE 50% OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD $378,559 Research Infrastructure for Multi-processor Beowulf Clusters Develop programming methodologies for multi-processor computers on a cluster. CO-PI TITLE FUNDING AGENCY AIMS / GOAL OF GRANT A Software Testing, Systems and Programming Languages Lab UNLV Research Infrastructure Program

87 CO-PI PI/CO-PI/ OTHER PERCENTAGE 33% OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD $53,867 Unfunded TITLE Microsoft FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ PI OTHER PERCENTAGE 25% OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD $307,674 An Acute Care Health Information System Smart health care information system and diagnosis. TITLE FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ OTHER PERCENTAGE 50% OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD $49,516 Cluster Computing with Multi-core Architectures UNLV Presidents Research Award Develop programming methodologies for multi-processor computers on a cluster. CO-PI 2007: TITLE FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ OTHER PERCENTAGE 100% OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD $10,000 New Debugging Techniques for State of the Art Message Passing Libraries New Investigator Award (UNLV) To support the development of new debugging techniques in message passing programming PI

88 TITLE FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ OTHER PERCENTAGE OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD TITLE FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ OTHER PERCENTAGE OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD New Debugging Techniques for State of the Art Message Passing Libraries Research and Development Award (UNLV) To support the development of new debugging techniques in message passing programming PI 100% $10,000 Unfunded A Software Testing and Usability Lab Presidents Research Awards (UNLV) Setup a software testing and usability lab in the school of computer science. CO-PI 25% $48, Unfunded TITLE FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ OTHER PERCENTAGE 33.33% OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD $53, A Software Testing, Systems, and Programming Languages Lab RIA (UNLV) Develop a lab focusing on research issues in software engineering, systems and programming languages. CO-PI 2006: TITLE FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ OTHER PERCENTAGE OF YOUR TIME CONTRIBUTION Multilevel debugging for state of the art message passing libraries UNLV New Investigator Award Develop new and novel debugging approaches in message passing programming. 100%

89 TERM OF GRANT Beginning/ End Dates TOTAL AWARD $15,000 TITLE FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ OTHER PERCENTAGE 50% OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates TOTAL AWARD $100,000 Teaching Without Board(er)s: A proof of concept classroom for the Nevada State University System Microsoft Tablet PC Grant Develop new and innovative methods for teaching using a high tech class room setup centered around the use of projectors and Tablet PCs Rene Bryce TITLE FUNDING AGENCY AIMS / GOAL OF GRANT PI/CO-PI/ OTHER PERCENTAGE OF YOUR TIME CONTRIBUTION TERM OF GRANT Beginning/ End Dates CAREER: Development and Debugging Methodologies for Message Passing Programming NSF Develop new and novel debugging approaches in message passing programming. 100%? TOTAL AWARD Requested $654,000 Received $0

90 Back to my main page The Joccam Language Joccam (Java-style Occam) is a brand new language which fuses two very important features from two existing programming languages: The process orientated design methodology (including channels, barriers, mobile processes etc.) from occam [] and the well known syntax of Java []. The reason for the development of Joccam is mainly to try to push process oriented development. We believe that process orientation is the best way to program fine graine parallelism; especially when dealing with multi-core architectures, which are becoming increasingly popular. The design of Joccam follows the following simple thesis: Attempt to provide the functionality of occam-pi but use a Java style (i.e., 100% match java if possible, else ado the Java style for new constructs). With the popularity of multi-core architectures this naturally remains a target for a proc oriented language like Joccam, but in addition, we intend to provide multiple back-ends the compiler; in particular, we are working on a C with MPI code generator, which lets y take advantage of process oriented design principles and language features as well as a distributed runtime environment. Other targets that are planned include java bytecode f portability reasons. Please check back regularly as we will be updating this page as we progress. This work is supported by the UNLV Research Development Award Joccam Examples Although the development of Joccam is still in its early stages, the syntax is more or less determined. Here is an example of a piece of occam code with an ALT and an extended rendez-vous: PROC foo(chan OF INT in1?, CHAN OF INT in2?, CHAN OF INT out!) SEQ ALT INT y: in1? y out! y INT y: in2? y out! y INT y: in1?? y out! y : which in Joccam would look like this:

91 proc void foo(chan<int>.read in1, chan<int>.read in2, chan<int>.write out int y; alt { y = in1.read() : { out.write(y); } y = in2.read() : { out.write(y); } } y = in1.read({ out.write(y); }); } The Joccam code is much closer to the well-known Java syntax, and in addition to havin } constructs, the keywords are no longer set in capitals, and indentation no longer matte We believe that this will prove to be a good motivator for learning process oriented desi and programming. 2 The building blocks of Joccam 2.1 Data Types In the spirit of keeping Joccam close to Java with respect to syntax, we have chosed to u the Java atomic type system, rather than that of occam Atomic Types In Java, the atomic types are: boolean, byte, short, char, int, float, long, double. Joccam uses the same names, but in addition, string is an atomic type (Joccam does not have the notion of objects, and since Java implements strings as an object, this seemed necessary). In addition to the regular atomic types, Joccam has an additional number (currently 2) o atomic types inherited from occam. The first is a timer type, which in reality is the read end of a timing process that is always willing to engage in communication. The second is barrier type, which is a special construct that defines a full barrier. Processes enrolled (using the keyword enroll, which can be prefixed by a par or a for-loop, if needed) on a barrier can synchronize on it by using the sync keyword Type constructors Java has but two type constructors, namely classes and arrays. Since Joccam is not objec oriented we do not have the notion of classes or objects, but we do have arrays; arrays i Joccam look and behave similarly to their Java cousins. Only a few differences exist: The syntax for declaring a Joccam array requires the [..] to be placed on the type an not on the name of the variable/parameter. Empty dimensions are allowed only on parameters or on variables if assigned an arra value whose dimensions can be determined at compile time. Java only allows for array constants at variable declaration time. Joccam treats arra

92 constants like any other constant. A number of useful array operations like size must be made available; we haven't determined if a size of an array should be accessed as s = array.size or as s = size(array) At the moment the first one is favoured. occam implements array slicing, we have not yet determined if we are going to supp this in Joccam. Eecordsare not found in Java (Records can be implemented as classes without any methods), but since we do not have classes in Joccam, it is necessary to have at least records available. An example of a record ld be: type record myrecord { int a; double d; } Like arrays, records constant values. An example of a constant value of the above record could be myrecord{4, 5.7} An additional two type constructors exist, namely protocol and process types. A protocol determines which types a channel can carry; We have not determined the exact syntax f protocols as of yet. a process type, or a proc type looks like this: type proc is (...); where... is a list of formal parameters of a process definition. A process definition is needed when implementing mobile processes, not only for specifying that a mobile proce declarations 'implements' this process type, but also for specifying the type that travels across the channels that will carry the mobile when it is in its suspended state (i.e., not executing). Room for discussion: arrays are not declared using the type word array, whereas record are. 2.2 Declarations Constants In Java the concept 'constant' does not exist explicitly; instead, a final field cannot be assigned to, so in effect, it behaves like a constant; However, it is not possible to declar local constants within a method. In occam a constant is prefixed the keyword VAL; VAL constants can be local as well as parameters.

93 In Joccam we have decided to call a spade a spade and simply use the word const. Constants can be declared at the top level, along with the type declarations; as well as b formal parameters, and local. If a constant is defined locally or globally it must be intialized at declaration time: const int WORKING_TIME = ; whereas when used as a formal we could have: proc void foo(const int i) {... } Local and Parameters A local or a parameter in Joccam is declared in the exact same was as in Java: [<modifiers>] <type> [<array_dims>] name [ = initializer] where currently the only two modifiers we have are const, used for declaring a constant (which then requires the initializer to be present), and mobile used to declare the variab as holding a mobile type Channel Declarations Channels are a new concept not found in Java, but plays an integral role in occam, and f that matter, in any process oriented design. A channel carries values of a certain type in one direction, from or or more senders to one or more receivers (channels can be one-to one, one-to-many, many-to-one, or many-to-many). If a channel is has many senders or many receivers (or both) was say that it is shared. When declaring channels we must declare which end of it is shared, and also specify the type that it carries. For example: shared write chan<agent_message> report declares a channel called report, which carries values of the Agent_message type, and is shared on the writing end (i.e., it can have multiple writers. When a channel is declared shared, it must be claimed by a process before it can be written to/read from. (More abo claim later) In addtion, we have channel-end types and expressions as well. A channel-end type is simply a channel type followed by a.read or a.write, indicating which end of a channel type we are interested in. Likewise, if a variable contains a whole channel, and not just channel-end,.read and.write can be specified. If a read() operation is applied to a wh channel, the read end is automatically picked. The same holds for the write() operation 2.3 Statements In the tradition of keeping the syntax as close to Java as possible, the majority of statements in Joccam have the same syntactical structure as statements in Java. Assignment

94 Java alows assignment like a = b = c = 6;, and occam allows assignments like a,b,c 7,5,d. Either type can cause aliasing problems, but at the moment Joccam only supports a single assignment per =, though we will probably end up supporting both types of assignment, but not a mixture (That would probably not be syntactically via anyhow!). Choice Joccam will support Java-style if statements, both with and without an else clause. Whether a ternary exspression will be supported has not yet been determined. We might introduce an elseif keyword, but that is only a thought at the moment. Java-style switch/case statements will be implemented in Joccam, and in addition w might implement the case statement of occam that allows to switch on a channel re The extension to Java's switch statement then would require that the case labels can be not only integral constants, but also union constants. Repetition Java currently has standard for, do, and while loops, in addition to iterators. Joccam will implement do and while loops according to the standard Java syntax; for loops a a little more difficult as the occam equivalent is somewhat different in that a for lo can be prefixed with the par construct, allowing for the body of the loop to be done parallel. This would ultimately require some analysis of the body of the loop, or a pr execution of the loop to determine the index set. This is only possible if the body of the loop cannot change the variables that are used in the loop condition. Since we d not allow global variables, and use a call-by-value call semantics, it should be reasonbly simple analyze the assignments of the body to assure that if the loop is to executed in parallel no loop variables may be re-assigned. An example of how to do this has been provided by Neil Brown and works as follows: par for (i=,j=0;i<100;i+=2,j=j+2*i) statements would require the index set (i,j) = [(0,0), (2,4), (4,12)...] to be pre-computed, and then the statements executed in parallel over this index se As far as iterators, we have not made any decissions at all. Blocks and par occam provides both a PAR and a SEQ construct. Examples are: SEQ a := 5 b := 7 and PAR a := 5 b := 7

95 whe the assignments in the SEQ block are done in sequence (i.e., sequentially), and assignments in the PAR block are done in parallel. In Joccam there is no need for the SEQ construct, as by default, everything is done sequentially, so a simple Java block using { and } is sufficient. In Joccam a block prefixed by the par keyword will be a parallel block. Communication The notion of channel communication does not exist in Java; this is 100% inherited from occam. Thus this requires a brand new Java-like syntax. In occam a channel ca be read or written in the following way: in? x out! x The first statement reads a value from the in channel into x and the second writes t same value to the out channel. The suggested syntax for joccam is as follows: x = in.read(); out.write(x); Though Joccam does not have objects, we chose this 'method invocation' style to sta close to something Java programmers know. Extended rendez-vous in occam (a construct where the writer/sender is not released from the synchronous call until the code in the extended rendez-vous block has been executed) look like this (If more than one process must be executed in the rendez-v block a PAR or a SEQ block is needed): in?? x SEQ out! x out! x this, in Joccam, would look like this: x = in.read({out.write(x); out.write(x);}); Alternatively the rendez-vous block could be prefixed a par. Barriers A barrier in occam is an atomic typed, and also so in Joccam. Barriers are declared, enrolled on, synchronizes on and temporarily resigned from in he following way: barrier b;... enroll(b) { };... sync(b);...

96 resign(b) { }; Alternatively a par can be placed infront of the enroll statement. Barriers can also b passed as parameters to function. skip and stop Both skip (which is a no-operations process), and stop (which is a process that refus to engage in any action, thus deadlocking the process) exist only in occam. Typically skip can be replaced by a ; in Java, but both are statements in Joccam. Mobile invocation, suspension, and resumption The concept of mobiles does not exist in Java, but is the latest extension to occam- There are two classes of mobiles: mobile channels and mobile processes. For now we shall restrict Joccam to have mobile processes, and we will later return to the mobil channels (and mobile channel bundles, as well as issues with arrays of mobile). 2.4 Expressions Expressions in Joccam (except the addition of channel reads and timer reads) are similar Java expression. 3 Modularity 4 I/O For Joccam to be a proper language some sort of modularity and import/include mechanism must be provided. The Java package model is slightly complicated to implement, and relies somewhat on the object oriented aspects of the language. Occam uses an include statement on a per file basis; something is much easier to implement. Fo joccam we shall stick to the occam way and simply include files as needed. To come later 5 Java Call Backs To come later 6 Multiple Back-ends Currently we have a occam and a c with MPI back-end in the works.

Curriculum Vitæ. (Home address) 8399 Transvaal Blue Street Phone: (702) Las Vegas, NV Cell: (702)

Curriculum Vitæ. (Home address) 8399 Transvaal Blue Street Phone: (702) Las Vegas, NV Cell: (702) Curriculum Vitæ Jan Bækgaard Pedersen School of Computer Science Phone: (702) 895 2557 University of Nevada, Las Vegas Fax: (702) 895 2639 4505 South Maryland Parkway Email: matt@cs.unlv.edu Las Vegas,

More information

User Manual. (C) 2010, Matt Pedersen, Matthew Sowders, Brian Kauke, Jason Hurt, Sean Kau

User Manual. (C) 2010, Matt Pedersen, Matthew Sowders, Brian Kauke, Jason Hurt, Sean Kau User Manual (C) 2010, Matt Pedersen, Matthew Sowders, Brian Kauke, Jason Hurt, Sean Kau 1 1 Introduction to ProcessJ 2 Primitive Processes 2.1 Assignment ProcessJ, like occam is a process oriented language,

More information

The Distributed Application Debugger

The Distributed Application Debugger Communicating Process Architectures 2013 P.H. Welch et al. (Eds.) Draft, 2013 c 2013 The authors. All rights reserved. 1 The Distributed Application Debugger Michael Quinn JONES 1, Jan Bækgaard PEDERSEN

More information

ACADEMIC AFFAIRS COUNCIL ******************************************************************************

ACADEMIC AFFAIRS COUNCIL ****************************************************************************** ACADEMIC AFFAIRS COUNCIL AGENDA ITEM: 4.D.4 DATE: February 25, 2010 ****************************************************************************** SUBJECT: Intent to Plan Joint Proposal, DSU & SDSU MS

More information

DELIVERY OF MULTIMEDIA EDUCATION CONTENT IN COLLABORATIVE VIRTUAL REALITY ENVIRONMENTS

DELIVERY OF MULTIMEDIA EDUCATION CONTENT IN COLLABORATIVE VIRTUAL REALITY ENVIRONMENTS DELIVERY OF MULTIMEDIA EDUCATION CONTENT IN COLLABORATIVE VIRTUAL REALITY ENVIRONMENTS Tulio Sulbaran, Ph.D 1, Andrew Strelzoff, Ph.D 2 Abstract -The development of Collaborative Virtual Reality Environment

More information

John Clements Department of Computer Science Cal Poly State University 1 Grand Street San Luis Obispo, CA (805)

John Clements Department of Computer Science Cal Poly State University 1 Grand Street San Luis Obispo, CA (805) Curriculum Vitae Contact Information Education John Clements Department of Computer Science Cal Poly State University 1 Grand Street San Luis Obispo, CA 93407 (805)756-6528 clements@brinckerhoff.org 2005

More information

HAI ZHOU. Evanston, IL Glenview, IL (847) (o) (847) (h)

HAI ZHOU. Evanston, IL Glenview, IL (847) (o) (847) (h) HAI ZHOU Electrical and Computer Engineering Northwestern University 2535 Happy Hollow Rd. Evanston, IL 60208-3118 Glenview, IL 60025 haizhou@ece.nwu.edu www.ece.nwu.edu/~haizhou (847) 491-4155 (o) (847)

More information

North Dakota State University Fargo, ND Ph.D. in Software Engineering Emphasis area: Security Requirements Engineering

North Dakota State University Fargo, ND Ph.D. in Software Engineering Emphasis area: Security Requirements Engineering Josh Pauli, Ph.D. EDUCATION North Dakota State University Fargo, ND Ph.D. in Software Engineering 2003-2006 Emphasis area: Security Requirements Engineering Dakota State University Madison, SD M.S. in

More information

Dr. Ahmed K. Sadek 2. Experience

Dr. Ahmed K. Sadek 2. Experience Dr. Ahmed K. Sadek Education University of Maryland, College Park Ph.D. in Electrical and Computer Engineering, GPA = 4.0/4.0, May 2007 Thesis title: Cross-Layer Design for Cooperative Communications and

More information

Mobile Process Resumption In Java Without Bytecode Rewriting

Mobile Process Resumption In Java Without Bytecode Rewriting Mobile Process Resumption In Java Without Bytecode Rewriting Matthew Sowders University of Nevada, Las Vegas Las Vegas, Nevada 89154 E-mail: sowders@unlv.nevada.edu Jan Bækgaard Pedersen University of

More information

Mohamed Mahmoud Mahmoud Azab. Education: Ongoing research:

Mohamed Mahmoud Mahmoud Azab. Education: Ongoing research: Mohamed Mahmoud Mahmoud Azab -Assistant Prof., Informatics Research Institute, The City of Scientific Research & Technology Applications, Alexandria-Egypt. - Researcher, VT-MENA research center of Excellence,

More information

IDLI: An Interactive Message Debugger for Parallel Programs using LAM-MPI

IDLI: An Interactive Message Debugger for Parallel Programs using LAM-MPI IDLI: An Interactive Message Debugger for Parallel Programs using LAM-MPI Hoimonti Basu School of Computer Science University of Nevada, Las Vegas Las Vegas, NV 89154 Email: hoimonti@yahoo.com Ph: 702-443-1538,

More information

CS Programming I: Arrays

CS Programming I: Arrays CS 200 - Programming I: Arrays Marc Renault Department of Computer Sciences University of Wisconsin Madison Fall 2017 TopHat Sec 3 (PM) Join Code: 719946 TopHat Sec 4 (AM) Join Code: 891624 Array Basics

More information

EDUCATION RESEARCH EXPERIENCE

EDUCATION RESEARCH EXPERIENCE PERSONAL Name: Mais Nijim Gender: Female Address: 901 walkway, apartment A1 Socorro, NM 87801 Email: mais@cs.nmt.edu Phone: (505)517-0150 (505)650-0400 RESEARCH INTEREST Computer Architecture Storage Systems

More information

Shared Channels etc.

Shared Channels etc. Shared Channels etc. Peter Welch (p.h.welch@kent.ac.uk) Computing Laboratory, University of Kent at Canterbury Co631 (Concurrency) 30-Oct-06 Copyright P.H.Welch 1 A Few More Bits of occam-π SHARED channels

More information

CURRICULUM VITAE. June, 2013

CURRICULUM VITAE. June, 2013 CURRICULUM VITAE ד"ר אבי סופר Dr. Avi Soffer June, 2013 ORT Braude College, Department of Software Engineering, P.O. Box 78, Karmiel 2161002, Israel Telephone: +972-4-990-1720 Email: asoffer@braude.ac.il

More information

COMPOSABILITY, PROVABILITY, REUSABILITY (CPR) FOR SURVIVABILITY

COMPOSABILITY, PROVABILITY, REUSABILITY (CPR) FOR SURVIVABILITY AFRL-IF-RS-TR-2002-61 Final Technical Report April 2002 COMPOSABILITY, PROVABILITY, REUSABILITY (CPR) FOR SURVIVABILITY Kestrel Institute Sponsored by Defense Advanced Research Projects Agency DARPA Order

More information

Wireless Communications, Information Theory, Physical Layer Security, Cyber Security for Smart Grid, Cryptography, Network Coding.

Wireless Communications, Information Theory, Physical Layer Security, Cyber Security for Smart Grid, Cryptography, Network Coding. Mustafa El-Halabi Contact Information Fleifel Building Cell Phone: + (979) 422 4585 Mathaf E-mail: mhalabi@aust.edu.lb Beirut, Lebanon Webpage: https://mustafa-halabi.appspot.com/ Research Interests Education

More information

Design Principles for a Beginning Programming Language

Design Principles for a Beginning Programming Language Design Principles for a Beginning Programming Language John T Minor and Laxmi P Gewali School of Computer Science University of Nevada, Las Vegas Abstract: We consider the issue of designing an appropriate

More information

1.2 Applicant An individual applying for initial, upgraded, reciprocity or renewal by submission of a standard application to the administrator.

1.2 Applicant An individual applying for initial, upgraded, reciprocity or renewal by submission of a standard application to the administrator. WATER QUALITY LABORATORY ANALYST Rules Governing Certification Definitions: 2013 1 Definitions - These terms, as defined, apply explicitly to the California-Nevada Section of the American Water Works Association

More information

Jun Li, Ph.D. School of Computing and Information Sciences Phone:

Jun Li, Ph.D. School of Computing and Information Sciences Phone: Jun Li, Ph.D. School of Computing and Information Sciences Phone: + 1-305-348-4964 Florida International University Email: junli @ cs. fiu. edu 11200 SW 8th St, ECS 380, Miami, FL 33199 Web: http://users.cs.fiu.edu/

More information

TEXAS STATE VITA. A. Name: David L. Gibbs Title: Assistant Professor

TEXAS STATE VITA. A. Name: David L. Gibbs Title: Assistant Professor TEXAS STATE VITA I. Academic/Professional Background A. Name: David L. Gibbs Title: Assistant Professor B. Educational Background Degree Year University Major Thesis/Dissertation PhD 2015 Texas State University

More information

Master Course in Computer Science Orientation day

Master Course in Computer Science Orientation day Master Course in Computer Science Orientation day Info on the Department of Computer Science Ranked first (in its area) in 5-year Research Assessment by Ministry of University and Research 2013 e 2017

More information

Social Behavior Prediction Through Reality Mining

Social Behavior Prediction Through Reality Mining Social Behavior Prediction Through Reality Mining Charlie Dagli, William Campbell, Clifford Weinstein Human Language Technology Group MIT Lincoln Laboratory This work was sponsored by the DDR&E / RRTO

More information

The NIH Big Data to Knowledge Initiative: Raising the Prominence of Data

The NIH Big Data to Knowledge Initiative: Raising the Prominence of Data The NIH Big Data to Knowledge Initiative: Raising the Prominence of Data Michael F. Huerta, Ph.D. Associate Director, National Library of Medicine Director, Office of Health Information Programs Development

More information

3D Graphics Programming Mira Costa High School - Class Syllabus,

3D Graphics Programming Mira Costa High School - Class Syllabus, 3D Graphics Programming Mira Costa High School - Class Syllabus, 2009-2010 INSTRUCTOR: Mr. M. Williams COURSE GOALS and OBJECTIVES: 1 Learn the fundamentals of the Java language including data types and

More information

ProcessJ: A Possible Future of Process-Oriented Design

ProcessJ: A Possible Future of Process-Oriented Design Communicating Process Architectures 2013 P.H. Welch et al. (Eds.) Open Channel Publishing Ltd., 2013 2013 The authors and Open Channel Publishing Ltd. All rights reserved. 133 ProcessJ: A Possible Future

More information

Please consult the Department of Engineering about the Computer Engineering Emphasis.

Please consult the Department of Engineering about the Computer Engineering Emphasis. COMPUTER SCIENCE Computer science is a dynamically growing discipline. ABOUT THE PROGRAM The Department of Computer Science is committed to providing students with a program that includes the basic fundamentals

More information

An Object Oriented Runtime Complexity Metric based on Iterative Decision Points

An Object Oriented Runtime Complexity Metric based on Iterative Decision Points An Object Oriented Runtime Complexity Metric based on Iterative Amr F. Desouky 1, Letha H. Etzkorn 2 1 Computer Science Department, University of Alabama in Huntsville, Huntsville, AL, USA 2 Computer Science

More information

Multi-Paradigm Approach for Teaching Programming

Multi-Paradigm Approach for Teaching Programming Multi-Paradigm Approach for Teaching Laxmi P Gewali* and John T Minor School of Computer Science University of Nevada, Las Vegas 4505 Maryland Parkway, Las Vegas Nevada 89154 Abstract: Selecting an appropriate

More information

Michael Paul Neff Curriculum Vitae

Michael Paul Neff Curriculum Vitae Michael Paul Neff Curriculum Vitae ACADEMIC HISTORY... Assistant Professor (tenure track), University of California, Davis, 2006-. Cross-appointed to the Department of Computer Science and the Program

More information

This document/guide contains dated material; always check the ASMC website for the most recent information, policies, and other information.

This document/guide contains dated material; always check the ASMC website for the most recent information, policies, and other information. December 2010 CDFM OVERVIEW The American Society of Military Comptrollers offers the Certified Defense Financial Manager (CDFM) program to those persons desiring to demonstrate proficiency in the core

More information

The Santa Claus Problem In occam

The Santa Claus Problem In occam The Santa Claus Problem In occam CSC 789 Multiparadigmatic Programming (c) Matt Pedersen, 2007 1 1 The Santa Clause Problem The Santa Clause problem was originally described by John Trono as an exercise

More information

COURSE LISTING. Courses Listed. with ABAP Dialog Programming. 25 December 2017 (08:57 GMT) NW001 - SAP NetWeaver - Overview

COURSE LISTING. Courses Listed. with ABAP Dialog Programming. 25 December 2017 (08:57 GMT) NW001 - SAP NetWeaver - Overview with ABAP Dialog Programming Courses Listed NW001 - SAP NetWeaver - Overview SAPTEC - SAP NetWeaver Application Server Fundamentals BC100 - ( ABAP) BC100E - Introduction to Programming with ABAP BC400

More information

Gassan Abu Jumra Alsyad

Gassan Abu Jumra Alsyad Gassan Abu Jumra Alsyad PERSONAL INFORMATION Place & Date of Birth: Khartoum, 29 th May 1980 Nationality: Sudanese Marital Status: Single Passport NO: B0700506 Language : Arabic,English Current Address:

More information

University of Texas Administration Building Room Guadalupe Street Austin, TX Phone: (479)

University of Texas Administration Building Room Guadalupe Street Austin, TX Phone: (479) Islam Akef Ebeid University of Texas Administration Building Room 5.556 http://www.i3akef.com School of Information https://www.linkedin.com/in/i3akef University of Texas at Austin islam.akef@gmail.com

More information

Undergraduate Admission File

Undergraduate Admission File Undergraduate Admission File June 13, 2007 Information Resources and Communications Office of the President University of California Overview Population The Undergraduate Admission File contains data on

More information

RESUME WEI LI EDUCATION EMPLOYMENT RESEARCH INTERESTS HONORS AND AWARDS

RESUME WEI LI EDUCATION EMPLOYMENT RESEARCH INTERESTS HONORS AND AWARDS RESUME WEI LI Graduate School of Computer and Information Sciences Nova Southeastern University 3301 College Avenue, Fort Lauderdale-Davie, FL 33314 Office: (954) 262-2068 Fax: (954) 262-3915 Email: lwei@nova.edu

More information

Brian F. Cooper. Distributed systems, digital libraries, and database systems

Brian F. Cooper. Distributed systems, digital libraries, and database systems Brian F. Cooper Home Office Internet 2240 Homestead Ct. #206 Stanford University cooperb@stanford.edu Los Altos, CA 94024 Gates 424 http://www.stanford.edu/~cooperb/app/ (408) 730-5543 Stanford, CA 94305

More information

C LANGUAGE AND ITS DIFFERENT TYPES OF FUNCTIONS

C LANGUAGE AND ITS DIFFERENT TYPES OF FUNCTIONS C LANGUAGE AND ITS DIFFERENT TYPES OF FUNCTIONS Manish Dronacharya College Of Engineering, Maharishi Dayanand University, Gurgaon, Haryana, India III. Abstract- C Language History: The C programming language

More information

Nomair A. Naeem. Personal Data. Education. Teaching Experience. Course Instructor/Sessional

Nomair A. Naeem. Personal Data. Education. Teaching Experience. Course Instructor/Sessional Nomair A. Naeem Personal Data Address: E-mail: Web Page: David R. Cheriton School of Computer Science University of Waterloo 200 University Avenue West Waterloo, ON N2L 3G1, Canada nanaeem@uwaterloo.ca

More information

The CISM Education Plan (updated August 2006)

The CISM Education Plan (updated August 2006) The CISM Education Mission The CISM Education Plan (updated August 2006) The CISM Education Mission is to recruit and train the next generation of space physicists and imbue them with an understanding

More information

Diploma in Computer Science Computer Science Department, Faculty of Science, Sudan University of Science and Technology (SUST) First Class.

Diploma in Computer Science Computer Science Department, Faculty of Science, Sudan University of Science and Technology (SUST) First Class. RESUME of AWAD MOHD AWADELKARIM College of Computer Sciences & Information Technology Sudan University of Science & Technology P.O. Box 407 Khartoum, SUDAN Email: amawadelkarim@yahoo.com, awad@sustech.edu

More information

Extensible and Dynamic Data Structure Viewers in Java

Extensible and Dynamic Data Structure Viewers in Java Extensible and Dynamic Data Structure Viewers in Java Jhilmil Jain Computer Science and Software Engineering Department, Auburn University, Auburn AL Email: jainjhi@auburn.edu Problem & motivation Many

More information

COMPUTER SCIENCE (CSCI)

COMPUTER SCIENCE (CSCI) Bucknell University 1 COMPUTER SCIENCE (CSCI) Faculty Professors: Xiannong Meng, Luiz Felipe Perrone Associate Professors: Stephen M. Guattery (Chair), Brian R. King, Lea D. Wittie Assistant Professors:

More information

Preface A Brief History Pilot Test Results

Preface A Brief History Pilot Test Results Preface A Brief History In Fall, 2005, Wanda Dann and Steve Cooper, originators of the Alice approach for introductory programming (in collaboration with Randy Pausch), met with Barb Ericson and Mark Guzdial,

More information

A Java Execution Simulator

A Java Execution Simulator A Java Execution Simulator Steven Robbins Department of Computer Science University of Texas at San Antonio srobbins@cs.utsa.edu ABSTRACT This paper describes JES, a Java Execution Simulator that allows

More information

Estimating the Free Region of a Sensor Node

Estimating the Free Region of a Sensor Node Estimating the Free Region of a Sensor Node Laxmi Gewali, Navin Rongratana, Jan B. Pedersen School of Computer Science, University of Nevada 4505 Maryland Parkway Las Vegas, NV, 89154, USA Abstract We

More information

About the course.

About the course. 1 About the course www.sheffield.ac.uk/is Skills relevant to your career Our MSc in Information Systems provides you with the practical knowledge you need in the fastgrowing field of information systems.

More information

BOARD OF REGENTS ACADEMIC AFFAIRS COMMITTEE 4 STATE OF IOWA SEPTEMBER 12-13, 2018

BOARD OF REGENTS ACADEMIC AFFAIRS COMMITTEE 4 STATE OF IOWA SEPTEMBER 12-13, 2018 STATE OF IOWA SEPTEMBER 12-13, 2018 REQUEST FOR NEW PROGRAM AT IOWA STATE UNIVERSITY: BACHELOR OF SCIENCE IN CYBER SECURITY ENGINEERING Contact: Rachel Boon Action Requested: Consider approval of the request

More information

AGENDA ITEM REGULAR AGENDA

AGENDA ITEM REGULAR AGENDA Will be numbered by BOR office AGENDA ITEM REGULAR AGENDA Top: 1 in. Bottom: 1 in. Left: 1.5 in. Right: 1 in..5 in..5 in.. TTU: This is a simple, direct, description of the item to be considered and does

More information

AC : TEACHING A LABORATORY-BASED IPV6 COURSE IN A DISTANCE EDUCATION ENVIRONMENT

AC : TEACHING A LABORATORY-BASED IPV6 COURSE IN A DISTANCE EDUCATION ENVIRONMENT AC 2007-1962: TEACHING A LABORATORY-BASED IPV6 COURSE IN A DISTANCE EDUCATION ENVIRONMENT Philip Lunsford, East Carolina University Phil Lunsford received a B.S. in Electrical Engineering and a M.S. in

More information

CURRICULUM VITAE. Discipline University /Board Year % Secured. Indian Institute of Technology (IIT), Kharagpur. (NIT), Rourkela

CURRICULUM VITAE. Discipline University /Board Year % Secured. Indian Institute of Technology (IIT), Kharagpur. (NIT), Rourkela CURRICULUM VITAE Name: Dr. ASHOK KUMAR TURUK Personal Data : Position Held: Assistant Professor Department : Computer Science & Engineering Office Address : Dept. of Computer Science & Engineering. (NIT)

More information

A Total of 7 years of IT and Marketing Experience [6 years in Pakistan + 1 year in North Cyprus] in education and service industry.

A Total of 7 years of IT and Marketing Experience [6 years in Pakistan + 1 year in North Cyprus] in education and service industry. ASIM TANVIR Senior Lecturer/Program Coordinator IT Institute of Business and Information Technology University of the Punjab Lahore, Pakistan asim@ibitpu.edu.pk CAREER OBJECTIVE To implement the IT concepts

More information

Department of Computer Science

Department of Computer Science College of Science and Mathematics Department of Computer Science Dr. Vasil Hnatyshin Department Head Advising brochures also available online at: https://rucsm.org/cs/advising/brochures/ Fall 2017 Computer

More information

The JVMCSP Runtime and Code Generator for ProcessJ in Java

The JVMCSP Runtime and Code Generator for ProcessJ in Java UNLV Theses, Dissertations, Professional Papers, and Capstones August 2016 The JVMCSP Runtime and Code Generator for ProcessJ in Java Cabel Dhoj Shrestha University of Nevada, Las Vegas, shresc1@unlv.nevada.edu

More information

G Programming Languages Spring 2010 Lecture 6. Robert Grimm, New York University

G Programming Languages Spring 2010 Lecture 6. Robert Grimm, New York University G22.2110-001 Programming Languages Spring 2010 Lecture 6 Robert Grimm, New York University 1 Review Last week Function Languages Lambda Calculus SCHEME review 2 Outline Promises, promises, promises Types,

More information

Girija J. Narlikar Forbes Avenue girija

Girija J. Narlikar Forbes Avenue   girija Girija J. Narlikar CMU Computer Science Dept. girija@cs.cmu.edu 5000 Forbes Avenue http://www.cs.cmu.edu/ girija Pittsburgh, PA 15213 Phone: (412) 268-3337 [O] Fax: (412) 268-5576 (412) 802-0459 [H] Research

More information

Matthew Patrick Sopha Clinical Assistant Professor Department of Information Systems, W. P. Carey School of Business, Arizona State University

Matthew Patrick Sopha Clinical Assistant Professor Department of Information Systems, W. P. Carey School of Business, Arizona State University Matthew Patrick Sopha Clinical Assistant Professor Department of Information Systems, W. P. Carey School of Business, Office: BA 320A E-mail (Work): msopha@asu.edu W. P. Carey School of Business Phone

More information

Control Flow. COMS W1007 Introduction to Computer Science. Christopher Conway 3 June 2003

Control Flow. COMS W1007 Introduction to Computer Science. Christopher Conway 3 June 2003 Control Flow COMS W1007 Introduction to Computer Science Christopher Conway 3 June 2003 Overflow from Last Time: Why Types? Assembly code is typeless. You can take any 32 bits in memory, say this is an

More information

Curriculum Vitae. University, England, UK, Ph.D. Digital Computer Systems, Electronic Systems Design Department, Cranfield

Curriculum Vitae. University, England, UK, Ph.D. Digital Computer Systems, Electronic Systems Design Department, Cranfield Curriculum Vitae Name: Imad Hussain Merza Al-Hussaini Place of Birth: Basrah, Iraq Date of Birth: 22/11/1953 Religion: Muslim Nationality: Iraqi Marital Status: Married Contact Information: Mobile: +9647901943311/

More information

Robert A. Robertson Ph.D., CISSP, GCFE, GCFA, GCIA

Robert A. Robertson Ph.D., CISSP, GCFE, GCFA, GCIA Summary Rob began his technical career with Automatic Data Processing (ADP), in their Dealer Service Division. His position at ADP laid the foundation for his passion for finding solutions to business

More information

Revising the MSIS 2016 Model Curriculum : Status Update and Panel Discussion

Revising the MSIS 2016 Model Curriculum : Status Update and Panel Discussion Association for Information Systems AIS Electronic Library (AISeL) 2015 Proceedings SIGED: IAIM Conference 2015 Revising the MSIS 2016 Model Curriculum : Status Update and Panel Discussion Heikki Topi

More information

Programmers Life made easy through Smart Source Code Generator

Programmers Life made easy through Smart Source Code Generator International Journal of Engineering& Scientific Research Vol.5 Issue 4, April 2017, ISSN: 2347-6532 Impact Factor: 6.660 JournalHomepage:http://www.ijmra.us,Email:editorijmie@gmail.com Double-Blind Peer

More information

Extension theorems in vector spaces over finite fields Dr. Alex Iosevich. Journal reviewer for International Mathematics Research Notices.

Extension theorems in vector spaces over finite fields Dr. Alex Iosevich. Journal reviewer for International Mathematics Research Notices. Doowon Koh T (517) 353-6882 B koh@math.msu.edu Education Aug.2003 Dec.2008 Dissertation Dissertation Supervisor Mar.1998 Feb.2000 Thesis Advisor Mar.1991 Feb.1998 Feb.1993 Apr.1995 Ph.D in Mathematics,

More information

Implementing Sequential Consistency In Cache-Based Systems

Implementing Sequential Consistency In Cache-Based Systems To appear in the Proceedings of the 1990 International Conference on Parallel Processing Implementing Sequential Consistency In Cache-Based Systems Sarita V. Adve Mark D. Hill Computer Sciences Department

More information

COCHIN UNIVERSITY OF SCIENCE AND TECHNOLOGY

COCHIN UNIVERSITY OF SCIENCE AND TECHNOLOGY COCHIN UNIVERSITY OF SCIENCE AND TECHNOLOGY Name: Department: Contact Details: Address for communication Email Phone Intercom Academic Background Qualifications: Qualifying Post Graduate Degree: Ph. D

More information

Course Text. Course Description. Course Objectives. StraighterLine Introduction to Programming in C++

Course Text. Course Description. Course Objectives. StraighterLine Introduction to Programming in C++ Introduction to Programming in C++ Course Text Programming in C++, Zyante, Fall 2013 edition. Course book provided along with the course. Course Description This course introduces programming in C++ and

More information

Resume. Techniques. Mail ID: Contact No.: S.No. Position held Organisation From To. AU PG Center, Vizianagaram

Resume. Techniques. Mail ID: Contact No.: S.No. Position held Organisation From To. AU PG Center, Vizianagaram Resume Name: Designation: Qualifications: Subjects taught: Research specialization: Dr. M.Seshashayee Assistant Professor MCA, M.Tech, Ph.D. Programming In Java, Internet programming, Software Engineering,

More information

Syllabus Honors Java Programming 1 & 2

Syllabus Honors Java Programming 1 & 2 Syllabus Honors Java Programming 1 & 2 Instructor William Tomeo Phone (719) 328-2048 Office IT Lab 175 E-mail william.tomeo@d11.org Course Description: Honors Java Programming 1 This course engages students

More information

CS 231 Data Structures and Algorithms, Fall 2016

CS 231 Data Structures and Algorithms, Fall 2016 CS 231 Data Structures and Algorithms, Fall 2016 Dr. Bruce A. Maxwell Department of Computer Science Colby College Course Description Focuses on the common structures used to store data and the standard

More information

WELCOME. CAREER & TECHNICAL EDUCATION Beginning-of-Year Meeting August 12, Sponsored by : Miami Dade College Wolfson Campus

WELCOME. CAREER & TECHNICAL EDUCATION Beginning-of-Year Meeting August 12, Sponsored by : Miami Dade College Wolfson Campus WELCOME CAREER & TECHNICAL EDUCATION Beginning-of-Year Meeting August 12, 2014 Sponsored by : Miami Dade College Wolfson Campus WELCOME Introductions HTTP://DCTE.DADESCHOOLS.NET/NEW-SITE/CTEPROGRAMS.HTML

More information

ANNUAL PROGRAM REPORT. Multiple and Single Subject Credential Programs. Credential programs are not subject to 5 year reviews

ANNUAL PROGRAM REPORT. Multiple and Single Subject Credential Programs. Credential programs are not subject to 5 year reviews ACADEMIC SENATE Committee on Academic Planning and Review ANNUAL PROGRAM REPORT College Department Program CEAS Teacher Education Multiple and Single Subject Credential Programs Reporting for Academic

More information

Data Types. 9. Types. a collection of values and the definition of one or more operations that can be performed on those values

Data Types. 9. Types. a collection of values and the definition of one or more operations that can be performed on those values Data Types 1 data type: a collection of values and the definition of one or more operations that can be performed on those values C++ includes a variety of built-in or base data types: short, int, long,

More information

Jim Boyd.NET Senior Software Engineer Independent Contractor

Jim Boyd.NET Senior Software Engineer Independent Contractor Jim Boyd.NET Senior Software Engineer Independent Contractor Jim.Boyd@JBSystemConsulting.com Website: http://www.jbsystemconsulting.com Skill Set: Visual Studio and TFS (all versions),.net(vb and C#),

More information

BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus

BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus 1. Course Objectives Welcome to MET CS342 Data Structures with Java. The intent of this

More information

An Overview of Mobile Security

An Overview of Mobile Security An Overview of Mobile Security Dr. Fan Wu Professor, Department of Computer Science, College of Business and Information Science (CBIS) Director, Center of Information Assurance Education (CIAE) Interim

More information

Shin Hong. Assistant Professor Handong Global University (HGU) Pohang, Kyongbuk, South Korea (37554)

Shin Hong. Assistant Professor Handong Global University (HGU) Pohang, Kyongbuk, South Korea (37554) Shin Hong Assistant Professor hongshin@handong.edu +82-54-260-1409 School of Computer Science & Electrical Engineering 113 NMH, 558 Handong-ro, Buk-gu, Handong Global University (HGU) Pohang, Kyongbuk,

More information

Curriculum vitae. Tahsin Ferdous Ara Nayna. Working Experience

Curriculum vitae. Tahsin Ferdous Ara Nayna. Working Experience Curriculum vitae Tahsin Ferdous Ara Nayna E-mail: tahsin@iub.edu.bd Working Experience 1. Junior Lecturer [September 2014- Till Now] Course: EEE 131, ECR 101 (Electrical Circuit-I) & ECR 101L (Lab work

More information

Keywords: Teaching with analogy; analogy in textbook; mathematics education; teaching geometry; secondary education.

Keywords: Teaching with analogy; analogy in textbook; mathematics education; teaching geometry; secondary education. American International Journal of Research in Science, Technology, Engineering & Mathematics Available online at http://www.iasir.net ISSN (Print): 2328-3491, ISSN (Online): 2328-3580, ISSN (CD-ROM): 2328-3629

More information

AC : CONCEPTUAL DESIGN ENVIRONMENT FOR AUTOMATED ASSEMBLY LINE FRAMEWORK

AC : CONCEPTUAL DESIGN ENVIRONMENT FOR AUTOMATED ASSEMBLY LINE FRAMEWORK AC 2007-1539: CONCEPTUAL DESIGN ENVIRONMENT FOR AUTOMATED ASSEMBLY LINE FRAMEWORK Sheng-Jen Hsieh, Texas A&M University Dr. Sheng-Jen ( Tony ) Hsieh is an Associate Professor in the College of Engineering

More information

1 Course Title. 2 Course Organizer. 3 Course Level. 4 Proposed Length. 5 Summary Statement. 6 Expanded Statement

1 Course Title. 2 Course Organizer. 3 Course Level. 4 Proposed Length. 5 Summary Statement. 6 Expanded Statement 1 Course Title Out-Of-Core Algorithms for Scientific Visualization and Computer Graphics. 2 Course Organizer Cláudio T. Silva, AT&T Labs. 3 Course Level Intermediate The course is intended for those who

More information

CONCENTRATIONS: HIGH-PERFORMANCE COMPUTING & BIOINFORMATICS CYBER-SECURITY & NETWORKING

CONCENTRATIONS: HIGH-PERFORMANCE COMPUTING & BIOINFORMATICS CYBER-SECURITY & NETWORKING MAJOR: DEGREE: COMPUTER SCIENCE MASTER OF SCIENCE (M.S.) CONCENTRATIONS: HIGH-PERFORMANCE COMPUTING & BIOINFORMATICS CYBER-SECURITY & NETWORKING The Department of Computer Science offers a Master of Science

More information

BPPE Institutions Annual Report for 2012

BPPE Institutions Annual Report for 2012 9/1/13 Annual Report Institutions - Bureau for Private Postsecondary Education Skip to Main Content About Us Complaints Contact Us Forms Laws Statewide search: Search Search this site: Search This Site

More information

Control Structures. Lecture 4 COP 3014 Fall September 18, 2017

Control Structures. Lecture 4 COP 3014 Fall September 18, 2017 Control Structures Lecture 4 COP 3014 Fall 2017 September 18, 2017 Control Flow Control flow refers to the specification of the order in which the individual statements, instructions or function calls

More information

From Event-B Models to Dafny Code Contracts

From Event-B Models to Dafny Code Contracts From Event-B Models to Dafny Code Contracts Mohammadsadegh Dalvandi, Michael Butler, Abdolbaghi Rezazadeh Electronic and Computer Science School, University of Southampton Southampton, United Kingdom {md5g11,mjb,ra3}@ecs.soton.ac.uk

More information

MAKER: Mobile Device App for Wireless Control of a PLC-Based Automated

MAKER: Mobile Device App for Wireless Control of a PLC-Based Automated Paper ID #14538 MAKER: Mobile Device App for Wireless Control of a PLC-Based Automated System Prof. Thomas G. Hart, Tarrant County College 1998 - Present served as Faculty &Coordinator of Robotics and

More information

AP Computer Science AB

AP Computer Science AB AP Computer Science AB Dr. Tyler Krebs Voice Mail: 431-8938 Classroom: B128 Office: TV Studio Characteristics We Value in This Classroom: 1. Respect. (Show respect for everyone and everything.) 2. Integrity.

More information

Program Approval Form

Program Approval Form For approval of new programs and deletions or X Program Approval Form modifications to an existing program. Action Requested: Type (Check one): Create New (SCHEV approval required except for minors) B.A.

More information

computer science (CSCI)

computer science (CSCI) computer science (CSCI) CSCI overview programs available courses of instruction flowcharts Computer scientists and engineers design and implement efficient software and hardware solutions to computer-solvable

More information

Dr. SHERAZ ANJUM (MSc PhD MIET CEng)

Dr. SHERAZ ANJUM (MSc PhD MIET CEng) Dr. SHERAZ ANJUM (MSc PhD MIET CEng) drsheraz@comsats.edu.pk House CB-758/A, Abdullah Street, Near Quba Market, Lane # 5, Peshawar Road, Rawalpindi Qualification PhD Engineering Microelectronics and Solid-State

More information

A Bibliography of Publications of Jingling Xue

A Bibliography of Publications of Jingling Xue A Bibliography of Publications of Jingling Xue Jingling Xue Department of Mathematics, Statistics and Computing Science Armidale, NSW 2351 Australia Tel: +61 67 73 3149 FAX: +61 67 73 3312 E-mail: xue@neumann.une.edu.au

More information

Application of a Visual Computer Simulator into Collaborative Learning

Application of a Visual Computer Simulator into Collaborative Learning Journal of Computing and Information Technology - CIT 14, 2006, 4, 267 273 doi:10.2498/cit.2006.04.01 267 Application of a Visual Computer Simulator into Collaborative Learning Yoshiro Imai 1, Keiichi

More information

AP COMPUTER SCIENCE JAVA CONCEPTS IV: RESERVED WORDS

AP COMPUTER SCIENCE JAVA CONCEPTS IV: RESERVED WORDS AP COMPUTER SCIENCE JAVA CONCEPTS IV: RESERVED WORDS PAUL L. BAILEY Abstract. This documents amalgamates various descriptions found on the internet, mostly from Oracle or Wikipedia. Very little of this

More information

Academic Program Review Cyber Security College of Southern Nevada 2017

Academic Program Review Cyber Security College of Southern Nevada 2017 Academic Program Review Cyber Security College of Southern Nevada 2017 ACADEMIC EVALUATION WORKSHEET PROGRAM ASSESSMENT DATA Date Submitted: Submitted by: Margaret Taylor PROGRAM Assessment Data to be

More information

Personal Profile. Allied Additional Subordinate Subject studied. Management Information System. Electronic Commerce. Image Processing.

Personal Profile. Allied Additional Subordinate Subject studied. Management Information System. Electronic Commerce. Image Processing. Personal Profile (1) Name of the teacher (in full): Ms. Sarika Vijay Purao (2) Department: (3) Designation: Assistant Professor (4) Qualifications of the teacher:- Degree/ Post Graduate Degree Examinatio

More information

Cover Page. The handle holds various files of this Leiden University dissertation

Cover Page. The handle   holds various files of this Leiden University dissertation Cover Page The handle http://hdl.handle.net/1887/22891 holds various files of this Leiden University dissertation Author: Gouw, Stijn de Title: Combining monitoring with run-time assertion checking Issue

More information

JPred-P 2. Josh Choi, Michael Welch {joshchoi,

JPred-P 2. Josh Choi, Michael Welch {joshchoi, JPred-P 2 Josh Choi, Michael Welch {joshchoi, mjwelch}@cs.ucla.edu 1. Introduction Precondition and postcondition checking on methods aids the development process by explicitly notifying the programmer

More information

Curriculum Vitae Tim Ophelders last updated: September 12, 2018

Curriculum Vitae Tim Ophelders last updated: September 12, 2018 Curriculum Vitae Tim Ophelders last updated: September 12, 2018 Personal Information Name Citizenship T. A. E. (Tim) Ophelders Dutch Work Address Email Department of Computational Mathematics, Science

More information

Sri Vidya College of Engineering & Technology

Sri Vidya College of Engineering & Technology UNIT I INTRODUCTION TO OOP AND FUNDAMENTALS OF JAVA 1. Define OOP. Part A Object-Oriented Programming (OOP) is a methodology or paradigm to design a program using classes and objects. It simplifies the

More information