SlideShare uma empresa Scribd logo
1 de 60
Baixar para ler offline
Today and Tomorrow


       John O’Keefe
Principal Software Architect


      4 September 2009
Agenda


 Introduction
 History
 VA Smalltalk™ 8.0
 Future Directions
 Q&A
Who am I?

       First saw (Digitalk) Smalltalk in 1987; first used
       Smalltalk shortly thereafter
       Joined original IBM Smalltalk prototype team in
       1990
       Joined IBM VisualAge Smalltalk development
       team as a founding member in 1991
       Team Lead and Chief Architect of IBM VisualAge
       Smalltalk from 1997 to 2007
       Retired from IBM and joined Instantiations in
       February 2007 to lead VA Smalltalk development
       team
Product History

2004 Instantiations   provides VisualAgeÂŽ Smalltalk
support for IBM
2005   Instantiations licenses VisualAge Smalltalk
2005   VA Smalltalk 7.0
2006   VA Smalltalk 7.0.1
2007   VA Smalltalk 7.5, 7.5.1 and 7.5.2
2009   VA Smalltalk 8.0, 8.0.1
VA Smalltalk 8.0

Seaside
Browser and Tools Enhancements
Web Services Enhancements
Revised Documentation
Small Enhancements
What’s Missing?
VA Smalltalk 8.0 Driving Forces


Industry-accepted functionality
• Seaside and friends
Modernization
• Browsers
Compatibility
• ANSI Exceptions, Internationalization
Performance
• Under the covers
Seaside – what is it?

Framework for developing sophisticated web
apps
• Base for higher-function frameworks
Layered abstraction over HTTP and HTML
Quickly build highly-interactive apps
• HTML concepts exposed in Smalltalk
• HTML markup hidden
Scriptaculous – what is it?


Scriptaculous
• Javascript libraries
     Visual effects engine
     Drag and drop (including sortable lists)
     Ajax controls
jQuery – what is it?


jQuery Core
• Fast, concise JavaScript Library
• Simplifies HTML document traversing, event
  handling, animating, and Ajax interactions
jQuery UI
• Abstractions for low-level interaction and
  animation, advanced effects and high-level,
  theme-able widgets
VA Smalltalk V8.0 Seaside

Seaside 2.9alpha3 +
•   Core
•   jQuery
•   Scriptaculous
•   RSS
•   Slime
      Extension to RB Smalllint
Seaside Tools
Seaside Porting Layer
Seaside Tools
Seaside Tools
Seaside Porting Layer


Classes and class extensions to enable
porting of Seaside
• Driven primarily by needs of Seaside
    Content is changing (as Seaside changes)
• Implementation modeled on Squeak
• Useful for doing other ports
    Portions promoted to Base over time
VA Smalltalk Seaside Cautions


Seaside is alpha level
• API changes likely
Seaside Flow unsupported
• No #wait: because no
  continuations
   <some code>.
   r := self call: aComponent. “NO, does
   self wait:”
   <more code using r>.

   <some code>.
   self show: aComponent onAnswer: [
Vastgoodies placeholder
NSF placeholder
VA Smalltalk 8.0

Seaside
Browser and Tools Enhancements
Web Services Enhancements
Revised Documentation
Small Enhancements
What’s Missing?
Driving Forces for Change


User requests for modernized browsers
User requests for functional merge
• Standard browsers, VA Assist browsers,
  Trailblazer, Refactoring browser
Multiple input channels
• Conference attendees
• VA Smalltalk Online Forum
VA Smalltalk V7.5 Browser
V8.0 Browser
Affected Windows


All EtWindow children (toolbar)
Classes browser
Class browser
Application browser
Shadow application browser
Script browser
Version Graph Tab
Inspector Enhancements

                         Integer shows
                         decimal, hex,
                         octal, and binary
                         Workspace
                         contents
                         discarded on
                         inspector close
                         Use Options
                         menu to toggle
                         workspace on/off
Other Tools


Refactoring Browser enhancements
• contributed by Niall Ross
• Changes reflected in MED RB Extensions
SUnit Browser enhancements
• contributed by Niall Ross
Bytecode Browser
VA Smalltalk 8.0

Seaside
Browser and Tools Enhancements
Web Services Enhancements
Revised Documentation
Small Enhancements
What’s Missing?
Web Services Enhancements

Framework extensions
• Document/literal and Document/literal wrapped
  WSDL
Web Services Cookbook
• Step-by-step “How do I” for deploying and invoking
    Debugging tips
    Serialization/de-serialization customization future
    Hosting a web service future
Xml Basic Tools Goodie Upgrade To Wizard
VA Smalltalk 8.0

Seaside
Browser and Tools Enhancements
Web Services Enhancements
Revised Documentation
Small Enhancements
What’s Missing?
Revised Documentation

Content
• First significant content revision since IBM VisualAge
  Smalltalk V6.0
Delivery mechanism = WebWorks
• VA Smalltalk Documentation Server is gone
• All capability available from web or local
     Web will get ‘between release’ updates
     ‘Between release’ updates rolled up for next release
• PDF books     future

Appearance
• Uses CSS for formatting
V7.5 and Earlier Documentation
V8.0 Documentation
Contents Tab
Search Tab
VA Smalltalk 8.0

Seaside
Browser and Tools Enhancements
Web Services Enhancements
Revised Documentation
Small Enhancements
What’s Missing?
Miscellaneous


Theme support on Windows XP
XD image parameter import/export
ENVY/Image Interactive Test Suites added
to provide additional examples
Simple benchmarking methods
• #sampleAndBrowse
• #traceAndBrowse
Goodies from VA Smalltalk


Mechanism for delivery of
• not-quite-ready features
• Existing website goodies
Location
• In product code repository
    UML Designer
    …
• In VAStGoodies.com repository
VA Smalltalk 8.0

Seaside
Browser and Tools Enhancements
Web Services Enhancements
Revised Documentation
Small Enhancements
What’s Missing?
Unsupported Platforms

OS/2
 • Hasn’t officially shipped since VAST V6.0.1
 • Most code REMOVED
 • Some tidbits remain, but do not function
      Being removed as we find it
Deferred Function


Full Unicode (UTF-8) support
• Staged into V8.0.x
VA Smalltalk V8.0.1 Planned
Content

Seaside 3.0 Beta
• Some porting extensions promoted to Base **
VASTGoodies.com Tools
Unicode (UTF-8) initial support
Portable ProgressView part added to CE
palette **
VA Smalltalk V8.0.1 Planned
Content (continued)

Windows Server 2008 and Windows 7   official
support
cdecl calling convention supported on
Windows **
• EsEntryPoint support future
VA Smalltalk V8.0.1 Planned
Content (continued)

UNIXProcess defaults to bash on Linux
UNIX install enhancements **
• No csh symbolic link needed on Linux
• Legacy X11 directories created and linked to
  system X11 directories on Linux
• Install directory automatically created
Sections of Web Services Cookbook on VA
Forum
VA Smalltalk V8.0.2 Top Candidates


Seaside 3.0 GA (if available)
• Seaside Flow
• Development tools
     Class browser
     Profiler
     …
• Deployment tools
     Sample packaging instructions
     Runtime startup
• Seaside on Apache, etc.
     FastCGI or AJP or …
VA Smalltalk V8.0.2 Top Candidates
(continued)
SST Servlet multipart forms
Unicode (UTF-8) support partial
Glorp object/relational database mapper
• ActiveRecord support future
ANSI Smalltalk
• Timezone
OpenSSL
• Currency (OpenSSL 1.0)
• Security framework
     Wrap OpenSSL security interfaces
Ongoing


Platforms
• Ubuntu 9.04
• Fedora Core 11
• …
Performance (hotspot analysis)
•   Base classes
•   XML parser
•   VM
•   …
Ongoing (continued)


VM Enhancements
• Investigate 64 bit (extended memory addressing)
• Investigate incremental garbage collection
Look & Feel
•   More browser enhancements
•   More native Windows widgets
•   Improved icon support
•   .png support
•   .tiff improvements
Ongoing (continued)


Improved install/uninstall
• Single installer for Client and Manager
• Install/Repair/Uninstall
• Seamless on Vista and Windows 7 with User
  Account Control (UAC)
Windows Services in Smalltalk
• Eliminate special startup executable
• More flexibility in structuring services
TCP/IP V6
Ongoing (continued)

Web Services
• XML editor (enhancement to current XML Viewer)
• XML <-> Smalltalk classes translation
• Automated definition of Smalltalk-based web service
• Diagnostic tools
     TCP/HTTP/SOAP Monitor
     Performance Monitor
When?


Planned release dates:
• 10/2009 VA Smalltalk V8.0.1
• 04/2010 VA Smalltalk V8.0.2

Check website for latest information
GETTING VA SMALLTALK
How do I get VA Smalltalk?


Download evaluation copy
Buy development licenses
How do I get VA Smalltalk?


Download evaluation copy
Buy development licenses
Download development build
V8.0.1 Development Builds


An experiment in
• Early delivery
• Continuous integration
Availability
•   From VA Smalltalk website
•   Irregular schedule
•   Documentation updated to match build
•   Windows and Linux only
Fix List for build on VA Smalltalk forum
V8.0.1 Development Build Example
How do I get VA Smalltalk?


Download evaluation copy
Buy development licenses
Download development build
Be a committer on an Open Source project
Open Source project committer


Instantiations will donate a perpetual VA
Smalltalk license
• to committers
• working on non-commercial open source project
No charge
Details on the VA Smalltalk home page
• Click on
Click on Company at the top of any page
How do I get VA Smalltalk?


Download evaluation copy
Buy development licenses
Download development build
Be a committer on an Open Source project
Be an educational institution
Academic License


Accredited educational institutions
• Teaching staff
• Students
No charge
Details: Pricing & How to Purchase link on
VA Smalltalk homepage
More info about VA Smalltalk
    General Info:   vast@instantiations.com

    Sales:          sales@instantiations.com

    Support:        vast-support@instantiations.com

    John O’Keefe: john_okeefe@instantiations.com

    Forum:          www.instantiations.com/forum/viewforum.php?f=12

    Website:        www.instantiations.com/vast

                        Slides available at
http://www.instantiations.com/VAST/more/st+news+events.html
Q&A

Mais conteĂşdo relacionado

Mais procurados

Oracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with LessOracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with Less
Ed Burns
 
DNS: from manual records to a modern & dynamic approach
DNS: from manual records to a modern & dynamic approachDNS: from manual records to a modern & dynamic approach
DNS: from manual records to a modern & dynamic approach
Scaleway
 
Hnd201 Building Ibm Lotus Domino Applications With Ajax Plugins
Hnd201 Building Ibm Lotus Domino Applications With Ajax PluginsHnd201 Building Ibm Lotus Domino Applications With Ajax Plugins
Hnd201 Building Ibm Lotus Domino Applications With Ajax Plugins
dominion
 
Why we didn't catch that
Why we didn't catch thatWhy we didn't catch that
Why we didn't catch that
gaoliang641
 
Why we didn't catch that application bugs
Why we didn't catch that   application bugsWhy we didn't catch that   application bugs
Why we didn't catch that application bugs
gaoliang641
 
Ankit Chohan - Java
Ankit Chohan - JavaAnkit Chohan - Java
Ankit Chohan - Java
Ankit Chohan
 

Mais procurados (20)

Select Star: Unified Batch & Streaming with Flink SQL & Pulsar
Select Star: Unified Batch & Streaming with Flink SQL & PulsarSelect Star: Unified Batch & Streaming with Flink SQL & Pulsar
Select Star: Unified Batch & Streaming with Flink SQL & Pulsar
 
Oracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with LessOracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with Less
 
12 Factor Scala
12 Factor Scala12 Factor Scala
12 Factor Scala
 
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12cDeveloping Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
 
DNS: from manual records to a modern & dynamic approach
DNS: from manual records to a modern & dynamic approachDNS: from manual records to a modern & dynamic approach
DNS: from manual records to a modern & dynamic approach
 
September-2021 OpenNTF Webinar: Domino Online Meeting Integration (DOMI)
September-2021 OpenNTF Webinar: Domino Online Meeting Integration (DOMI)September-2021 OpenNTF Webinar: Domino Online Meeting Integration (DOMI)
September-2021 OpenNTF Webinar: Domino Online Meeting Integration (DOMI)
 
Hnd201 Building Ibm Lotus Domino Applications With Ajax Plugins
Hnd201 Building Ibm Lotus Domino Applications With Ajax PluginsHnd201 Building Ibm Lotus Domino Applications With Ajax Plugins
Hnd201 Building Ibm Lotus Domino Applications With Ajax Plugins
 
5 steps to take setting up a streamlined container pipeline
5 steps to take setting up a streamlined container pipeline5 steps to take setting up a streamlined container pipeline
5 steps to take setting up a streamlined container pipeline
 
Expect the unexpected: Anticipate and prepare for failures in microservices b...
Expect the unexpected: Anticipate and prepare for failures in microservices b...Expect the unexpected: Anticipate and prepare for failures in microservices b...
Expect the unexpected: Anticipate and prepare for failures in microservices b...
 
Why we didn't catch that
Why we didn't catch thatWhy we didn't catch that
Why we didn't catch that
 
OpenNTF Webinar Series: DQL with John Curtis September 2020
OpenNTF Webinar Series: DQL with John Curtis September 2020OpenNTF Webinar Series: DQL with John Curtis September 2020
OpenNTF Webinar Series: DQL with John Curtis September 2020
 
Lightning talk: 12 Factor Containers
Lightning talk: 12 Factor ContainersLightning talk: 12 Factor Containers
Lightning talk: 12 Factor Containers
 
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
 
Upgrading to Oracle SOA 12.1 & 12.2 - Practical Steps and Project Experiences
Upgrading to Oracle SOA 12.1 & 12.2 - Practical Steps and Project ExperiencesUpgrading to Oracle SOA 12.1 & 12.2 - Practical Steps and Project Experiences
Upgrading to Oracle SOA 12.1 & 12.2 - Practical Steps and Project Experiences
 
CA World 2014 Release Automation Coexistence in the Enterprise
CA World 2014 Release Automation Coexistence in the EnterpriseCA World 2014 Release Automation Coexistence in the Enterprise
CA World 2014 Release Automation Coexistence in the Enterprise
 
Oracle Service Bus 12c (12.2.1) What You Always Wanted to Know
Oracle Service Bus 12c (12.2.1) What You Always Wanted to KnowOracle Service Bus 12c (12.2.1) What You Always Wanted to Know
Oracle Service Bus 12c (12.2.1) What You Always Wanted to Know
 
Dev112 let's calendar that
Dev112   let's calendar thatDev112   let's calendar that
Dev112 let's calendar that
 
Why we didn't catch that application bugs
Why we didn't catch that   application bugsWhy we didn't catch that   application bugs
Why we didn't catch that application bugs
 
Device Programmability with Cisco Plug-n-Play Solution
Device Programmability with Cisco Plug-n-Play SolutionDevice Programmability with Cisco Plug-n-Play Solution
Device Programmability with Cisco Plug-n-Play Solution
 
Ankit Chohan - Java
Ankit Chohan - JavaAnkit Chohan - Java
Ankit Chohan - Java
 

Destaque

nationwide 3Q07 Sub-Prime/Alt-A Disclosure
nationwide 3Q07 Sub-Prime/Alt-A Disclosurenationwide 3Q07 Sub-Prime/Alt-A Disclosure
nationwide 3Q07 Sub-Prime/Alt-A Disclosure
finance11
 

Destaque (7)

Webmaster
WebmasterWebmaster
Webmaster
 
nationwide 3Q07 Sub-Prime/Alt-A Disclosure
nationwide 3Q07 Sub-Prime/Alt-A Disclosurenationwide 3Q07 Sub-Prime/Alt-A Disclosure
nationwide 3Q07 Sub-Prime/Alt-A Disclosure
 
Secuencia didĂĄctica
Secuencia didĂĄcticaSecuencia didĂĄctica
Secuencia didĂĄctica
 
VA Smalltalk Update
VA Smalltalk UpdateVA Smalltalk Update
VA Smalltalk Update
 
Dino2 - the Amazing Evolution of the VA Smalltalk Virtual Machine
Dino2 - the Amazing Evolution of the VA Smalltalk Virtual MachineDino2 - the Amazing Evolution of the VA Smalltalk Virtual Machine
Dino2 - the Amazing Evolution of the VA Smalltalk Virtual Machine
 
(How) Does VA Smalltalk fit into today's IT landscapes?
(How) Does VA Smalltalk fit into today's IT landscapes?(How) Does VA Smalltalk fit into today's IT landscapes?
(How) Does VA Smalltalk fit into today's IT landscapes?
 
Get your Project back in Shape!
Get your Project back in Shape!Get your Project back in Shape!
Get your Project back in Shape!
 

Semelhante a VASmalltalk, Today and Tomorrow

FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
WSPDC & FEDSPUG
 
Netbeans65 Osum Slides
Netbeans65 Osum SlidesNetbeans65 Osum Slides
Netbeans65 Osum Slides
Abhishek Gupta
 
Benefits of an Open environment with Wakanda
Benefits of an Open environment with WakandaBenefits of an Open environment with Wakanda
Benefits of an Open environment with Wakanda
Alexandre Morgaut
 
WebSphere Portal Technical Overview
WebSphere Portal Technical OverviewWebSphere Portal Technical Overview
WebSphere Portal Technical Overview
Vincent Perrin
 
RAP vs GWT Which AJAX Technology is for you?
RAP vs GWT Which AJAX Technology is for you?RAP vs GWT Which AJAX Technology is for you?
RAP vs GWT Which AJAX Technology is for you?
Mark Russell
 
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Quek Lilian
 

Semelhante a VASmalltalk, Today and Tomorrow (20)

VAST 8.0
VAST 8.0VAST 8.0
VAST 8.0
 
IBM WebSphere Portal 6.1 Preview - What's New
IBM WebSphere Portal 6.1 Preview - What's NewIBM WebSphere Portal 6.1 Preview - What's New
IBM WebSphere Portal 6.1 Preview - What's New
 
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
 
Netbeans65 Osum Slides
Netbeans65 Osum SlidesNetbeans65 Osum Slides
Netbeans65 Osum Slides
 
C# 4.0 - Whats New
C# 4.0 - Whats NewC# 4.0 - Whats New
C# 4.0 - Whats New
 
HTML5 Comprehensive Guide
HTML5 Comprehensive GuideHTML5 Comprehensive Guide
HTML5 Comprehensive Guide
 
Igalia Focus and Goals 2020 (2019 WebKit Contributors Meeting)
Igalia Focus and Goals 2020 (2019 WebKit Contributors Meeting)Igalia Focus and Goals 2020 (2019 WebKit Contributors Meeting)
Igalia Focus and Goals 2020 (2019 WebKit Contributors Meeting)
 
Benefits of an Open environment with Wakanda
Benefits of an Open environment with WakandaBenefits of an Open environment with Wakanda
Benefits of an Open environment with Wakanda
 
S60 3rd FP2 Widgets
S60 3rd FP2 WidgetsS60 3rd FP2 Widgets
S60 3rd FP2 Widgets
 
WebSphere Portal Technical Overview
WebSphere Portal Technical OverviewWebSphere Portal Technical Overview
WebSphere Portal Technical Overview
 
RAP vs GWT Which AJAX Technology is for you?
RAP vs GWT Which AJAX Technology is for you?RAP vs GWT Which AJAX Technology is for you?
RAP vs GWT Which AJAX Technology is for you?
 
HTML5 Intoduction for Web Developers
HTML5 Intoduction for Web DevelopersHTML5 Intoduction for Web Developers
HTML5 Intoduction for Web Developers
 
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
 
The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014
The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014
The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014
 
JCON_15FactorWorkshop.pptx
JCON_15FactorWorkshop.pptxJCON_15FactorWorkshop.pptx
JCON_15FactorWorkshop.pptx
 
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
 
Nuxeo Roadmap 2008/06
Nuxeo Roadmap 2008/06Nuxeo Roadmap 2008/06
Nuxeo Roadmap 2008/06
 
soft-shake.ch - Introduction to HTML5
soft-shake.ch - Introduction to HTML5soft-shake.ch - Introduction to HTML5
soft-shake.ch - Introduction to HTML5
 
I T Mentors V S2008 Onramp240 V1
I T Mentors  V S2008  Onramp240 V1I T Mentors  V S2008  Onramp240 V1
I T Mentors V S2008 Onramp240 V1
 
P01 source-book1-hatsv6 pot-customer_solutions
P01 source-book1-hatsv6 pot-customer_solutionsP01 source-book1-hatsv6 pot-customer_solutions
P01 source-book1-hatsv6 pot-customer_solutions
 

Mais de ESUG

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
ESUG
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
ESUG
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
ESUG
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
ESUG
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
ESUG
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
ESUG
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
ESUG
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
ESUG
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
ESUG
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
ESUG
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
ESUG
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
ESUG
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
ESUG
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
ESUG
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
ESUG
 

Mais de ESUG (20)

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in Pharo
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector Tuning
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing Score
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 

VASmalltalk, Today and Tomorrow

  • 1. Today and Tomorrow John O’Keefe Principal Software Architect 4 September 2009
  • 2. Agenda Introduction History VA Smalltalk™ 8.0 Future Directions Q&A
  • 3. Who am I? First saw (Digitalk) Smalltalk in 1987; first used Smalltalk shortly thereafter Joined original IBM Smalltalk prototype team in 1990 Joined IBM VisualAge Smalltalk development team as a founding member in 1991 Team Lead and Chief Architect of IBM VisualAge Smalltalk from 1997 to 2007 Retired from IBM and joined Instantiations in February 2007 to lead VA Smalltalk development team
  • 4. Product History 2004 Instantiations provides VisualAgeÂŽ Smalltalk support for IBM 2005 Instantiations licenses VisualAge Smalltalk 2005 VA Smalltalk 7.0 2006 VA Smalltalk 7.0.1 2007 VA Smalltalk 7.5, 7.5.1 and 7.5.2 2009 VA Smalltalk 8.0, 8.0.1
  • 5. VA Smalltalk 8.0 Seaside Browser and Tools Enhancements Web Services Enhancements Revised Documentation Small Enhancements What’s Missing?
  • 6. VA Smalltalk 8.0 Driving Forces Industry-accepted functionality • Seaside and friends Modernization • Browsers Compatibility • ANSI Exceptions, Internationalization Performance • Under the covers
  • 7. Seaside – what is it? Framework for developing sophisticated web apps • Base for higher-function frameworks Layered abstraction over HTTP and HTML Quickly build highly-interactive apps • HTML concepts exposed in Smalltalk • HTML markup hidden
  • 8. Scriptaculous – what is it? Scriptaculous • Javascript libraries Visual effects engine Drag and drop (including sortable lists) Ajax controls
  • 9. jQuery – what is it? jQuery Core • Fast, concise JavaScript Library • Simplifies HTML document traversing, event handling, animating, and Ajax interactions jQuery UI • Abstractions for low-level interaction and animation, advanced effects and high-level, theme-able widgets
  • 10. VA Smalltalk V8.0 Seaside Seaside 2.9alpha3 + • Core • jQuery • Scriptaculous • RSS • Slime Extension to RB Smalllint Seaside Tools Seaside Porting Layer
  • 13. Seaside Porting Layer Classes and class extensions to enable porting of Seaside • Driven primarily by needs of Seaside Content is changing (as Seaside changes) • Implementation modeled on Squeak • Useful for doing other ports Portions promoted to Base over time
  • 14. VA Smalltalk Seaside Cautions Seaside is alpha level • API changes likely Seaside Flow unsupported • No #wait: because no continuations <some code>. r := self call: aComponent. “NO, does self wait:” <more code using r>. <some code>. self show: aComponent onAnswer: [
  • 15.
  • 17. VA Smalltalk 8.0 Seaside Browser and Tools Enhancements Web Services Enhancements Revised Documentation Small Enhancements What’s Missing?
  • 18. Driving Forces for Change User requests for modernized browsers User requests for functional merge • Standard browsers, VA Assist browsers, Trailblazer, Refactoring browser Multiple input channels • Conference attendees • VA Smalltalk Online Forum
  • 19. VA Smalltalk V7.5 Browser
  • 21. Affected Windows All EtWindow children (toolbar) Classes browser Class browser Application browser Shadow application browser Script browser
  • 23. Inspector Enhancements Integer shows decimal, hex, octal, and binary Workspace contents discarded on inspector close Use Options menu to toggle workspace on/off
  • 24. Other Tools Refactoring Browser enhancements • contributed by Niall Ross • Changes reflected in MED RB Extensions SUnit Browser enhancements • contributed by Niall Ross
  • 26. VA Smalltalk 8.0 Seaside Browser and Tools Enhancements Web Services Enhancements Revised Documentation Small Enhancements What’s Missing?
  • 27. Web Services Enhancements Framework extensions • Document/literal and Document/literal wrapped WSDL Web Services Cookbook • Step-by-step “How do I” for deploying and invoking Debugging tips Serialization/de-serialization customization future Hosting a web service future Xml Basic Tools Goodie Upgrade To Wizard
  • 28. VA Smalltalk 8.0 Seaside Browser and Tools Enhancements Web Services Enhancements Revised Documentation Small Enhancements What’s Missing?
  • 29. Revised Documentation Content • First significant content revision since IBM VisualAge Smalltalk V6.0 Delivery mechanism = WebWorks • VA Smalltalk Documentation Server is gone • All capability available from web or local Web will get ‘between release’ updates ‘Between release’ updates rolled up for next release • PDF books future Appearance • Uses CSS for formatting
  • 30. V7.5 and Earlier Documentation
  • 34. VA Smalltalk 8.0 Seaside Browser and Tools Enhancements Web Services Enhancements Revised Documentation Small Enhancements What’s Missing?
  • 35. Miscellaneous Theme support on Windows XP XD image parameter import/export ENVY/Image Interactive Test Suites added to provide additional examples Simple benchmarking methods • #sampleAndBrowse • #traceAndBrowse
  • 36. Goodies from VA Smalltalk Mechanism for delivery of • not-quite-ready features • Existing website goodies Location • In product code repository UML Designer … • In VAStGoodies.com repository
  • 37. VA Smalltalk 8.0 Seaside Browser and Tools Enhancements Web Services Enhancements Revised Documentation Small Enhancements What’s Missing?
  • 38. Unsupported Platforms OS/2 • Hasn’t officially shipped since VAST V6.0.1 • Most code REMOVED • Some tidbits remain, but do not function Being removed as we find it
  • 39. Deferred Function Full Unicode (UTF-8) support • Staged into V8.0.x
  • 40. VA Smalltalk V8.0.1 Planned Content Seaside 3.0 Beta • Some porting extensions promoted to Base ** VASTGoodies.com Tools Unicode (UTF-8) initial support Portable ProgressView part added to CE palette **
  • 41. VA Smalltalk V8.0.1 Planned Content (continued) Windows Server 2008 and Windows 7 official support cdecl calling convention supported on Windows ** • EsEntryPoint support future
  • 42. VA Smalltalk V8.0.1 Planned Content (continued) UNIXProcess defaults to bash on Linux UNIX install enhancements ** • No csh symbolic link needed on Linux • Legacy X11 directories created and linked to system X11 directories on Linux • Install directory automatically created Sections of Web Services Cookbook on VA Forum
  • 43. VA Smalltalk V8.0.2 Top Candidates Seaside 3.0 GA (if available) • Seaside Flow • Development tools Class browser Profiler … • Deployment tools Sample packaging instructions Runtime startup • Seaside on Apache, etc. FastCGI or AJP or …
  • 44. VA Smalltalk V8.0.2 Top Candidates (continued) SST Servlet multipart forms Unicode (UTF-8) support partial Glorp object/relational database mapper • ActiveRecord support future ANSI Smalltalk • Timezone OpenSSL • Currency (OpenSSL 1.0) • Security framework Wrap OpenSSL security interfaces
  • 45. Ongoing Platforms • Ubuntu 9.04 • Fedora Core 11 • … Performance (hotspot analysis) • Base classes • XML parser • VM • …
  • 46. Ongoing (continued) VM Enhancements • Investigate 64 bit (extended memory addressing) • Investigate incremental garbage collection Look & Feel • More browser enhancements • More native Windows widgets • Improved icon support • .png support • .tiff improvements
  • 47. Ongoing (continued) Improved install/uninstall • Single installer for Client and Manager • Install/Repair/Uninstall • Seamless on Vista and Windows 7 with User Account Control (UAC) Windows Services in Smalltalk • Eliminate special startup executable • More flexibility in structuring services TCP/IP V6
  • 48. Ongoing (continued) Web Services • XML editor (enhancement to current XML Viewer) • XML <-> Smalltalk classes translation • Automated definition of Smalltalk-based web service • Diagnostic tools TCP/HTTP/SOAP Monitor Performance Monitor
  • 49. When? Planned release dates: • 10/2009 VA Smalltalk V8.0.1 • 04/2010 VA Smalltalk V8.0.2 Check website for latest information
  • 51. How do I get VA Smalltalk? Download evaluation copy Buy development licenses
  • 52. How do I get VA Smalltalk? Download evaluation copy Buy development licenses Download development build
  • 53. V8.0.1 Development Builds An experiment in • Early delivery • Continuous integration Availability • From VA Smalltalk website • Irregular schedule • Documentation updated to match build • Windows and Linux only Fix List for build on VA Smalltalk forum
  • 55. How do I get VA Smalltalk? Download evaluation copy Buy development licenses Download development build Be a committer on an Open Source project
  • 56. Open Source project committer Instantiations will donate a perpetual VA Smalltalk license • to committers • working on non-commercial open source project No charge Details on the VA Smalltalk home page • Click on Click on Company at the top of any page
  • 57. How do I get VA Smalltalk? Download evaluation copy Buy development licenses Download development build Be a committer on an Open Source project Be an educational institution
  • 58. Academic License Accredited educational institutions • Teaching staff • Students No charge Details: Pricing & How to Purchase link on VA Smalltalk homepage
  • 59. More info about VA Smalltalk General Info: vast@instantiations.com Sales: sales@instantiations.com Support: vast-support@instantiations.com John O’Keefe: john_okeefe@instantiations.com Forum: www.instantiations.com/forum/viewforum.php?f=12 Website: www.instantiations.com/vast Slides available at http://www.instantiations.com/VAST/more/st+news+events.html
  • 60. Q&A