Agenda
                    
                        - Smalltalk in C#: AjTalk
 
                        - Smalltalk in JavaScript: AjTalkJs
 
                    
                
                
                
                    
                    
                    
                        The Project
                        https://github.com/ajlopez/AjTalk
                        
                            - VM using bytecodes
 
                            - Using .NET types and libraries
 
                            - More than one VM in same process
 
                            - Using NPM for packaging
 
                            - Agents
 
                            - Remote Objects
 
                            - Transactions (a la STM)
 
                            - Minimal image
 
                            - Host Machine
 
                            - Compile with Visitors
 
                        
                    
                    
                    
                        Object Table
                        
                    
                    
                        AjTalk Strategy
                        
                    
                    
## Accessing .NET objects and types
Native method
```smalltalk
1 toString
```
Creating native objects
```smalltalk
@System.Data.DataSet new
```
Creating native objects with arguments
```smalltalk
@System.IO.FileInfo new: ‘myfile.txt’.
@System.Data.SqlClient.SqlCommand new: ‘select * from employee’ with: conn
```
                    
                    
                        Agents
                        
                    
                    
                
				                
                
                    
                    
                    
                    
                    
                        Node.js
                        
                            - JavaScript Runtime
 
                            - Based on Google V8 JavaScript Engine
 
                            - One thread for JavaScript
 
                            - Asynchronous operations via LibUv
 
                            - Native Modules
 
                            - Module Ecosystem
 
                        
                                    
                    
                        Vibrant Community
                        
                    
                    
                
                
                
                    THE END
                    BY Angel 'Java' Lopez / www.ajlopez.com / @ajlopez