© 2006 by «Author»; made available under the EPL v1.0 | Date | Other Information, if necessary Doug Schaefer My plans/dreams for C# in CDT.

Slides:



Advertisements
Similar presentations
C++ Development on Linux Agenda Introduction Editors Debuggers GUI IDEs Make Automake Exploring further.
Advertisements

Extending Eclipse CDT for Remote Target Debugging Thomas Fletcher Director, Automotive Engineering Services QNX Software Systems.
J-Interop Open Source Java COM Bridge. Contents What is it ? Comparison with Java Native interface Comparison with J-Integra® for COM Benefits of using.
Java.  Java is an object-oriented programming language.  Java is important to us because Android programming uses Java.  However, Java is much more.
ARCHIMÈDE Presented by Guy Teasdale Directeur, Services soutien et développement Bibliothèque de l’Université Laval CARL Workshop on Institutional Repositories.
mbe/pa/olm 1 Integration of BETA with Eclipse eTX presentation Barcelona 2004 Peter Andersen Mads Brøgger Enevoldsen Ole Lehrmann Madsen.
Eclipse[10] MIPSinEclipse. Overview Goal: To provide a friendly development environment for CS students programming in MIPS (particularly CS33 at UCLA),
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of Creating Eclipse plug-ins.
2. Developing in.NET and C#. 2 Microsoft Objectives “Microsoft.NET development is based on an underlying framework of tools and classes. These tools and.
Introduction to the JDK Java for Computational Finance
Introduction To C++ Programming 1.0 Basic C++ Program Structure 2.0 Program Control 3.0 Array And Structures 4.0 Function 5.0 Pointer 6.0 Secure Programming.
Overview of Eclipse Parallel Tools Platform Adam Leko UPC Group HCS Research Laboratory University of Florida Color encoding key: Blue: Information Red:
Standardize on Team Foundation Server across the enterprise with Teamprise Corey Steffen General Manager
© 2008 by Ken Ryall; made available under the EPL v1.0 | March 18, 2008 Visual Studio Users & Eclipse Ken Ryall - Nokia.
EclipseME Java Micro Edition The Eclipse Way Craig Setera April 19, 2006.
© 2008 Intel Corporation; made available under the EPL v1.0 | February 12, 2008 | Integrating a custom tool-chain in CDT.
CSC300 Visual Programming Dr. Craig Reinhart. Objectives Teach the basics of C++ –You won’t be an expert but hopefully a very good novice –GUI development.
© 2006 IBM Corporation Jazz Foundation Deep Dive Agile Planning’s Scripting Tools.
CSC 142 B 1 CSC 142 Java objects: a first view [Reading: chapters 1 & 2]
Android for Java Developers Denver Java Users Group Jan 11, Mike
Oct 26, 2005 CDT DOM Roadmap Doug Schaefer. Parser History  CDT 1.0 ► JavaCC based parser  Used to populate CModel and Structure Compare ► ctags based.
Developing C/C++ applications with the Eclipse CDT David Gallardo.
Old Chapter 10: Programming Tools A Developer’s Candy Store.
Cooperative FVS ! Functional Requirements for a Shared Library Version of FVS, or Calling FVS from R! Nicholas L. Crookston Rocky Mountain Research Station.
Editing & Compiling: UNIX vs. IDE and an Intro to Architecture.
Eagle: Maturation and Evolution 17th Annual Tcl Conference Joe Mistachkin.
© 2006 by «Author»; made available under the EPL v1.0 | Date | Other Information, if necessary Doug Schaefer CDT DOM What is it? What should it be?
Debugging and Profiling With some help from Software Carpentry resources.
© 2002 IBM Corporation Confidential | Date | Other Information, if necessary PTP 2.1 Release Review October 29, 2008.
© 2002 IBM Corporation Confidential | Date | Other Information, if necessary June, 2011 Made available under the Eclipse Public License v Mobile.
Cross Language Clone Analysis Team 2 October 13, 2010.
1 Programming Environment and Tools VS.Net 2012 First project MSDN Library.
Weaving a Debugging Aspect into Domain-Specific Language Grammars SAC ’05 PSC Track Santa Fe, New Mexico USA March 17, 2005 Hui Wu, Jeff Gray, Marjan Mernik,
© 2006 by «Author»; made available under the EPL v1.0 | Date | Other Information, if necessary Doug Schaefer, QNX CDT Project Lead CDT Contributor Summit.
Graphics Concepts CS 2302, Fall /17/20142 Drawing in Android.
Compilers I CNS History Wires Wires Machine Language Machine Language FFBA FFBA No Translation necessary No Translation necessary Assembly Language.
Low-Level Virtual Machine support for Eclipse C/C++ Development Tooling Petri Tuononen - 17/5/2011.
 Programming - the process of creating computer programs.
Object Oriented Programming Criteria: P2 Date: 07/10/15 Name: Thomas Jazwinski.
Chapter 11: Advanced Inheritance Concepts. Objectives Create and use abstract classes Use dynamic method binding Create arrays of subclass objects Use.
New Project Model UI Primary Author: Mikhail Sennikovsky Major contributors: Mikhail Voronin, Oleg Krasilnikov, Leo Treggiari Intel Corporation September,
© 2008 UniTESK Lab, ISP RAS; made available under the EPL v1.0 Towards Common Language Toolkit Institute for System Programming of RAS,
© 2005 by QNX; made available under the EPL v1.0 | March 8, 2016 CDT Roadmap Doug Schaefer CDT Project Lead QNX Software Systems.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
Sung-Dong Kim Dept. of Computer Engineering, Hansung University Chapter 3 Programming Tools.
Visual Programming Borland Delphi. Developing Applications Borland Delphi is an object-oriented, visual programming environment to develop 32-bit applications.
*DT Project Model Leo Treggiari Intel Corp. Dec, 2005.
Netbeanstcl (A netbeans plugin for Tcl) A GSoC (Google Summer of Code) Project by Michal Poczwardowski.
ECE 382 Lesson 20 Lesson Outline Structs Functions Headers Example
Goals Give you a feeling of what Eclipse is.
Java Beans Sagun Dhakhwa.
Editor, Compiler, Linker, Debugger, Makefiles
Application Development Theory
CMPE 152: Compiler Design ANTLR 4 and C++
HP C/C++ Remote developer plug-in for Eclipse
Presentation Title Here
DotnetConf 11/14/2018 3:27 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE.
Chapter 7 –Implementation Issues
Outline Chapter 2 (cont) OS Design OS structure
Building a program (Java libraries) - an example
Java objects: a first view
How to take advantage of the new Eclipse Debug Platform features
An Introduction to Eclipse
Code Composer Essentials 3.0
Preparation for Assignment 2
ENERGY 211 / CME 211 Lecture 27 November 21, 2008.
Plug-In Architecture Pattern
Presentation transcript:

© 2006 by «Author»; made available under the EPL v1.0 | Date | Other Information, if necessary Doug Schaefer My plans/dreams for C# in CDT

Presentation Title | Presentation Subtitle | © 2006 by «Author»; made available under the EPL v1.0 2 Why C#  Needed to prove multi-language capabilities  Fortran already being done and I don’t really know Fortran  Ada is a great language but use is on decline  Java already done with JDT  C# very popular in Windows circles  Mono project bringing C# other platforms, especially Linux  C# (IMHO) is a better Java  Operator overloading  Structs – inline object store  Easy integration to native methods

Presentation Title | Presentation Subtitle | © 2006 by «Author»; made available under the EPL v1.0 3 Why C# - Ulterior motives  Eclipse Foundation very excited about this project  A path to bring Windows developers into Eclipse world  Helps the cause of Eclipse as valid alternative to VisualStudio  There is nothing VisualStudio does that can’t be done in Eclipse  Takes member commitment, though.  Help grow the CDT community as well  More users mean more testers  And the odd developer  High profile project could mean more commercial interest  Thus even more developers

Presentation Title | Presentation Subtitle | © 2006 by «Author»; made available under the EPL v1.0 4 What components are needed?  ILanguage implementation for Core Models  ILanguageUI implementation for Editor adaptation  Compiler Integration for building  Debugger Integration for debugging  In theory, that should be it

Presentation Title | Presentation Subtitle | © 2006 by «Author»; made available under the EPL v1.0 5 ILanguage  New DOM implementation  Extend IAST interfaces for AST  Extend IBinding and IType for semantic info  Extend PDOM classes for index  C# Scanner and Parser  Using ANTLR v3 to expedite  Need sharable preprocessor  Reusable with other ANTLR based parsers (others?)  CModelBuilder needed too  Extend ICElement interfaces, build using DOM

Presentation Title | Presentation Subtitle | © 2006 by «Author»; made available under the EPL v1.0 6 ILanguageUI  Right now only have new code scanner  Clone of C++ scanner  Different keywords, types, constants  Many other things should be same  May want to override editor menu to remove items

Presentation Title | Presentation Subtitle | © 2006 by «Author»; made available under the EPL v1.0 7 Compiler Integration  C# compilers different than C/C++ compilers  No object code, direct source to DLL/EXE  No linker  Need to compile all files producing the build target in one command invocation.  Not a lot of command line options  But does do debug versus release (i.e. configs needed)  Debating my own builder versus managed make  Independent contributor is looking at managed make  Microsoft (csc) and Mono (mcs) compilers very similar

Presentation Title | Presentation Subtitle | © 2006 by «Author»; made available under the EPL v1.0 8 Debugger Integration  Windows and Mono very different here, need different solutions  Windows – C++ COM interfaces to debugger APIs  Mono – young (0.20) written in C#  Maybe later…  How to hook up Windows debugger  CDI layer that uses JNI to talk to debugger API  DSF instead of CDI?  Separate executable that talks MI to CDT a la gdb

Presentation Title | Presentation Subtitle | © 2006 by «Author»; made available under the EPL v1.0 9 Debugger Integration  MI seems to be safer alternative  Out of process, won’t bring down Eclipse if it crashes  Can test from command line  Use similar architecture for C++ debugging on Windows  Which will use dbghelp APIs (similar architecture to.Net)  Build reusable MI library in C++  EPL for all to use/contribute to  Using CDT, of course!  But how do you debug your debugger…

Presentation Title | Presentation Subtitle | © 2006 by «Author»; made available under the EPL v Who’s working on it?  This is where plan turns into dream   Or, how to build a community from scratch.  Already have one independent guy working in personal time  Myself very part time  The hope is, as it starts to materialize, interest will spike  Start making noise about it in developer forums  Mono  Even Microsoft C# forums  Mentioned in my Podcast for EclipseZone