Five Reasons to Move from C# to F#
|
|
- Sydney Dalton
- 5 years ago
- Views:
Transcription
1 Five Reasons to Move from C# to F# JORGE FIORANELLI LEAD JORGEFIORANELLI
2 Who am I? Readify Lead Consultant - Sydney, Australia F# Sydney User Group (fsharpsydney.com) F# Workshop (fsharpworkshop.com) F# > I
3 Why F#?
4 Why F#?.Net Functional-First Full Support in VS Interoperable Multi Platform Open Source Great Syntax fsharp.org
5 Reason #1: Powerful Functions
6 Reason #1: Powerful Functions int Add(int x, int y) var return z = x x + + y; y; return z; Func<int,int,int> int Add(x, add(x, let Add(int y y) x y x, = x int + y y) let x + z y = x + y var let z z = x + y; return z z; int -> int -> int no let no camel parens instead curly no let semi and types case equals colons and of no return commas braces var In Out In Out Partial Application let result addone = add 1 2 //result: //addone: int = 3? -> int let result = addone 2 //result = 3 Pipelining let result = 2 customer addone > addone 2 > promotetovip > increasecredit Composition let addthree = addone >> addtwo let result = addthree 1 //result = 4
7 Reason #1: Powerful Functions [Fact] void Should_process_orders_when_they_are_approved() [<Fact>] let ``Should process orders when they are approved`` () =
8 Reason #1: Powerful Functions F# > I I F#
9 Reason #2: Great Types
10 Reason #2: Great Types class Customer private readonly string name; public Customer(string name) this.name = name; public string Name get return name; class type Customer(name: = string) = member this.name = name private public string readonly Name string name; type Customer = Name: string public get Customer(string string return Name name; name) this.name get return = name; Immutability Structural Equality public string Type Inference Name get return name; Class type generated readonly no primary instead curly of constructor property braces class field Record
11 Reason #2: Great Types Tuples Tuple<string, int> mytuple = GetNameAndAge(3); string name = mytuple.item1; int age = mytuple.item2; Tuple<string, let name, age = int> getnameandage mytuple = GetNameAndAge(3); GetNameAndAge(); 3 string let success, name = value mytuple.item1; = Int32.TryParse "42" int age = mytuple.item2; Options int GetCustomerAgeById(int id) Nullable<int> GetCustomerAgeById(int id) Customer GetCustomerById(int id) Nullable<Customer> GetCustomerById(int id) getcustomeragebyid (id: int) : int getcustomeragebyid (id: int) : Option<int> getcustomerbyid (id: int) : Customer getcustomerbyid (id: int) : Option<Customer>
12 Reason #2: Great Types Units of Measure var meters = 200; var kilometers = 30; var total = meters + kilometers; // 230! var [<Measure>] meters = type 200; m var [<Measure>] kilometers type= 30; km var let total meters = = meters 200<m> + kilometers; // 230!!! let kilometers = 30<km> let total = meters + kilometers // Error! Object Expressions var product = new Name = "Product1" ; return product; //? let product = new IProduct with member this.name = "Product1" member this.show () = printfn "%s" this.name
13 Reasons #1 #2 Powerful Functions Great Types
14 Reason #3: Pattern Matching
15 Reason #3: Pattern Matching enum Result Success, Error void Show(Result result) switch (result) case Result.Success: Console.WriteLine(":)"); break; case Result.Error: Console.WriteLine(":("); break; enum type Result = Discriminated Success of int quotient: int Union * remainder: int Success, Error of string Exception Error void let show ( Pieces _ ) Show(Result result = result) = match switch result (result) with void switch Success Show(Result case (result) (q,0) (q,r) -> Result.Success: -> Console.WriteLine(":)") result) printfn -> when printfn q > 1 %i" "%i -> Some printfn r %i" q r "%i pieces" q Success Error _ -> case None e -> m (q,r) Console.WriteLine(":)"); -> Result.Success: Console.WriteLine(":(") printfn -> printfn "%s" %s" e.message "%i m %i" q r Error switch case e (result) Console.WriteLine(":)"); break; -> Result.Success: printfn "%s" e.message let show show (Success case result Console.WriteLine(":)"); break; Result.Error: = 2) show Success // //:):) 2 show match show (Success (Error case result break; Console.WriteLine(":("); Result.Success: Result.Error: (quotient=2, "Error with show message") remainder=0)) Error // //:( :( Error // message 2 pieces show Pieces (Success caseq Console.WriteLine(":)"); Console.WriteLine(":("); break; Result.Error: ->(quotient=2, printfn "%i remainder=1)) pieces" q // 2 1 show Success (Error (q,r) Console.WriteLine(":("); break; (Exception("Error"))) -> printfn "%i %i" q r // Error Error case e break; -> Result.Error: printfn "%s" e.message Console.WriteLine(":("); break;
16 Reasons #1 #2 #3 Powerful Functions Great Types Pattern Matching
17 Reason #4: Type Providers
18 Reason #4: Type Providers Json TypeProvider Json Data F# Types Sql TypeProvider Sql Data Csv TypeProvider Csv Data
19 Reason #4: Type Providers Id,Name,IsVip,Credit 1,Customer1,false,0.0 type Customer = CsvProvider<"sample.csv"> let customers = Customer.Load "real.csv" customers.rows > Seq.iter (fun r -> printfn "%s: $%g" r.name r.credit) Id,Name,IsVip,Credit 1,Customer1,false,0.0 2,Customer2,false,10.0 3,Customer3,false,30.0 4,Customer4,true,50.0 type EntityConnection = SqlEntityConnection <ConnectionString=cs, Pluralize=true> let context = EntityConnection.GetDataContext () let customers = query for customer in context.customers do select customer.name Data
20 Reason #4: Type Providers Csv EF Json Azure Storage Xml Excel OData Linq2Sql SQL SQLClient Reflection World Bank R Freebase WMI Hadoop WSDL and more
21 Reasons #1 #2 #3 #4 Powerful Functions Great Types Pattern Matching Type Providers
22 Reason #5: Computation Expressions
23 Reason #5: Computation Expressions let x = iseven 1 let y = iseven 2 x && y Value: false Value: true Result: false log let! x = iseven 1 let! y = iseven 2 return x && y Value: false Value: true Result: false type LogBuilder() = member this.bind (value, continuation) = printfn "Value: %b" value continuation value member this.return value = printfn "Result: %b" value value let log = LogBuilder()
24 Reason #5: Computation Expressions Async Expression let readasync (file: (file: string) string) = = async use reader = new StreamReader(file) let! content = = reader.readtoend reader.asyncreadtoend () () content > printfn "Content: %s" EF Type Provider Query Expression let result = query for student in db.student do where (student.studentid > 4) select student MBrace Cloud let first = cloud return 15 let second = cloud return 27 cloud let! x = first let! y = second return x + y
25 Reasons #1 #2 #3 #4 #5 Powerful Functions Great Types Pattern Matching Type Providers Computation Expressions Partial Application Pipelining Composition Spaces in Names Classes Records Tuples Options Units of Measure Object Expressions Discriminated Unions Pattern Matching Active Patterns CSV EF Log Async Query Cloud
26 Thank you! Jorge Resources fsharp.org Real-World Functional Programming By Tomas Petricek Try F#: tryfsharp.org Scott Wlaschin fsharpforfunandprofit.com fpbridge.co.uk/why-fsharp.html github.com/jorgef/ fivereasons Skills Matter: skillsmatter.com (tag: f#) Community for F#: c4fsharp.net F# Workshop: fsharpworkshop.com
Methods. Contents Anatomy of a Method How to design a Method Static methods Additional Reading. Anatomy of a Method
Methods Objectives: 1. create a method with arguments 2. create a method with return value 3. use method arguments 4. use the return keyword 5. use the static keyword 6. write and invoke static methods
More informationBinghamton University. CS-211 Fall Syntax. What the Compiler needs to understand your program
Syntax What the Compiler needs to understand your program 1 Pre-Processing Any line that starts with # is a pre-processor directive Pre-processor consumes that entire line Possibly replacing it with other
More informationObject Oriented Programming with Java
Object Oriented Programming with Java What is Object Oriented Programming? Object Oriented Programming consists of creating outline structures that are easily reused over and over again. There are four
More informationAccessing loosely structured data from F# and C# Tomas Petricek PhD Student Microsoft C# MVP
Accessing loosely structured data from F# and C# Tomas Petricek PhD Student Microsoft C# MVP http://tomasp.net/blog @tomaspetricek A little bit about me Real World Functional Programming Co-authored by
More informationC # 7, 8, and beyond: language features from design to release to IDE support. Kevin
C # 7, 8, and beyond: language features from design to release to IDE support Kevin Pilch kevinpi@microsoft.com @Pilchie Stack Overflow - most popular technologies http://stackoverflow.com/insights/survey/2017#most-popular-technologies
More informationswitch case Logic Syntax Basics Functionality Rules Nested switch switch case Comp Sci 1570 Introduction to C++
Comp Sci 1570 Introduction to C++ Outline 1 Outline 1 Outline 1 switch ( e x p r e s s i o n ) { case c o n s t a n t 1 : group of statements 1; break ; case c o n s t a n t 2 : group of statements 2;
More informationDecision Making in C
Decision Making in C Decision making structures require that the programmer specify one or more conditions to be evaluated or tested by the program, along with a statement or statements to be executed
More informationFollowing is the general form of a typical decision making structure found in most of the programming languages:
Decision Making Decision making structures have one or more conditions to be evaluated or tested by the program, along with a statement or statements that are to be executed if the condition is determined
More informationSyntax and Variables
Syntax and Variables What the Compiler needs to understand your program, and managing data 1 Pre-Processing Any line that starts with # is a pre-processor directive Pre-processor consumes that entire line
More informationPython: common syntax
Lab 09 Python! Python Intro Main Differences from C++: True and False are capitals Python floors (always down) with int division (matters with negatives): -3 / 2 = -2 No variable data types or variable
More informationAbout Me Sushant Bhatia, From India/Malawi, Work at Citation Technologies Inc, an Environmental Health & Safety company with Compliance
About Me Sushant Bhatia, From India/Malawi, Work at Citation Technologies Inc, an Environmental Health & Safety company with Compliance Why I chose to do this talk No one else was doing functional programming.
More informationDecision Structures. Lecture 3 MIT 12043, Fundamentals of Programming By: S. Sabraz Nawaz
Decision Structures Lecture 3 MIT 12043, Fundamentals of Programming By: S. Sabraz Nawaz Chapter Topics o Relational Operators o The if Statement o The if-else Statement o Nested if statements o The if-else-if
More information[301] JSON. Tyler Caraza-Harter
[301] JSON Tyler Caraza-Harter Learning Objectives Today JSON differences with Python syntax creating JSON files reading JSON files Read: Sweigart Ch 14 https://automatetheboringstuff.com/chapter14/ JSON
More informationUpdating your Database Skills to Microsoft SQL Server 2012
Updating your Database Skills to Microsoft SQL Server 2012 Course 40008A - Three Days - Instructor-led - Hands on Introduction This three-day instructor-led course provides existing SQL Server database
More informationDecision Making -Branching. Class Incharge: S. Sasirekha
Decision Making -Branching Class Incharge: S. Sasirekha Branching The C language programs presented until now follows a sequential form of execution of statements. Many times it is required to alter the
More informationMF#K - Introduction to F# GroupM Mødegruppe for Ƒunktionelle Københavnere (MF#K)
MF#K - Introduction to F# meeting @ GroupM 2015-07-08 Mødegruppe for Ƒunktionelle Københavnere (MF#K) Overview About me Matching of expectations Agenda 15:30 > Short introduction to F# (sales pitch) 15:50
More information7. C++ Class and Object
7. C++ Class and Object 7.1 Class: The classes are the most important feature of C++ that leads to Object Oriented programming. Class is a user defined data type, which holds its own data members and member
More informationF# for Industrial Applications Worth a Try?
F# for Industrial Applications Worth a Try? Jazoon TechDays 2015 Dr. Daniel Egloff Managing Director Microsoft MVP daniel.egloff@quantalea.net October 23, 2015 Who are we Software and solution provider
More informationMCSA Universal Windows Platform. A Success Guide to Prepare- Programming in C# edusum.com
70-483 MCSA Universal Windows Platform A Success Guide to Prepare- Programming in C# edusum.com Table of Contents Introduction to 70-483 Exam on Programming in C#... 2 Microsoft 70-483 Certification Details:...
More informationUpcoming Features in C# Mads Torgersen, MSFT
Upcoming Features in C# Mads Torgersen, MSFT This document describes language features currently planned for C# 6, the next version of C#. All of these are implemented and available in VS 2015 Preview.
More informationCprE 288 Introduction to Embedded Systems Exam 1 Review. 1
CprE 288 Introduction to Embedded Systems Exam 1 Review http://class.ece.iastate.edu/cpre288 1 Overview of Today s Lecture Announcements Exam 1 Review http://class.ece.iastate.edu/cpre288 2 Announcements
More informationCSE 142 Su 04 Computer Programming 1 - Java. Objects
Objects Objects have state and behavior. State is maintained in instance variables which live as long as the object does. Behavior is implemented in methods, which can be called by other objects to request
More informationLecture 02 Summary. C/Java Syntax 1/14/2009. Keywords Variable Declarations Data Types Operators Statements. Functions
Lecture 02 Summary C/Java Syntax Keywords Variable Declarations Data Types Operators Statements if, switch, while, do-while, for Functions 1 2 By the end of this lecture, you will be able to identify the
More informationAdd Subtract Multiply Divide
ARITHMETIC OPERATORS if AND if/else AND while LOOP Order of Operation (Precedence Part 1) Copyright 2014 Dan McElroy Add Subtract Multiply Divide + Add - Subtract * Multiply / Divide = gives the quotient
More informationCMSC 330: Organization of Programming Languages. Lets, Tuples, Records
CMSC 330: Organization of Programming Languages Lets, Tuples, Records CMSC330 Spring 2018 1 Let Expressions Enable binding variables in other expressions These are different from the let definitions we
More informationC/Java Syntax. January 13, Slides by Mark Hancock (adapted from notes by Craig Schock)
C/Java Syntax 1 Lecture 02 Summary Keywords Variable Declarations Data Types Operators Statements if, switch, while, do-while, for Functions 2 By the end of this lecture, you will be able to identify the
More informationC/Java Syntax. Lecture 02 Summary. Keywords Variable Declarations Data Types Operators Statements. Functions. if, switch, while, do-while, for
C/Java Syntax 1 Lecture 02 Summary Keywords Variable Declarations Data Types Operators Statements if, switch, while, do-while, for Functions 2 1 By the end of this lecture, you will be able to identify
More informationWorking with Objects. Overview. This chapter covers. ! Overview! Properties and Fields! Initialization! Constructors! Assignment
4 Working with Objects 41 This chapter covers! Overview! Properties and Fields! Initialization! Constructors! Assignment Overview When you look around yourself, in your office; your city; or even the world,
More informationHands-On Lab. Introduction to F# Lab version: Last updated: 12/10/2010. Page 1
Hands-On Lab Introduction to Lab version: 1.0.0 Last updated: 12/10/2010 Page 1 CONTENTS OVERVIEW... 3 EXERCISE 1: TYPES IN... 4 Task 1 Observing Type Inference in... 4 Task 2 Working with Tuples... 6
More informationDecision Structures. Lesson 03 MIT 11053, Fundamentals of Programming
Decision Structures Lesson 03 MIT 11053, Fundamentals of Programming By: S. Sabraz Nawaz M.Sc. in IS (SLIIT), PGD in IS (SLIIT), BBA (Hons.) Spl. In IS (SEUSL), MIEEE, Microsoft Certified Professional
More informationJava+- Language Reference Manual
Fall 2016 COMS4115 Programming Languages & Translators Java+- Language Reference Manual Authors Ashley Daguanno (ad3079) - Manager Anna Wen (aw2802) - Tester Tin Nilar Hlaing (th2520) - Systems Architect
More informationLAMBDA EXPRESSIONS. Summer 2018
LAMBDA EXPRESSIONS Summer 2018 LAMBDA EXPRESSIONS USES Introduced in Java SE 8, lambda expressions are a way to create single-method classes in your code in a much less cumbersome manner than anonymous
More informationAdvanced MEIC. (Lesson #18)
Advanced Programming @ MEIC (Lesson #18) Last class Data races Java Memory Model No out-of-thin-air values Data-race free programs behave as expected Today Finish with the Java Memory Model Introduction
More informationIntroduction to C# Applications
1 2 3 Introduction to C# Applications OBJECTIVES To write simple C# applications To write statements that input and output data to the screen. To declare and use data of various types. To write decision-making
More informationDATABASE MANAGEMENT APPLICATIONS
SET-4 Series GBM Code No. 319 Roll No. Candidates must write the Code on the title page of the answer-book. Please check that this question paper contains 7 printed pages. Code number given on the right
More informationIntroduction to C# Applications Pearson Education, Inc. All rights reserved.
1 3 Introduction to C# Applications 2 What s in a name? That which we call a rose by any other name would smell as sweet. William Shakespeare When faced with a decision, I always ask, What would be the
More informationWhom Is This Book For?... xxiv How Is This Book Organized?... xxiv Additional Resources... xxvi
Foreword by Bryan Hunter xv Preface xix Acknowledgments xxi Introduction xxiii Whom Is This Book For?... xxiv How Is This Book Organized?... xxiv Additional Resources... xxvi 1 Meet F# 1 F# in Visual Studio...
More informationBreaking your code in new and exciting ways. Michael Newton
Breaking your code in new and exciting ways Michael Newton (@mavnn) Who am I? 15below telling you your flight s been delayed for 15 years and counting Keeping up with the latest hammers Open source (personal
More informationIntroduction to OCaml
Introduction to OCaml Jed Liu Department of Computer Science Cornell University CS 6110 Lecture 26 January 2009 Based on CS 3110 course notes and an SML tutorial by Mike George Jed Liu Introduction to
More informationTomas Petricek. F# Language Overview
Tomas Petricek F# Language Overview Master student of computer science at Charles University Prague Bachelor thesis on AJAX development with meta programming under Don Syme Microsoft C# MVP Numerous articles
More informationWriting Queries Using Microsoft SQL Server 2008 Transact- SQL
Writing Queries Using Microsoft SQL Server 2008 Transact- SQL Course 2778-08; 3 Days, Instructor-led Course Description This 3-day instructor led course provides students with the technical skills required
More informationUpdating your Database Skills to Microsoft SQL Server 2012
Course 40008A: Updating your Database Skills to Microsoft SQL Server 2012 Course Details Course Outline Module 1: Introducing SQL Server 2012 This module provides an overview of SQL Server 2012. Overview
More informationIntroduction to Java https://tinyurl.com/y7bvpa9z
Introduction to Java https://tinyurl.com/y7bvpa9z Eric Newhall - Laurence Meyers Team 2849 Alumni Java Object-Oriented Compiled Garbage-Collected WORA - Write Once, Run Anywhere IDE Integrated Development
More informationSelection Control Structure CSC128: FUNDAMENTALS OF COMPUTER PROBLEM SOLVING
Selection Control Structure CSC128: FUNDAMENTALS OF COMPUTER PROBLEM SOLVING MULTIPLE SELECTION To solve a problem that has several selection, use either of the following method: Multiple selection nested
More informationCS201- Introduction to Programming Current Quizzes
CS201- Introduction to Programming Current Quizzes Q.1 char name [] = Hello World ; In the above statement, a memory of characters will be allocated 13 11 12 (Ans) Q.2 A function is a block of statements
More informationWriting Queries Using Microsoft SQL Server 2008 Transact-SQL. Overview
Writing Queries Using Microsoft SQL Server 2008 Transact-SQL Overview The course has been extended by one day in response to delegate feedback. This extra day will allow for timely completion of all the
More informationConcepts of programming languages
Concepts of programming languages F# Tim Zoet, Zino Onomiwo, Martijn Boom, Rik van Toor 1 Background Don Syme Microsoft Research Recent development by the F# Software Foundation Microsoft develops the
More informationIndex A, B, C. Rank() function, steps, 199 Cloud services, 2 Comma-separated value (CSV), 27
Index A, B, C Calculations, Power Query distinct customers code implementations, 205 duplicate date and customer, 204 group by dialog configuration, 204 objective, 202 output, 205 Query Editor toolbar,
More informationChapter-8 DATA TYPES. Introduction. Variable:
Chapter-8 DATA TYPES Introduction To understand any programming languages we need to first understand the elementary concepts which form the building block of that program. The basic building blocks include
More informationSo, if you receive data from a server, in JSON format, you can use it like any other JavaScript object.
What is JSON? JSON stands for JavaScript Object Notation JSON is a lightweight data-interchange format JSON is "self-describing" and easy to understand JSON is language independent * JSON uses JavaScript
More informationIntroduction to Azure DocumentDB. Jeff Renz, BI Architect RevGen Partners
Introduction to Azure DocumentDB Jeff Renz, BI Architect RevGen Partners Thank You Presenting Sponsors Gain insights through familiar tools while balancing monitoring and managing user created content
More informationIndustrial Programming
Industrial Programming Lecture 4: C# Objects & Classes Industrial Programming 1 What is an Object Central to the object-oriented programming paradigm is the notion of an object. Objects are the nouns a
More informationWhat is an Object. Industrial Programming. What is a Class (cont'd) What is a Class. Lecture 4: C# Objects & Classes
What is an Object Industrial Programming Lecture 4: C# Objects & Classes Central to the object-oriented programming paradigm is the notion of an object. Objects are the nouns a person called John Objects
More informationUpdating Your Skills to SQL Server 2016
Updating Your Skills to SQL Server 2016 OD10986B; On-Demand, Video-based Course Description This course provides students moving from earlier releases of SQL Server with an introduction to the new features
More informationDEPARTMENT OF MATHS, MJ COLLEGE
T. Y. B.Sc. Mathematics MTH- 356 (A) : Programming in C Unit 1 : Basic Concepts Syllabus : Introduction, Character set, C token, Keywords, Constants, Variables, Data types, Symbolic constants, Over flow,
More informationHadoop is supplemented by an ecosystem of open source projects IBM Corporation. How to Analyze Large Data Sets in Hadoop
Hadoop Open Source Projects Hadoop is supplemented by an ecosystem of open source projects Oozie 25 How to Analyze Large Data Sets in Hadoop Although the Hadoop framework is implemented in Java, MapReduce
More informationCollections. Lists, Tuples, Sets, Dictionaries
Collections Lists, Tuples, Sets, Dictionaries Homework notes Homework 1 grades on canvas People mostly lost points for not reading the document carefully Didn t play again Didn t use Y/N for playing again
More informationCS558 Programming Languages
CS558 Programming Languages Winter 2017 Lecture 7b Andrew Tolmach Portland State University 1994-2017 Values and Types We divide the universe of values according to types A type is a set of values and
More informationCourse Outline. Upgrading Your Skills to SQL Server 2016 Course 10986A: 3 days Instructor Led
Upgrading Your Skills to SQL Server 2016 Course 10986A: 3 days Instructor Led About this course This three-day instructor-led course provides students moving from earlier releases of SQL Server with an
More informationCSE 11 Style Guidelines
CSE 11 Style Guidelines These style guidelines are based off of Google s Java Style Guide and Oracle s Javadoc Guide. Overview: Your style will be graded on the following items: File Headers Class Headers
More informationCS201- Introduction to Programming Latest Solved Mcqs from Midterm Papers May 07,2011. MIDTERM EXAMINATION Spring 2010
CS201- Introduction to Programming Latest Solved Mcqs from Midterm Papers May 07,2011 Lectures 1-22 Moaaz Siddiq Asad Ali Latest Mcqs MIDTERM EXAMINATION Spring 2010 Question No: 1 ( Marks: 1 ) - Please
More informationIntroduction To C#.NET
Introduction To C#.NET Microsoft.Net was formerly known as Next Generation Windows Services(NGWS).It is a completely new platform for developing the next generation of windows/web applications. However
More informationOperators. Java operators are classified into three categories:
Operators Operators are symbols that perform arithmetic and logical operations on operands and provide a meaningful result. Operands are data values (variables or constants) which are involved in operations.
More informationWorksheet 6: Basic Methods Methods The Format Method Formatting Floats Formatting Different Types Formatting Keywords
Worksheet 1: Introductory Exercises Turtle Programming Calculations The Print Function Comments Syntax Semantics Strings Concatenation Quotation Marks Types Variables Restrictions on Variable Names Long
More informationLearning Alliance Corporation, Inc. For more info: go to
Writing Queries Using Microsoft SQL Server Transact-SQL Length: 3 Day(s) Language(s): English Audience(s): IT Professionals Level: 200 Technology: Microsoft SQL Server Type: Course Delivery Method: Instructor-led
More informationAdvanced Computer Programming
Hazırlayan Yard. Doç. Dr. Mehmet Fidan WHILE, DO-WHILE and FOR LOOPS Loops are used for executing code blocks repeatedly. Decision of continuing loop is given by boolean expression. If boolean expression
More informationFAQs. Business (CIP 2.2) AWS Market Place Troubleshooting and FAQ Guide
FAQs 1. What is the browser compatibility for logging into the TCS Connected Intelligence Data Lake for Business Portal? Please check whether you are using Mozilla Firefox 18 or above and Google Chrome
More informationCSC Web Technologies, Spring Web Data Exchange Formats
CSC 342 - Web Technologies, Spring 2017 Web Data Exchange Formats Web Data Exchange Data exchange is the process of transforming structured data from one format to another to facilitate data sharing between
More informationBinghamton University. CS-120 Summer Introduction to C. Text: Introduction to Computer Systems : Chapters 11, 12, 14, 13
Introduction to C Text: Introduction to Computer Systems : Chapters 11, 12, 14, 13 Problem: Too Many Details For example: Lab 7 Bubble Sort Needed to keep track of too many details! Outer Loop When do
More informationCopy Datatable Schema To Another Datatable Vb.net
Copy Datatable Schema To Another Datatable Vb.net NET Framework 4.6 and 4.5 The schema of the cloned DataTable is built from the columns of the first enumerated DataRow object in the source table The RowState
More informationWhat property of a C# array indicates its allocated size? What keyword in the base class allows a method to be polymorphic?
What property of a C# array indicates its allocated size? a. Size b. Count c. Length What property of a C# array indicates its allocated size? a. Size b. Count c. Length What keyword in the base class
More informationPython Review IPRE
Python Review 2 Jay Summet 2005-12-31 IPRE Outline Compound Data Types: Strings, Tuples, Lists & Dictionaries Immutable types: Strings Tuples Accessing Elements Cloning Slices Mutable Types: Lists Dictionaries
More informationCS 112 Introduction to Computing II. Wayne Snyder Computer Science Department Boston University
CS 112 Introduction to Computing II Wayne Snyder Department Boston University Today: Java expressions and operators concluded Java Statements: Conditionals: if/then, if/then/else Loops: while, for Next
More informationCoding Standards for Java
Why have coding standards? Coding Standards for Java Version 1.3 It is a known fact that 80% of the lifetime cost of a piece of software goes to maintenance; therefore, it makes sense for all programs
More informationIntroduction to C++ General Rules, Conventions and Styles CS 16: Solving Problems with Computers I Lecture #2
Introduction to C++ General Rules, Conventions and Styles CS 16: Solving Problems with Computers I Lecture #2 Ziad Matni Dept. of Computer Science, UCSB Administrative This class is currently FULL and
More informationSimplifying IF AND OR Functions with The JayTray
Simplifying IF AND OR Functions with The JayTray JayTray THEJAYTRAY.IE BLOG.THEJAYTRAY.COM Table of Contents Introduction... 1 Objective of Book... 1 Version of Excel... 1 Using Wizards vs Typing Functions...
More informationJSON - Overview JSon Terminology
Announcements Introduction to Database Systems CSE 414 Lecture 12: Json and SQL++ Office hours changes this week Check schedule HW 4 due next Tuesday Start early WQ 4 due tomorrow 1 2 JSON - Overview JSon
More informationMicrosoft vision for a new era
Microsoft vision for a new era United platform for the modern service provider MICROSOFT AZURE CUSTOMER DATACENTER CONSISTENT PLATFORM SERVICE PROVIDER Enterprise-grade Global reach, scale, and security
More informationPVB CONTACT FORM 7 CALCULATOR PRO DOCUMENTATION
PVB CONTACT FORM 7 CALCULATOR PRO 1.4.1 DOCUMENTATION CONTENTS Contents... 1 1. Installation... 1 2. Form tags... 2 2.1. Calculated value... 2 2.1.1. Example... 2 2.1.2. Formula... 2 2.1.2.1. Note on checkbox
More informationUsing Scala in CS241
Using Scala in CS241 Winter 2018 Contents 1 Purpose 1 2 Scala 1 3 Basic Syntax 2 4 Tuples, Arrays, Lists and Vectors in Scala 3 5 Binary output in Scala 5 6 Maps 5 7 Option types 5 8 Objects and Classes
More informationenum: Enumerated Type An "enum" is a type with a fixed set of elements.
enum: Enumerated Type An "enum" is a type with a fixed set of elements. What is "enum" "enum" (enumeration) defines a new data type that has a fixed set of values. Example: an enum named Size with 3 fixed
More informationObject-oriented programming
Object-oriented programming HelloWorld The following code print Hello World on the console object HelloWorld { def main(args: Array[String]): Unit = { println("hello World") 2 1 object The keyword object
More informationIT Web and Software Developer Software Development Standards
IT Web and Software Developer Software Development Standards Definition of terms Identifier An identifier is the name you give variables, methods, classes, packages, interfaces and named constants. Pascal
More informationFundamental of Programming (C)
Borrowed from lecturer notes by Omid Jafarinezhad Fundamental of Programming (C) Lecturer: Vahid Khodabakhshi Lecture 3 Constants, Variables, Data Types, And Operations Department of Computer Engineering
More information& Object-Oriented Programming (POOP) Modified from CS61A Summer 2012 Lecture at UC Berkeley
& Object-Oriented Programming (POOP) Modified from CS61A Summer 2012 Lecture at UC Berkeley Where We Were: Functional Programming Style of programming One of many programming paradigms where functions
More informationThe F# Team Microsoft
The F# Team Microsoft Asynchronous and Parallel Programming with F# Workflows Some other F# Language Oriented Programming Techniques Lots of Examples F# is: F# is a.net programming language Functional
More informationIntroduction to JSON. Roger Lacroix MQ Technical Conference v
Introduction to JSON Roger Lacroix roger.lacroix@capitalware.com http://www.capitalware.com What is JSON? JSON: JavaScript Object Notation. JSON is a simple, text-based way to store and transmit structured
More informationECOR Come to the PASS workshop with your mock exam complete. During the workshop you can work with other students to review your work.
It is most beneficial to you to write this mock midterm UNDER EXAM CONDITIONS. This means: Complete the midterm in 1.5 hour(s). Work on your own. Keep your notes and textbook closed. Attempt every question.
More informationIndex COPYRIGHTED MATERIAL
Index COPYRIGHTED MATERIAL Note to the Reader: Throughout this index boldfaced page numbers indicate primary discussions of a topic. Italicized page numbers indicate illustrations. A abstract classes
More informationShelly Cashman Series Microsoft Office 365 and Access 2016 Introductory 1st Edition Pratt TEST BANK
Shelly Cashman Series Microsoft Office 365 and Access 2016 Introductory 1st Edition Pratt TEST BANK Full clear download (no formatting errors) at: https://testbankreal.com/download/shelly-cashman-series-microsoft-office-365-access-
More informationWelcome! Power BI User Group (PUG) Copenhagen
Welcome! Power BI User Group (PUG) Copenhagen Connect to Data in Power BI Desktop Just Thorning Blindbæk Consultant, Trainer and Speaker Connect to Data in Power BI Desktop Basic introduction to data connectivity
More informationAbout Codefrux While the current trends around the world are based on the internet, mobile and its applications, we try to make the most out of it. As for us, we are a well established IT professionals
More informationMajustic - Evaluation Test With Answers. Time: 1 hour 30 minutes
Majustic - Evaluation Test With Answers Time: 1 hour 30 minutes Version 1.0, 04/07/2015 Summary 1. JAVA Questions.............................................................................. 1 1.1. Consider
More informationJava Loop Control. Programming languages provide various control structures that allow for more complicated execution paths.
Loop Control There may be a situation when you need to execute a block of code several number of times. In general, statements are executed sequentially: The first statement in a function is executed first,
More informationAsanka Padmakumara. ETL 2.0: Data Engineering with Azure Databricks
Asanka Padmakumara ETL 2.0: Data Engineering with Azure Databricks Who am I? Asanka Padmakumara Business Intelligence Consultant, More than 8 years in BI and Data Warehousing A regular speaker in data
More informationG 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 informationPROGRAMMING FUNDAMENTALS
PROGRAMMING FUNDAMENTALS Q1. Name any two Object Oriented Programming languages? Q2. Why is java called a platform independent language? Q3. Elaborate the java Compilation process. Q4. Why do we write
More informationAPCS Semester #1 Final Exam Practice Problems
Name: Date: Per: AP Computer Science, Mr. Ferraro APCS Semester #1 Final Exam Practice Problems The problems here are to get you thinking about topics we ve visited thus far in preparation for the semester
More informationFrancesco Nidito. Programmazione Avanzata AA 2007/08
Francesco Nidito in the Programmazione Avanzata AA 2007/08 Outline 1 2 3 in the in the 4 Reference: Micheal L. Scott, Programming Languages Pragmatics, Chapter 7 What is a type? in the What is a type?
More informationBuilding Java Programs
Building Java Programs Chapter 15 Lecture 15-1: Implementing ArrayIntList reading: 15.1-15.3 Recall: classes and objects class: A program entity that represents: A complete program or module, or A template
More information