SlideShare a Scribd company logo
1 of 58
Download to read offline
TMF meets GMF
Combining Graphical & Textual Modeling
Alexander Nyßen
itemis AG
Donnerstag, 3. November 2011
Simultaneous/Parallel Editing
• http://www.eclipse.org/Xtext/documentation/2_0_0/210-
emf-integration.php
• A. Mülder, A. Nyßen: TMF meets GMF. Eclipse Magazin
03/2011 (German)
Donnerstag, 3. November 2011
Simultaneous/Parallel Editing
• http://www.eclipse.org/Xtext/documentation/2_0_0/210-
emf-integration.php
• A. Mülder, A. Nyßen: TMF meets GMF. Eclipse Magazin
03/2011 (German)
Out of Scope here!
Donnerstag, 3. November 2011
Editing Embedded-Xtext
Donnerstag, 3. November 2011
Editing Embedded-Xtext
Donnerstag, 3. November 2011
Editing Embedded-Xtext
Enable editing of Xtext-strings
Donnerstag, 3. November 2011
Editing Embedded-Xtext
Enable editing of Xtext-strings, providing all the nice
Xtext-features like syntax coloring, content assist, and
validation
Donnerstag, 3. November 2011
Editing Embedded-Xtext
Enable editing of Xtext-strings, providing all the nice
Xtext-features like syntax coloring, content assist, and
validation, outside an Xtext-editor within the following
contexts:
• SWT/JFace: enable editing of Xtext-strings e.g. within
WizardPages or PropertySheets.
• GEF/GMF (and potentially Graphiti): enable „direct-
editing“ of Xtext-strings from within graphical editors.
Donnerstag, 3. November 2011
So, let‘s start with looking at
SWT/JFace!
Donnerstag, 3. November 2011
Xtext-JFace-Integration
• StyledTextXtextAdapter to adapt Xtext-editing
functionality to any StyledText (SWT control)
• XtextStyledTextCellEditor to enable Xtext-editing
within arbitrary JFaceViewers (using StyledText and XtextAdapter)
Donnerstag, 3. November 2011
Adapter & CellEditor Usage
• StyledTextXtextAdapter can easily be „hooked“ to
any StyledText
• XtextStyledTextCellEditor can be used
transparently as any JFace CellEditor (it adapts internally)
StyledText styledText = new StyledText(parent, style);
xtextAdapter = new StyledTextXtextAdapter(getInjector());
xtextAdapter.adapt(styledText);
xtextCellEditor = new XtextStyledTextCellEditor(style,
getInjector());	 	 	 	
xtextCellEditor.create((Composite)viewer.getControl());
Donnerstag, 3. November 2011
Xtext-JFace-Integration
• Syntax Highlighting:
• Auto Completion:
• Validation:
✓
✓
✓
Donnerstag, 3. November 2011
And how to integrate Xtext with
GEF/GMF?
Donnerstag, 3. November 2011
Direct-Editing Embedded-Xtext
• GEF-integration:
• XtextDirectEditManager,
internally making use of the Xtext-
StyledTextCellEditor
• GMF-integration:
• XtextLabelEditPart (CompartmentEditPart)
• ExternalXtextLabelEditPart (LabelEditPart)
Donnerstag, 3. November 2011
DirectEditManager Usage
protected void performDirectEditRequest(final Request request) {
final XtextDirectEditManager manager =
new XtextDirectEditManager(this, getInjector(), getEditorStyles());
try {
getEditingDomain().runExclusive(new Runnable() {
public void run() {
...
manager.show();
...
}
});
} catch (final InterruptedException e) {...}
}
• XtextDirectEditManager can be transparently used as
any GEF DirectEditManager:
Donnerstag, 3. November 2011
Editing Embedded-Xtext
Donnerstag, 3. November 2011
And how does it work?
Donnerstag, 3. November 2011
PropertySection
Donnerstag, 3. November 2011
PropertySection
Donnerstag, 3. November 2011
PropertySection
PropertySection
Donnerstag, 3. November 2011
PropertySection
PropertySection
Input Object
Property
Donnerstag, 3. November 2011
PropertySection
PropertySection
PropertyPage
Text (SWT)
Input Object
Property
Donnerstag, 3. November 2011
PropertySection
PropertySection
PropertyPage
Text (SWT)
Input Object
Property
Donnerstag, 3. November 2011
Xtext-Editor
Donnerstag, 3. November 2011
Xtext-Editor
Donnerstag, 3. November 2011
Xtext-Editor
XtextEditor
Donnerstag, 3. November 2011
Xtext-Editor
XtextEditor
XtextDocument
XtextResource
Donnerstag, 3. November 2011
Xtext-Editor
XtextEditor
XtextDocument
XtextSourceViewer
StyledText (SWT)
XtextResource
Donnerstag, 3. November 2011
Xtext-Editor
XtextEditor
XtextDocument
XtextSourceViewer
StyledText (SWT)
XtextResource
Donnerstag, 3. November 2011
Xtext-JFace-Integration -The Principle
Donnerstag, 3. November 2011
Xtext-JFace-Integration -The Principle
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)
Xtext-JFace-Integration -The Principle
Input Object
Property
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
Xtext-JFace-Integration -The Principle
Input Object
Property
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
Xtext-JFace-Integration -The Principle
Input Object
PropertyXtext-String
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
Xtext-JFace-Integration -The Principle
Input Object
PropertyXtext-String
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
XtextEditor
XtextDocument
XtextSourceViewer
StyledText (SWT)
Xtext-JFace-Integration -The Principle
XtextResource
Input Object
PropertyXtext-String
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
XtextDocument
XtextSourceViewer
StyledText (SWT)
Xtext-JFace-Integration -The Principle
XtextResource
Input Object
PropertyXtext-String
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
StyledTextXtextAdapter
XtextDocument
XtextSourceViewer
StyledText (SWT)
Xtext-JFace-Integration -The Principle
XtextResource
Input Object
PropertyXtext-String
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
StyledTextXtextAdapter
XtextDocument
XtextSourceViewer
Xtext-JFace-Integration -The Principle
XtextResource
Input Object
PropertyXtext-String
StyledText (SWT)
Donnerstag, 3. November 2011
PropertySection
PropertyPage
Text (SWT)StyledText (SWT)
StyledTextXtextAdapter
XtextDocument
XtextSourceViewer
Xtext-JFace-Integration -The Principle
Input Object
(Fake-)XtextResourcePropertyXtext-String
StyledText (SWT)
Donnerstag, 3. November 2011
And what about scoping?
Donnerstag, 3. November 2011
Scoping in Xtext
• When resolving cross-references scoping decides which
elements (of potentially different resources) are referable
Donnerstag, 3. November 2011
Scoping in Xtext
• When resolving cross-references scoping decides which
elements (of potentially different resources) are referable
Donnerstag, 3. November 2011
Scoping in Xtext (continued)
• Xtext distincs two notions of scope:
• Local Scope (internal to the context resource)
• Global Scope (external to the context resource)
• Global Scope is based on ResourceDescriptions which are
provided by an indexing mechanism (Xtext builder)
• XtextEditors are dirty-aware, i.e. their current editing state is
proclamated to the ResourceDescriptions
Donnerstag, 3. November 2011
Scoping in Embedded Xtext?
Donnerstag, 3. November 2011
Scoping in Embedded Xtext?
Donnerstag, 3. November 2011
Fake-XtextResource
The Fake-XtextResource used by the XtextAdapter does
only contain the currently edited Xtext-String, not any other
contents of the context resource
Local scope will allow us to refer to elements in the
edited Xtext-String, but not outside
Global scope will allow to reference external
elements, but by default context resource contents
is not proclamated to the global scope
Donnerstag, 3. November 2011
Scoping based on Fake Resources
• Sophisticated Solution:
• Expose all Xtext-Strings contained within context resource
to ResourceDescriptions „dirty-state aware“
• Simple Solution:
• Populate the Fake-Xtext-Resource‘s ResourceSet with other
Fake-Context-Resources (e.g. one for each Xtext-String)
Donnerstag, 3. November 2011
StyledTextXtextAdapter
IFakeContextResourcesProvider
XtextDocument
XtextSourceViewer
StyledText (SWT)
Fake-XtextResource
Donnerstag, 3. November 2011
StyledTextXtextAdapter
IFakeContextResourcesProvider
XtextDocument
XtextSourceViewer
StyledText (SWT)
Fake-ResourceSet Fake-XtextResource
Donnerstag, 3. November 2011
StyledTextXtextAdapterIXtextFakeContext
ResourcesProvider
IFakeContextResourcesProvider
XtextDocument
XtextSourceViewer
StyledText (SWT)
Fake-ResourceSet Fake-XtextResource
Donnerstag, 3. November 2011
StyledTextXtextAdapterIXtextFakeContext
ResourcesProvider
IFakeContextResourcesProvider
XtextDocument
XtextSourceViewer
StyledText (SWT)
Fake-ResourceSet Fake-XtextResource
Context-Fake
Resource (1)
Donnerstag, 3. November 2011
StyledTextXtextAdapterIXtextFakeContext
ResourcesProvider
IFakeContextResourcesProvider
XtextDocument
XtextSourceViewer
StyledText (SWT)
Fake-ResourceSet Fake-XtextResource
Context-Fake
Resource (2)
Context-Fake
Resource (1)
Donnerstag, 3. November 2011
StyledTextXtextAdapterIXtextFakeContext
ResourcesProvider
IFakeContextResourcesProvider
XtextDocument
XtextSourceViewer
StyledText (SWT)
Fake-ResourceSet Fake-XtextResource
Context-Fake
Resource(n)
Context-Fake
Resource (2)
Context-Fake
Resource (1)
...
Donnerstag, 3. November 2011
Populating Fake Resource Set
• IXtextContextFakeResourcesProvider allows to
populate the fake ResourceSet:
IXtextFakeContextResourcesProvider provider =
new IXtextFakeContextResourcesProvider(){
public void populateFakeResourceSet(
ResourceSet fakeResourceSet,	
XtextResource fakeResource){
// create context fake resources via given resource set
...
	 }
};
xtextAdapter = new StyledTextXtextAdapter(getInjector(), provider);
xtextAdapter.adapt(styledText);
Donnerstag, 3. November 2011
And where can I get it?
Donnerstag, 3. November 2011
Xtext-Integration @Yakindu
• Xtext-JFace-Integration and Xtext-GMF-Integration is made
available by theYAKINDU project
• Open Source / EPL
• Project Site: http://yakindu.org
• Eclipse Labs Site: http://code.google.com/a/eclipselabs.org/p/yakindu/
• Update Site: http://updates.yakindu.com/indigo/milestones/
• Source Code: http://svn.codespot.com/a/eclipselabs.org/yakindu/BASE/trunk/
de.itemis.xtext.utils
Donnerstag, 3. November 2011
ThankYou! Questions?
Donnerstag, 3. November 2011

More Related Content

Similar to TMF meets GMF

Migrating from Ext GWT 2.x to 3.0
Migrating from Ext GWT 2.x to 3.0Migrating from Ext GWT 2.x to 3.0
Migrating from Ext GWT 2.x to 3.0Sencha
 
Introducing Ext GWT 3.0
Introducing Ext GWT 3.0Introducing Ext GWT 3.0
Introducing Ext GWT 3.0Sencha
 
Community Code: Xero
Community Code: XeroCommunity Code: Xero
Community Code: XeroSencha
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language ProcessingCloudxLab
 
RESTo - restful semantic search tool for geospatial
RESTo - restful semantic search tool for geospatialRESTo - restful semantic search tool for geospatial
RESTo - restful semantic search tool for geospatialGasperi Jerome
 
Xml holland - XQuery novelties - Geert Josten
Xml holland - XQuery novelties - Geert JostenXml holland - XQuery novelties - Geert Josten
Xml holland - XQuery novelties - Geert JostenDaidalos
 
Government Polytechnic Arvi-1.pptx
Government Polytechnic Arvi-1.pptxGovernment Polytechnic Arvi-1.pptx
Government Polytechnic Arvi-1.pptxShivamDenge
 
XML Prague 2005 EXSLT
XML Prague 2005 EXSLTXML Prague 2005 EXSLT
XML Prague 2005 EXSLTjimfuller2009
 
Elasticsearch Basics
Elasticsearch BasicsElasticsearch Basics
Elasticsearch BasicsShifa Khan
 
Introduction to libre « fulltext » technology
Introduction to libre « fulltext » technologyIntroduction to libre « fulltext » technology
Introduction to libre « fulltext » technologyRobert Viseur
 
DBXTalk: Smalltalk Relational Database Suite
DBXTalk: Smalltalk Relational Database SuiteDBXTalk: Smalltalk Relational Database Suite
DBXTalk: Smalltalk Relational Database SuiteMariano Martínez Peck
 
DITA and Translation Best Praticices
DITA and Translation Best PraticicesDITA and Translation Best Praticices
DITA and Translation Best PraticicesAndrzej Zydroń MBCS
 
SkinMuseum: a museum collection management software
SkinMuseum: a museum collection management softwareSkinMuseum: a museum collection management software
SkinMuseum: a museum collection management softwareNuxeo
 
SANS Windows Artifact Analysis 2012
SANS Windows Artifact Analysis 2012SANS Windows Artifact Analysis 2012
SANS Windows Artifact Analysis 2012Rian Yulian
 
Write code that writes code!
Write code that writes code!Write code that writes code!
Write code that writes code!Jason Feinstein
 

Similar to TMF meets GMF (20)

Migrating from Ext GWT 2.x to 3.0
Migrating from Ext GWT 2.x to 3.0Migrating from Ext GWT 2.x to 3.0
Migrating from Ext GWT 2.x to 3.0
 
Introducing Ext GWT 3.0
Introducing Ext GWT 3.0Introducing Ext GWT 3.0
Introducing Ext GWT 3.0
 
Community Code: Xero
Community Code: XeroCommunity Code: Xero
Community Code: Xero
 
IR with lucene
IR with luceneIR with lucene
IR with lucene
 
RunDeck
RunDeckRunDeck
RunDeck
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
 
RESTo - restful semantic search tool for geospatial
RESTo - restful semantic search tool for geospatialRESTo - restful semantic search tool for geospatial
RESTo - restful semantic search tool for geospatial
 
Text Mining with R
Text Mining with RText Mining with R
Text Mining with R
 
Xml holland - XQuery novelties - Geert Josten
Xml holland - XQuery novelties - Geert JostenXml holland - XQuery novelties - Geert Josten
Xml holland - XQuery novelties - Geert Josten
 
Government Polytechnic Arvi-1.pptx
Government Polytechnic Arvi-1.pptxGovernment Polytechnic Arvi-1.pptx
Government Polytechnic Arvi-1.pptx
 
XML Prague 2005 EXSLT
XML Prague 2005 EXSLTXML Prague 2005 EXSLT
XML Prague 2005 EXSLT
 
Elasticsearch Basics
Elasticsearch BasicsElasticsearch Basics
Elasticsearch Basics
 
Introduction to libre « fulltext » technology
Introduction to libre « fulltext » technologyIntroduction to libre « fulltext » technology
Introduction to libre « fulltext » technology
 
DBXTalk: Smalltalk Relational Database Suite
DBXTalk: Smalltalk Relational Database SuiteDBXTalk: Smalltalk Relational Database Suite
DBXTalk: Smalltalk Relational Database Suite
 
DITA and Translation Best Praticices
DITA and Translation Best PraticicesDITA and Translation Best Praticices
DITA and Translation Best Praticices
 
SkinMuseum: a museum collection management software
SkinMuseum: a museum collection management softwareSkinMuseum: a museum collection management software
SkinMuseum: a museum collection management software
 
SANS Windows Artifact Analysis 2012
SANS Windows Artifact Analysis 2012SANS Windows Artifact Analysis 2012
SANS Windows Artifact Analysis 2012
 
Shivam PPT.pptx
Shivam PPT.pptxShivam PPT.pptx
Shivam PPT.pptx
 
Lucene indexing
Lucene indexingLucene indexing
Lucene indexing
 
Write code that writes code!
Write code that writes code!Write code that writes code!
Write code that writes code!
 

More from Alexander Nyßen

GEF 5.0.0 - From a User's Perspective
GEF 5.0.0 - From a User's PerspectiveGEF 5.0.0 - From a User's Perspective
GEF 5.0.0 - From a User's PerspectiveAlexander Nyßen
 
The Next Generation Eclipse Graphical Editing Framework
The Next Generation Eclipse Graphical Editing FrameworkThe Next Generation Eclipse Graphical Editing Framework
The Next Generation Eclipse Graphical Editing FrameworkAlexander Nyßen
 
Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...
Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...
Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...Alexander Nyßen
 
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...Alexander Nyßen
 
GEF4 - There's really something going on!
GEF4 - There's really something going on!GEF4 - There's really something going on!
GEF4 - There's really something going on!Alexander Nyßen
 
GEF4 - Continue to Share and Enjoy!
GEF4 - Continue to Share and Enjoy!GEF4 - Continue to Share and Enjoy!
GEF4 - Continue to Share and Enjoy!Alexander Nyßen
 
GEF - Past, Present, and Future
GEF - Past, Present, and FutureGEF - Past, Present, and Future
GEF - Past, Present, and FutureAlexander Nyßen
 
GEF4 - Our Mission to Mars
GEF4 - Our Mission to MarsGEF4 - Our Mission to Mars
GEF4 - Our Mission to MarsAlexander Nyßen
 
YAKINDU SCT - Domain-Specific Statecharts
YAKINDU SCT - Domain-Specific StatechartsYAKINDU SCT - Domain-Specific Statecharts
YAKINDU SCT - Domain-Specific StatechartsAlexander Nyßen
 

More from Alexander Nyßen (12)

GEF 5.0.0 - From a User's Perspective
GEF 5.0.0 - From a User's PerspectiveGEF 5.0.0 - From a User's Perspective
GEF 5.0.0 - From a User's Perspective
 
The Next Generation Eclipse Graphical Editing Framework
The Next Generation Eclipse Graphical Editing FrameworkThe Next Generation Eclipse Graphical Editing Framework
The Next Generation Eclipse Graphical Editing Framework
 
GEF(4) Dot Oh Dot Oh
GEF(4) Dot Oh Dot OhGEF(4) Dot Oh Dot Oh
GEF(4) Dot Oh Dot Oh
 
GEF4 - Sightseeing Mars
GEF4 - Sightseeing MarsGEF4 - Sightseeing Mars
GEF4 - Sightseeing Mars
 
Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...
Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...
Erweiterung der Entwurfsmethodik CONSENS um absichernde Maßnahmen zur Risikom...
 
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
 
GEF4 - There's really something going on!
GEF4 - There's really something going on!GEF4 - There's really something going on!
GEF4 - There's really something going on!
 
GEF4 - Continue to Share and Enjoy!
GEF4 - Continue to Share and Enjoy!GEF4 - Continue to Share and Enjoy!
GEF4 - Continue to Share and Enjoy!
 
GEF - Past, Present, and Future
GEF - Past, Present, and FutureGEF - Past, Present, and Future
GEF - Past, Present, and Future
 
GEF4 - Our Mission to Mars
GEF4 - Our Mission to MarsGEF4 - Our Mission to Mars
GEF4 - Our Mission to Mars
 
YAKINDU SCT - Domain-Specific Statecharts
YAKINDU SCT - Domain-Specific StatechartsYAKINDU SCT - Domain-Specific Statecharts
YAKINDU SCT - Domain-Specific Statecharts
 
GEF4 - Share and Enjoy!
GEF4 - Share and Enjoy!GEF4 - Share and Enjoy!
GEF4 - Share and Enjoy!
 

Recently uploaded

How Does the Epitome of Spyware Differ from Other Malicious Software?
How Does the Epitome of Spyware Differ from Other Malicious Software?How Does the Epitome of Spyware Differ from Other Malicious Software?
How Does the Epitome of Spyware Differ from Other Malicious Software?AmeliaSmith90
 
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine HarmonyLeveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmonyelliciumsolutionspun
 
online pdf editor software solutions.pdf
online pdf editor software solutions.pdfonline pdf editor software solutions.pdf
online pdf editor software solutions.pdfMeon Technology
 
Growing Oxen: channel operators and retries
Growing Oxen: channel operators and retriesGrowing Oxen: channel operators and retries
Growing Oxen: channel operators and retriesSoftwareMill
 
AI Embracing Every Shade of Human Beauty
AI Embracing Every Shade of Human BeautyAI Embracing Every Shade of Human Beauty
AI Embracing Every Shade of Human BeautyRaymond Okyere-Forson
 
Why Choose Brain Inventory For Ecommerce Development.pdf
Why Choose Brain Inventory For Ecommerce Development.pdfWhy Choose Brain Inventory For Ecommerce Development.pdf
Why Choose Brain Inventory For Ecommerce Development.pdfBrain Inventory
 
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdfARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdfTobias Schneck
 
Generative AI for Cybersecurity - EC-Council
Generative AI for Cybersecurity - EC-CouncilGenerative AI for Cybersecurity - EC-Council
Generative AI for Cybersecurity - EC-CouncilVICTOR MAESTRE RAMIREZ
 
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...OnePlan Solutions
 
Deep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - DatacampDeep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - DatacampVICTOR MAESTRE RAMIREZ
 
Big Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/ML
Big Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/MLBig Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/ML
Big Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/MLAlluxio, Inc.
 
Kawika Technologies pvt ltd Software Development Company in Trivandrum
Kawika Technologies pvt ltd Software Development Company in TrivandrumKawika Technologies pvt ltd Software Development Company in Trivandrum
Kawika Technologies pvt ltd Software Development Company in TrivandrumKawika Technologies
 
OpenChain Webinar: Universal CVSS Calculator
OpenChain Webinar: Universal CVSS CalculatorOpenChain Webinar: Universal CVSS Calculator
OpenChain Webinar: Universal CVSS CalculatorShane Coughlan
 
Top Software Development Trends in 2024
Top Software Development Trends in  2024Top Software Development Trends in  2024
Top Software Development Trends in 2024Mind IT Systems
 
Sales Territory Management: A Definitive Guide to Expand Sales Coverage
Sales Territory Management: A Definitive Guide to Expand Sales CoverageSales Territory Management: A Definitive Guide to Expand Sales Coverage
Sales Territory Management: A Definitive Guide to Expand Sales CoverageDista
 
Webinar_050417_LeClair12345666777889.ppt
Webinar_050417_LeClair12345666777889.pptWebinar_050417_LeClair12345666777889.ppt
Webinar_050417_LeClair12345666777889.pptkinjal48
 
JS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIJS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIIvo Andreev
 
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.Sharon Liu
 
Streamlining Your Application Builds with Cloud Native Buildpacks
Streamlining Your Application Builds  with Cloud Native BuildpacksStreamlining Your Application Builds  with Cloud Native Buildpacks
Streamlining Your Application Builds with Cloud Native BuildpacksVish Abrams
 

Recently uploaded (20)

How Does the Epitome of Spyware Differ from Other Malicious Software?
How Does the Epitome of Spyware Differ from Other Malicious Software?How Does the Epitome of Spyware Differ from Other Malicious Software?
How Does the Epitome of Spyware Differ from Other Malicious Software?
 
Salesforce AI Associate Certification.pptx
Salesforce AI Associate Certification.pptxSalesforce AI Associate Certification.pptx
Salesforce AI Associate Certification.pptx
 
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine HarmonyLeveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
 
online pdf editor software solutions.pdf
online pdf editor software solutions.pdfonline pdf editor software solutions.pdf
online pdf editor software solutions.pdf
 
Growing Oxen: channel operators and retries
Growing Oxen: channel operators and retriesGrowing Oxen: channel operators and retries
Growing Oxen: channel operators and retries
 
AI Embracing Every Shade of Human Beauty
AI Embracing Every Shade of Human BeautyAI Embracing Every Shade of Human Beauty
AI Embracing Every Shade of Human Beauty
 
Why Choose Brain Inventory For Ecommerce Development.pdf
Why Choose Brain Inventory For Ecommerce Development.pdfWhy Choose Brain Inventory For Ecommerce Development.pdf
Why Choose Brain Inventory For Ecommerce Development.pdf
 
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdfARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
 
Generative AI for Cybersecurity - EC-Council
Generative AI for Cybersecurity - EC-CouncilGenerative AI for Cybersecurity - EC-Council
Generative AI for Cybersecurity - EC-Council
 
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
 
Deep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - DatacampDeep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - Datacamp
 
Big Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/ML
Big Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/MLBig Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/ML
Big Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/ML
 
Kawika Technologies pvt ltd Software Development Company in Trivandrum
Kawika Technologies pvt ltd Software Development Company in TrivandrumKawika Technologies pvt ltd Software Development Company in Trivandrum
Kawika Technologies pvt ltd Software Development Company in Trivandrum
 
OpenChain Webinar: Universal CVSS Calculator
OpenChain Webinar: Universal CVSS CalculatorOpenChain Webinar: Universal CVSS Calculator
OpenChain Webinar: Universal CVSS Calculator
 
Top Software Development Trends in 2024
Top Software Development Trends in  2024Top Software Development Trends in  2024
Top Software Development Trends in 2024
 
Sales Territory Management: A Definitive Guide to Expand Sales Coverage
Sales Territory Management: A Definitive Guide to Expand Sales CoverageSales Territory Management: A Definitive Guide to Expand Sales Coverage
Sales Territory Management: A Definitive Guide to Expand Sales Coverage
 
Webinar_050417_LeClair12345666777889.ppt
Webinar_050417_LeClair12345666777889.pptWebinar_050417_LeClair12345666777889.ppt
Webinar_050417_LeClair12345666777889.ppt
 
JS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIJS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AI
 
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
 
Streamlining Your Application Builds with Cloud Native Buildpacks
Streamlining Your Application Builds  with Cloud Native BuildpacksStreamlining Your Application Builds  with Cloud Native Buildpacks
Streamlining Your Application Builds with Cloud Native Buildpacks
 

TMF meets GMF