Workflow Web Core Communications Data Client

Total Page:16

File Type:pdf, Size:1020Kb

Workflow Web Core Communications Data Client Workflow .NET Framework 4 Universe System.WorkflowModel System.WorkflowServiceModel Activity 4.0 A selection of new types and namespaces WorkflowElement WorkflowServiceHost2 4.0 4.0 System.WorkflowModel.Activities System.WorkflowServiceModel.Activities ClientOperation CompensationScope 4.0 4.0 System.Web.UI System.Web.Mvc DbQuery 4.0 ReceiveMessage 4.0 SendMessage CompositeScriptReference 3.5 SP1 ActionResult 4.0 DbUpdate 4.0 4.0 Controller 4.0 Flowchart 4.0 ServiceOperation 4.0 System.Web.DynamicData ControllerFactory 4.0 Persist 4.0 System.WorkflowServiceModel.Dispatcher DataModel 3.5 SP1 IViewEngine 4.0 Sequence 4.0 DynamicControl 3.5 SP1 WorkflowInstanceContext 4.0 ViewPage 4.0 Core Ajax StateMachine 4.0 DynamicDataManager 3.5 SP1 System.WorkflowModel.Activities.Rules System.Web.Routing Sys.Binding 4.0 System.WorkflowModel.Tracking DynamicField 3.5 SP1 System.Numerics System.Threading.Tasks 4.0 RuleSet 4.0 Sys.Observer 4.0 Route 3.5 SP1 BigInteger 4.0 TrackingProfile 4.0 System.Web.UI.DataVisualization.Charting System.Collections.Generic Sys.Data.DataSource 4.0 RouteTable 3.5 SP1 Complex 4.0 Annotation 4.0 Sys.UI.DataView 4.0 SortedSet 4.0 System.ComponentModel.DataAnnotations System.IO.MemoryMappedFiles 4.0 Axis 4.0 Sys.UI.Template 4.0 System.Runtime.Interop.Services DataTypeAttribute 3.5 SP1 Chart 4.0 Sys.UI.TemplateResult 4.0 System.ComponentModel.Composition TypeIdentifierAttribute 4.0 ChartArea 4.0 DisplayFormatAttribute 3.5 SP1 CompositionContainer 4.0 RangeAttribute 3.5 SP1 DataPoint 4.0 System.Collections.Concurrent 4.0 System.Data ExportAttribute 4.0 Legend 4.0 RegularExpressionAttribute 3.5 SP1 ImportAttribute 4.0 System.Threading Data EntityKey 3.5 SP1 RequiredAttribute 3.5 SP1 Series 4.0 IExtendedDataRecord 3.5 SP1 LazyInit UIHintAttribute 3.5 SP1 System.Linq 4.0 System.Web.UI.WebControls System.Data.Services Parallel 4.0 System.Data.Common.CommandTrees ValidationAttribute 3.5 SP1 Web ParallelEnumerable 4.0 EntityDataSource 3.5 SP1 ChangeInterceptorAttribute 3.5 SP1 SpinLock 4.0 DbCommandTree 3.5 SP1 System.Xaml DataService 3.5 SP1 DbExpression 3.5 SP1 XamlReader 4.0 DataServiceException 3.5 SP1 DbExpressionBuilder 4.0 XamlWriter 4.0 DataServiceHost 3.5 SP1 DbQueryCommandTree 3.5 SP1 XamlType 4.0 IDataServiceConfigulation 4.0 System.Data.Common Client XamlProperty 4.0 IDataServiceProvider 3.5 SP1 ISynchonizationProvider 4.0 DataServiceKeyAttribute 3.5 SP1 System.Windows.Input QueryInterceptorAttribute 3.5 SP1 DbCommandDefinition 3.5 SP1 TouchPoint 4.0 DbProviderServices 3.5 SP1 System.Windows.Interop System.Data.Services.Provider TouchPointCollection 4.0 EntitySqlParser 4.0 ActiveXHost 3.5 SP1 TouchDevice 4.0 IDataServicesProvider 3.5 SP1 Communications System.Data.Objects D3dImage 3.5 SP1 System.Windows.Controls System.Data.Services.Client System.ServiceModel CompiledQuery 3.5 SP1 System.Windows.Media.Imaging Calendar 4.0 CorrelationOperationBehavior 4.0 DataServiceContext 3.5 SP1 ObjectContext 3.5 SP1 D3dImage 3.5 SP1 DataGrid 4.0 System.ServiceModel.Syndication OperationContact 4.0 DataServiceRequest 3.5 SP1 ObjectParameter 3.5 SP1 System.Windows.Controls DatePicker 4.0 DataServiceResponse 3.5 SP1 ObjectQuery 3.5 SP1 Service.Document 3.5 SP1 Service 4.0 Ribbon 4.0 DataServiceQuery 3.5 SP1 ObjectStateManager 3.5 SP1 WebBrowser 3.5 SP1 AtomPub10ServiceDocumentFormatter 3.5 SP1 ServiceContract 4.0 RibbonWindow 4.0 System.Windows.Media.Effects System.ServiceModel.Channels System.ServiceModel.Discovery System.Data.EntityClient System.Data.Metadata.Edm System.Windows ComplexType Effect 3.5 SP1 CompensationFlowAttribute 4.0 AnnouncementClient 4.0 EntityCommand 3.5 SP1 3.5 SP1 VisualState 4.0 EdmType 3.5 SP1 PixelShader 3.5 SP1 AnnouncementService 4.0 EntityConnection 3.5 SP1 VisualStateGroup 4.0 EntityType 3.5 SP1 ShadeEffect 3.5 SP1 DiscoveryClient 4.0 EntityDataReader 3.5 SP1 VisualStateManager 4.0 EntityTransaction RelationshipType 3.5 SP1 ServiceDiscoveryBehavior 4.0 3.5 SP1 The award winning Addison-Wesley Microsoft .NET Development Series provides professional developers with the most comprehensive and practical coverage of the latest .NET technologies. To discover more go to informit.com/msdotnetseries. _300_300 Microsoft Programming/ASP.NET Microsoft Programming Forewords by Miguel de Icaza Microsoft Programming/Concurrent Programming C# “If you want to be a C# developer, or if you want to enhance your Microsoft Programming Second Edition Foreword by Nikhil Kothari, Foreword by Steve Maine, Program Manager, Foreword by Craig Mundie, Chief Research and Strategy Officer , Microsoft Microsoft Programming/C# Special Annotated Edition for C# 3.0 C# programming skills, there is no more useful tool than a well-crafted and Anders Hejlsberg ASP.NET AJAX server controls can encapsulate even the most power- “When you begin using multi-threading throughout an application, “Whether this is the first time or the fifty-first time you’re using WCF, you’ll learn Software Architect, .NET Developer Platform, Microsoft Windows Communication Foundation, Microsoft Essential C# 3.0 is an extremely well-written and well-organized ful AJAX functionality, helping you build more elegant, maintainable, and the importance of clean architecture and design is critical.... book on the subject. You are holding such a book in your hands.” “An instant classic.” something new by reading this book.” “Based on my own experience, I can safely say “no-fluff” guide to C# 3.0, which will appeal to programmers at all levels scalable applications. This is the fi rst comprehensive, code-rich guide to This places an emphasis on understanding not only the platform’s Development of experience with C#. This fully updated edition dives deep into the new custom ASP.NET AJAX server controls for experienced ASP.NET devel- —Nicholas Allen, Program Manager, Web Services, Microsoft that every .NET developer who reads this will have —From the Foreword by —From the Foreword by Miguel de Icaza capabilities but also emerging best practices. Joe does a great job features that are revolutionizing programming, with brand new chapters Charlie Calvert, opers. Unlike other books on ASP.NET AJAX, this book focuses solely Series interspersing best practices alongside theory throughout his book.” Windows Communication Foundation (WCF) is the easiest way to produce and consume Web services on at least one ‘aha’ moment and will be a better covering query expressions, lambda expressions, extension methods, Community Program Manager, Visual C#, Microsoft Framework Design Guidelines, Second Edition, teaches on server control development and refl ects the signifi cant improvements the Microsoft platform. With .NET 3.5, WCF has been extensively revamped—and Visual Studio 2008 gives collection interface extensions, standard query operators, and developers the best practices for designing reusable libraries for the in ASP.NET 3.5 AJAX and the latest Visual Studio 2008 features for “Supported by the leaders and developer for it.” — From the Foreword by “Supported by the leaders and developers powerful new tools for utilizing it. Essential Windows Communication Foundation shows developers LINQ as a whole. “Supported by the leaders and AJAX Server Controls Advanced ASP.NET principal authorities of core Microsoft Craig Mundie, on Windows Concurrent Programming Microsoft .NET Framework. Expanded and updated for .NET 3.5, this Essential C# 3.0 “Supported by the leaders and Guidelines Framework Design streamlining AJAX development. principal authorities of core “Supported by the leaders and Language The C# Programming new edition focuses on the design issues that directly affect the technologies, this series has an author Chief Research and Strategy Officer, Microsoft Corporation exactly how to make the most of WCF with .NET 3.5 and Visual Studio 2008. Foundation Communication Windows Essential Essential —FromWindows the Foreword by Don Box principal authorities of core principal authorities of core Microsoft technologies, this series principal authorities of core Author Mark Michaelis covers the C# language in depth, and each important programmability of a class library, specifically its publicly accessible APIs. Adam Calderon and Joel Rumerman fi rst review the core Microsoft pool that combines some of the most Microsoft technologies, this series Microsoft technologies, this series has an author pool that combines Drawing on extensive experience working with early adopters, three Microsoft technologies, this series construct is illustrated with succinct, relevant code examples. (Complete AJAX Library and JavaScript techniques needed to support a rich client- insightful authors in the industry with Author Joe Duffy has risen to the challenge of explaining how to has an author pool that combines This book can improve the work of any .NET developer producing code that has an author pool that combines some of the most insightful authors Microsoft insiders systematically address the topics developers ask The popular C# programming language combines the high productivity has an author pool that combines code examples are available online.) Graphical “mind maps” at the beginning side experience. Next, they build upon these techniques showing how the lead software architects and write software that takes full advantage of concurrency and hardware The C# some of the most insightful authors some of the most insightful authors other developers will use. It includes copious annotations to the guidelines in the industry with the lead software about WCF. The authors approach each subject with practical
Recommended publications
  • NET Core & Linux
    .NET Core & Linux Fabio Di Peri [email protected] Twitter: @kipters Telegram: @kipters Linux Day 2020 | .NET Core & Linux “ I went into .NET thinking this was a programming language, but it seems I've stumbled upon a mini operating system with support for multiple execution environments, programming languages, and now I have so many questions. — Kelsey Hightower (@kelseyhightower) July 30, 2020 “ Linux Day 2020 | .NET Core & Linux Multiple execution environments .NET Framework .NET Core Mono .NET Micro .NET Nano CoreRT Linux Day 2020 | .NET Core & Linux Multiple languages C# F# VB Linux Day 2020 | .NET Core & Linux Multiple languages C# F# VB C++ Python PHP ... Linux Day 2020 | .NET Core & Linux Codice CIL CLR Linux Day 2020 | .NET Core & Linux Codice CIL CLR Java bytecode JVM Linux Day 2020 | .NET Core & Linux CLR | Common Language Runtime "La JVM" CLR Mono CoreCLR Linux Day 2020 | .NET Core & Linux BCL | Base Class Library L'intero set di librerie e classi a disposizione delle applicazioni .NET Linux Day 2020 | .NET Core & Linux Nuget Linux Day 2020 | .NET Core & Linux dotnet CLI Linux Day 2020 | .NET Core & Linux 1995 Java Linux Day 2020 | .NET Core & Linux 1996 Anders Hejlsberg Linux Day 2020 | .NET Core & Linux 1996 Anders Hejlsberg Turbo Pascal Delphi Linux Day 2020 | .NET Core & Linux 1996 Anders Hejlsberg Turbo Pascal Delphi C# TypeScript Linux Day 2020 | .NET Core & Linux Visual J++ 1.1 Linux Day 2020 | .NET Core & Linux Visual J++ 6.0 Linux Day 2020 | .NET Core & Linux Visual J++ 1.x Abbraccia Java Linux Day 2020 | .NET Core
    [Show full text]
  • Instructors Prerequisites Time Commitment and Schedule
    Instructors Anders Hejlsberg - Anders is a prominent Danish software engineer who co-designed several popular and commercially successful programming languages and development tools. He was the original author of Turbo Pascal and the chief architect of Delphi. He currently works for Microsoft as the lead architect of C# and core developer on TypeScript. Dan Wahlin - Dan Wahlin founded The Wahlin Group (http://www.TheWahlinGroup.com) which provides consulting and training services on Web technologies such as JavaScript, TypeScript, jQuery, AngularJS, SPAs, HTML5, ASP.NET and SharePoint. Dan is a Microsoft Regional Director and has been awarded Microsoft's MVP award multiple times for ASP.NET, Connected Systems and Silverlight. Dan blogs at http://weblogs.asp.net/dwahlin and writes regular columns for various technical magazines. Follow Dan on Twitter @DanWahlin. Prerequisites Working knowledge of JavaScript and experience coding in an object-oriented programming language. Time Commitment and Schedule 3-5 hours per week for 6 weeks. For students taking this course “live” content will be released twice per week typically on Tuesday and Thursday. Also note that all deadlines and release times are in UTC. This course will cover the following topics: Introduction to the TypeScript language Setting up your environment to work with TypeScript Understanding basic types Functions in TypeScript TypeScript classes (basics, constructors and inheritance, and properties) Interfaces in TypeScript Generics in TypeScript Deadlines and Grading Exercises are not graded but students will be asked to confirm that they have completed each homework assignment successfully as a part of the module assessment and will receive points for affirming that they have completed the exercises.
    [Show full text]
  • Typescriptforcsharpdevs
    TypeScript For C# Developers Jesse Liberty @Jesseliberty http://jesseliberty.com Getting Acquainted with TypeScript Anders Hejlsberg • Delphi • Turbo Pascal • C# • TypeScript Key Features Constructors, Static Typing Classes Properties, Methods Arrow Functions Interfaces Encapsulation (Lambdas) Key Features Supports Standard JavaScript code Open Source Runs Anywhere Excellent Tool Intellisense Syntax Checking Support TypeScript is TypeScript is a typed JavaScript superset of Javascript TypeScript is a first TypeScript is a natural class language for JavaScript and C# programmers Risks for C# Programmers Syntax is similar but not the same • Watch for subtle differences (e.g., = = vs. = = =) Classes and Interfaces are similar but not the same This is a scripting language TypeScript is, ultimately JavaScript with a C#-ish shell What do you need to know? C# Why use TypeScript? TypeScript Type Safety • Variables can hold one type • Variable types can not change during run-time • Only explicit type conversion • Easy to maintain Setup Tooling Visual Studio Otherwise… Playground It just works Any browser Any editor Any OS http://typescriptlang.org VS Code - Setup • Download and install VS Code (https://code.visualstudio.com/) • Download and install Node (http://nodejs.org) • Run VS Code from terminal by typing code VS Code - Setup • Add tsconfig.json file (http://jliberty.me/tsconfig) • Open Command Palette (shift-command-p) type in Configure Task Runner • Click on TypeScript – tsconfig.json User Preferences • In VS Code, enter Shift-Command-P
    [Show full text]
  • “​Anders Hejlsberg ”
    Introduction - Typescript was first made public in October 2012 by “Anders Hejlsberg” ​ ​ - TypeScript is a free and open source programming language developed and maintained by Microsoft. - TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. Latest Version: 1.6 ​ ​ ​ Official website:http://www.typescriptlang.org/ ​ ​ Native Javascript Issues ● Does not have static typing ● Lack structuring mechanisms like classes, modules, interfaces Note static: At compile time Dynamic: At run time Pre-requisites ● Basic knowledge on JavaScript Advantages ● Support standard JavaScript code with Strong /static typing ● Zero cost: Static types completely disappear at run-time ● Encapsulation though classes, modules and interfaces ● Constructors, properties and functions (public, private) ● Enums ● Lambda and generics support ● Intellisense and syntax checking ● IDE support ○ Visual Studio ○ Sublime Text, Vi, Emacs ○ Eclipse, WebStorm Disadvantages ● Even if you are writing code in the coffeescript you should know how javascript’s Installation Assumed installed Node with packed manager npm Install typescript : npm install -g typescript To know the version of Type Script : tsc -v File Extension : .ts ​ ​ ​ ​ Once installed, you should have access to the tsc command, which can execute scripts. Running the typescript file in command line: Create a file: vi test.ts ​ type console.log(“Hello, type script”); tsc test.ts ​ tsc --sourcemap hello.ts (creating js file) tsc --declaration hello.ts (creating .d.js files) tsd install <package> (TypeScript Definition manager) tsd install mocha CLI Usage a. To know the type script help tsc -h or tsc b. Compile a single file tsc <filename>.ts c. Compile multiple files tsc <filename>.ts <filename1>.ts <filename2>.ts d.
    [Show full text]
  • Behind the Tech with Kevin Scott EP 02 – Anders Hejlsberg
    Behind the Tech with Kevin Scott EP 02 – Anders Hejlsberg: A craftsman of computer language 1 00:00:01,070 --> 00:00:04,750 >> Surely. Anything can be done here. 2 00:00:04,750 --> 00:00:06,830 Look at this diagram. I just drew it for you. 3 00:00:06,830 --> 00:00:08,135 Just go and make it so, right? 4 00:00:08,135 --> 00:00:10,950 No, coding is hard and it continues to be hard, 5 00:00:10,950 --> 00:00:12,540 and code gets bigger and bigger and bigger 6 00:00:12,540 --> 00:00:14,350 but our brains are not 1 Behind the Tech with Kevin Scott EP 02 – Anders Hejlsberg: A craftsman of computer language getting any bigger, 7 00:00:14,350 --> 00:00:18,100 and this is largely a brain exercise. 8 00:00:23,440 --> 00:00:26,240 >> Hi everyone. Welcome to Behind the Tech. 9 00:00:26,240 --> 00:00:27,510 I'm your host, Kevin Scott, 10 00:00:27,510 --> 00:00:29,715 Chief Technology Officer for Microsoft. 11 00:00:29,715 --> 00:00:32,045 In this podcast, we're going to get Behind the Tech. 12 2 Behind the Tech with Kevin Scott EP 02 – Anders Hejlsberg: A craftsman of computer language 00:00:32,045 --> 00:00:33,420 We'll talk with some of the people 13 00:00:33,420 --> 00:00:34,680 who made our modern tech world 14 00:00:34,680 --> 00:00:36,030 possible and understand what 15 00:00:36,030 --> 00:00:38,115 motivated them to create what they did.
    [Show full text]
  • Comparative Studies of Six Programming Languages
    Comparative Studies of Six Programming Languages Zakaria Alomari Oualid El Halimi Kaushik Sivaprasad Chitrang Pandit Concordia University Concordia University Concordia University Concordia University Montreal, Canada Montreal, Canada Montreal, Canada Montreal, Canada [email protected] [email protected] [email protected] [email protected] Abstract Comparison of programming languages is a common topic of discussion among software engineers. Multiple programming languages are designed, specified, and implemented every year in order to keep up with the changing programming paradigms, hardware evolution, etc. In this paper we present a comparative study between six programming languages: C++, PHP, C#, Java, Python, VB ; These languages are compared under the characteristics of reusability, reliability, portability, availability of compilers and tools, readability, efficiency, familiarity and expressiveness. 1. Introduction: Programming languages are fascinating and interesting field of study. Computer scientists tend to create new programming language. Thousand different languages have been created in the last few years. Some languages enjoy wide popularity and others introduce new features. Each language has its advantages and drawbacks. The present work provides a comparison of various properties, paradigms, and features used by a couple of popular programming languages: C++, PHP, C#, Java, Python, VB. With these variety of languages and their widespread use, software designer and programmers should to be aware
    [Show full text]
  • Learn Pascal.Pdf
    Index • Introduction • History of Pascal • Pascal Compilers • Hello, world. • Basics o Program Structure o Identifiers o Constants o Variables and Data Types o Assignment and Operations o Standard Functions o Punctuation and Indentation o Programming Assignment o Solution • Input/Output o Input o Output o Formatting output o Files o EOLN and EOF o Programming Assignment o Solution • Program Flow o Sequential control o Boolean Expressions o Branching . IF . CASE o Looping . FOR..DO . WHILE..DO . REPEAT..UNTIL o Programming Assignments: Fibonacci Sequence and Powers of Two o Solutions • Subprograms o Procedures o Parameters o Functions o Scope o Recursion o Forward Referencing o Programming Assignment: the Towers of Hanoi o Solution • Data types o Enumerated types o Subranges o 1-dimensional arrays o Multidimensional arrays o Records o Pointers • Final words 2 Introduction Welcome to Learn Pascal! This tutorial is an introduction to the Pascal simple, yet complete, introduction to the Pascal programming language. It covers all of the syntax of standard Pascal, including pointers. I have tried to make things are clear as possible. If you don't understand anything, try it in your Pascal compiler and tweak things a bit. Pascal was designed for teaching purposes, and is a very structured and syntactically-strict language. This means the compiler will catch more beginner errors and yield more beginner-friendly error messages than with a shorthand-laden language such as C or PERL. This tutorial was written for beginner programmers, so assumes no knowledge. At the same time, a surprising number of experienced programmers have found the tutorial a useful reference source for picking up Pascal.
    [Show full text]
  • The A-Z of Programming Languages (Interviews with Programming Language Creators)
    The A-Z of Programming Languages (interviews with programming language creators) Computerworld, 2008-20101 Ada: S. Tucker Taft ...................................................... 1 Arduino: Tom Igoe ...................................................... 5 ASP: Microsoft .......................................................... 9 AWK: Alfred Aho ....................................................... 11 AWK & AMPL: Brian Kernighan ....................................... 15 Bash: Chet Ramey....................................................... 17 C#: Anders Hejlsberg.................................................... 20 C++: Bjarne Stroustrup ................................................. 27 Clojure: Rich Hickey .................................................... 35 ColdFusion: Jeremy Allaire .............................................. 38 D: Walter Bright ......................................................... 41 Erlang: Joe Armstrong................................................... 44 F#: Don Syme .......................................................... 48 Falcon: Giancarlo Niccolai ............................................... 51 Forth: Charles Moore .................................................... 59 Groovy: Guillaume Laforge .............................................. 61 Haskell: Simon Peyton-Jones............................................. 65 INTERCAL: Don Wood................................................. 76 JavaScript: Brendan Eich................................................ 79 Lua: Roberto Ierusalimschy..............................................
    [Show full text]
  • What Is Pascal? Part 1
    What is Pascal? Part 1 “It is a High Level Language that was designed for teaching purposes, and is a very structured and syntactically-strict language”. Origins Pascal grew out of ALGOL, a programming language intended for scientific computing. Meeting in Zurich, an international committee designed ALGOL as a platform independent language. This gave them comparatively free rein in the features they could design into ALGOL, but also made it more difficult to write compilers for it. Those were the days when many computers lacked hardware features that we now take for granted. The lack of compilers on many platforms, combined with its lack of pointers and many basic data types such as characters, led to ALGOL not being widely accepted. Scientists and engineers flocked to FORTRAN, a programming language which was available on many platforms. ALGOL mostly faded away except as a language for describing algorithms. Wirth Invents Pascal In the 1960s, several computer scientists worked on extending ALGOL. One of these was Dr. Niklaus Wirth of the Swiss Federal Institute of Technology (ETH-Zurich), a member of the original group that created ALGOL. In 1971, he published his specification for a highly-structured language which resembled ALGOL in many ways. He named it Pascal after the 17th-century French philosopher and mathematician who built a working mechanical digital computer. Pascal is very data-oriented, giving the programmer the ability to define custom data types. With this freedom comes strict type-checking, which prevented data types from being mixed up. Pascal was intended as a teaching language, and was widely adopted as such.
    [Show full text]
  • Typescript Final Report
    TypeScript Final Report Practical Course: Contributing to an Open-Source Project Jonas H¨ubotter [email protected] Technical University Munich March 16, 2021 Contents 1. Introduction1 2. Contributions2 2.1. Error reporting . .2 2.2. Type safety . .2 2.3. Type inference . .2 2.4. Other work . .3 3. Communication3 3.1. Quantitative analysis . .4 4. Case study6 4.1. Development environment . .6 4.2. Development process . .7 4.3. Iteration on the public pull request . .8 4.4. Summary and comparison to other contributions . .9 5. Feedback and suggestions 10 6. Conclusion and reflection 11 A. Pull request overview 18 ii 1. Introduction TypeScript1 is a programming language that extends JavaScript by adding types. It is funded by Microsoft and primarily developed by a dedicated team of Microsoft engineers. TypeScript is one of Microsoft's first ventures into open-source. Develop- ment on TypeScript began privately at Microsoft in 2010 [26]. With the first release in 2012, TypeScript was made available freely under the Apache-2.0 License2. Ini- tially, the code was hosted on Microsoft's forge website CodePlex before being moved to GitHub in 2014 [4]. New feature releases of TypeScript are published every other month [5]. Today, the TypeScript GitHub repository3 has more than 69 thousand stars mak- ing it the 20th most starred repository on GitHub [52]. The typescript package on NPM has over 19 million weekly downloads [57]. With more than 21 thousand dependent packages, TypeScript is the 24th most depended-upon package on NPM [50]. According to GitHub, almost 3.2 million public repositories depend on GitHub [56].
    [Show full text]
  • Where Are Programming Languages Going?
    Where are Programming Languages Going? Anders Hejlsberg Microsoft Technical Fellow [email protected] Since then… x 100,000 x 10,000 x 1000 But… program HelloWorld; var I: Integer; begin for I := 1 to 10 do x ? WriteLn('Hello World'); end. = using System; class HelloWorld { static void Main( string [] args) { for (int i = 0; i < 10; i++) Console .WriteLine( "Hello World" ); } } Languages, Frameworks, Tools Now Then Increasing Abstraction Level Trends Declarative Programming What How Imperative Declarative Domain Specific Languages “… a programming language or specification language dedicated to a particular problem domain, a particular problem representation technique, and/or a particular solution technique.” Source: Wikipedia Domain Specific Languages GPPL GPPL DSL DSL External DSL Internal DSL External DSLs <?xml version="1.0" ?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" indent="yes"/> <xsl:template match="/persons"> <root><xsl:apply-templates select="person"/></root> </xsl:template> <xsl:template match="person"> <name id="{@username}"><xsl:value-of select="name"/></name> </xsl:template> </xsl:stylesheet> SELECT Name, Address, City FROM Customers WHERE Country = "Denmark" rm -f /tmp/listing.tmp > /dev/null 2>&1 touch /tmp/listing.tmp ls -l [a-z]*.doc | sort > /tmp/listing.tmp lpr -Ppostscript_1 /tmp/listing.tmp rm -f /tmp/listing.tmp Internal DSLs var query = db.Customers .Where(c => c.City == "London") .OrderBy(c => c.CompanyName) .Select(c => c.CompanyName); class Order < ActiveRecord::Base belongs_to :customer has_many :details end Pattern socialSecurityNumber = Pattern.With.AtBeginning .Digit.Repeat.Exactly(3) .Literal("-").Repeat.Optional .Digit.Repeat.Exactly(2) .Literal("-").Repeat.Optional .Digit.Repeat.Exactly(4) .AtEnd; LINQ Demo Functional Programming First class functions Referential Immutable transparency data FP Type Pattern inference matching Algebraic data types Imperative vs.
    [Show full text]
  • List of Programmers 1 List of Programmers
    List of programmers 1 List of programmers This list is incomplete. This is a list of programmers notable for their contributions to software, either as original author or architect, or for later additions. A • Michael Abrash - Popularized Mode X for DOS. This allows for faster video refresh and square pixels. • Scott Adams - one of earliest developers of CP/M and DOS games • Leonard Adleman - co-creator of RSA algorithm (the A in the name stands for Adleman), coined the term computer virus • Alfred Aho - co-creator of AWK (the A in the name stands for Aho), and main author of famous Dragon book • JJ Allaire - creator of ColdFusion Application Server, ColdFusion Markup Language • Paul Allen - Altair BASIC, Applesoft BASIC, co-founded Microsoft • Eric Allman - sendmail, syslog • Marc Andreessen - co-creator of Mosaic, co-founder of Netscape • Bill Atkinson - QuickDraw, HyperCard B • John Backus - FORTRAN, BNF • Richard Bartle - MUD, with Roy Trubshaw, creator of MUDs • Brian Behlendorf - Apache • Kent Beck - Created Extreme Programming and co-creator of JUnit • Donald Becker - Linux Ethernet drivers, Beowulf clustering • Doug Bell - Dungeon Master series of computer games • Fabrice Bellard - Creator of FFMPEG open codec library, QEMU virtualization tools • Tim Berners-Lee - inventor of World Wide Web • Daniel J. Bernstein - djbdns, qmail • Eric Bina - co-creator of Mosaic web browser • Marc Blank - co-creator of Zork • Joshua Bloch - core Java language designer, lead the Java collections framework project • Bert Bos - author of Argo web browser, co-author of Cascading Style Sheets • David Bradley - coder on the IBM PC project team who wrote the Control-Alt-Delete keyboard handler, embedded in all PC-compatible BIOSes • Andrew Braybrook - video games Paradroid and Uridium • Larry Breed - co-developer of APL\360 • Jack E.
    [Show full text]