SlideShare une entreprise Scribd logo
1  sur  39
Télécharger pour lire hors ligne
VA Smalltalk Update
        John O’Keefe
Principal Smalltalk Architect
     Instantiations, Inc.


         Copyright, Instantiations, Inc.
But first, the rebirth of
             Instantiations
• Instantiations roots are in Smalltalk development
  tools
• The company licensed Smalltalk technology and
  grew
• The Smalltalk tools were very good, so the
  company redid them for Java and grew
    and redid them again for Eclipse and grew
• Google liked the Java tools, so they bought that
  part of Instantiations
    and Instantiations took the money and went back to its
    roots
• VA Smalltalk...Onward and Upward!
                       Copyright, Instantiations, Inc.
Copyright, Instantiations, Inc.
VA Smalltalk V8.0.2
                 May 2010

•   Seaside 3.0 update
•   GLORP initial release
•   Platform currency and enhancements
•   Database currency and enhancements
•   Class library enhancements
•   SUnit 4.0 release
•   Documentation updates



                  Copyright, Instantiations, Inc.
Seaside 3.0
• Seaside is an open source framework for
  developing sophisticated web applications
    Layered abstraction over HTTP and HTML
     • HTML concepts exposed in Smalltalk
     • HTML markup hidden
    Base for higher-function frameworks
    Quickly build highly interactive applications
• Scriptaculous and jQuery frameworks
    JavaScript Ajax libraries
    Programmed through Smalltalk artifacts


                      Copyright, Instantiations, Inc.
Copyright, Instantiations, Inc.
Copyright, Instantiations, Inc.
Seaside Cautions

• Seaside Flow (currently) unsupported by
  VA Smalltalk
   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: [ :r |
       <more code using r ]. “YES”



                   Copyright, Instantiations, Inc.
GLORP Initial Release
                0.3.178+
• Generic Lightweight Object-Relational
  Persistence
    Open Source framework for Object/Relational
    database access
    With concepts reminiscent of popular TOPLink
    product
    Provides:
     •   Mapping of objects into relational databases
     •   Transactions for change grouping
     •   Non-intrusive implementation
     •   Support for queries based on objects and data
     •   High performance through optimized database access
    Documented in Database Guide

                        Copyright, Instantiations, Inc.
Platform Currency and
            Enhancements
• Support added for:
    Ubuntu 9.04 (32- and 64-bit)
    Windows Server 2008 R2 (64-bit)
• Windows executables are digitally signed
    Enhanced security
    Windows Logo Certification requirements




                   Copyright, Instantiations, Inc.
Platform Currency and
       Enhancements (cont.)
• Windows power management events
  supported
   GUI apps can react to Sleep/Hibernate and
   Resume
   New protocol on Subapplication class
    • #suspending
    • #resume
   Useful for resetting sockets, reconnecting
   development manager, etc.
   Documented in Smalltalk User's Guide


                    Copyright, Instantiations, Inc.
Database Currency and
            Enhancements
• Support added for Oracle 11g
    Compatibility mode
    No code changes
• Support added for Oracle function calls
    Eliminates need to wrap function calls in stored
    procedures
    Examples of usage shown in Database Guide




                    Copyright, Instantiations, Inc.
Database Currency and
       Enhancements (cont.)
• Support added for Anonymous SQL blocks
   Provides ability to send user-defined data
   types
   Provides ability to retrieve user-defined data
   types
   Supported in Oracle
   Examples of usage shown in Database Guide




                   Copyright, Instantiations, Inc.
Class Library Enhancements

• Method pragmas
   Allow you to annotate methods with user-
   defined processing information
   Stored as literals in instances of
   CompiledMethod
   Pragma class has protocol for finding and
   processing annotations
   Provided for Pier Content Management System
   Documented in Programmer’s Reference



                  Copyright, Instantiations, Inc.
Class Library Enhancements
               (cont.)
• Instance- and class-based exceptions are
  now polymorphic
    Providing clearer and more efficient handling
    of errors
    Brings back function dropped in VAST 6.0.1
    Example:
    ^ [ (Array new: 3) at: 4 ]
         on: Error do: [ :ex |
              Transcript cr; show: ex
    messageText. ex return ]

    Primitive failed in: Object>>#at: due to Index
    out of range in argument 1

                    Copyright, Instantiations, Inc.
SUnit 4.0
        Just in Time Resources
• Resources made available just-in-time:
    First test that needs it prompts setup
    Later tests that need it can see whether it has
    been (or failed to be) setup
    Tear down guaranteed at end of run; can be
    done anytime
• Resource-processing is ordered
    A test’s resources are setup in order and torn
    down in reverse order
    A resource’s resources are setup before it is
    setup and torn down after it is torn down

                    Copyright, Instantiations, Inc.
SUnit 4.0
                 Class Changes

• First there were three classes ...
   TestCase, TestSuite and TestResult
• And then there was a fourth ...
   TestResource to manage resources
• And now a fifth ...
  TestAsserter - abstract superclass of
     TestCase
     TestResource
     any user-created TestCase delegate class

• Resources understand #assert:… protocol
    #setUp and #isAvailable run inside the handler

                       Copyright, Instantiations, Inc.
SUnit 4.0
       Class Changes (cont.)
• Logging
   TestCase methods moved to the class-side
   #isLogging, and #failureLog (and
   #logFailure: is now on both sides)




                  Copyright, Instantiations, Inc.
Documentation Updates
• Web Services Guide
    Added Getting Started: Web Services in a Day
    Added Cookbook with debugging hints, XML de-
    serialization tips, and guidance on securing a Web
    service
• Smalltalk User’s Guide
    Added Application behavior when Windows Power
    Management events occur
    Moved Namespace support to the Programmer’s
    Reference
• Programmer’s Reference
    Added Pragmas, Namespace pragmas, and Annotation
    pragmas
• Database Guide
    Added GLORP Tutorial, Anonymous PL/SQL Blocks, and
    Function Calls using Native Oracle

                       Copyright, Instantiations, Inc.
Looking to the Future




      Copyright, Instantiations, Inc.
Future Releases

• Release schedule is twice a year
    Usually May and November
• Next release is November 2010
    Web interface
     • Seaside 3.0
    Development Tools
     • Message extraction tool
    Platform
     • Ubuntu 10.04
     • Fedora Core 13



                        Copyright, Instantiations, Inc.
Priority Technologies

•   Internationalization
•   Web interface
•   Database
•   GUI Look and Feel
•   Development Tools
•   Security
•   Performance and Scalability
•   Platforms
•   Other
                   Copyright, Instantiations, Inc.
Future Releases
              Candidates
• Internationalization
    Unicode/UTF-8
• Web interface
    Seaside 3.1
    SST Servlet multipart forms
    Web services tooling improvements
    Web services debugging tools/doc
    Validating XML parser



                    Copyright, Instantiations, Inc.
Future Releases
          Candidates (cont.)
• GUI Look and Feel
   GTK+ 2.x on Linux
   Additional Windows Common Controls
   Additional icon/image support
• Development Tools
   New ‘Settings’ framework and dialogs
   Improved Changes Browser
• Database
   GLORP infrastructure improvements
   GLORP Programmer’s Reference
   Active Records built on GLORP

                  Copyright, Instantiations, Inc.
Future Releases
             Candidates (cont.)
• Security
    “Basic” security framework -- current OpenSSL
    “Full” security framework -- OpenSSL 1.0
• Performance and Scalability
    Incremental garbage collection
    64-bit Smalltalk
    Class library performance hotspots
• Platform
    Windows Services control moved to Smalltalk


                    Copyright, Instantiations, Inc.
Future Releases
          Candidates (cont.)
• Installation
   Single installer for Client and Manager
   Install/Repair/Uninstall
   Seamless with User Account Control
   (UAC)
• Class Libraries
   Collection hashing policies
   Collection sorting policies

                 Copyright, Instantiations, Inc.
How Do I Get VA Smalltalk?

• Download evaluation copy
• Buy development licenses




                Copyright, Instantiations, Inc.
How Do I Get VA Smalltalk?

• Download evaluation copy
• Buy development licenses
• Download development build




                Copyright, Instantiations, Inc.
Development Builds

• An experiment in
    Early delivery
    Continuous integration
    1 for V8.0.1, 2 for V8.0.2, 2 for V8.0.3
• Availability
    Announced on VA Smalltalk Forum and
    comp.lang.smalltalk
    Download from VA Smalltalk website
    Irregular schedule
    Documentation updated to match build
    Windows and Linux only
• Fix-list for build on VA Smalltalk forum

                        Copyright, Instantiations, Inc.
How Do I Get VA Smalltalk?

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




                   Copyright, Instantiations, Inc.
Open Source Project Committer

• Instantiations will donate a perpetual VA
  Smalltalk license
    to committers
    working on non-commercial open source
    project
    Hint: release something to VAStGoodies.com
• No charge
• Details: Instantiations' Donations to Open
  Source Projects page

                   Copyright, Instantiations, Inc.
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




                   Copyright, Instantiations, Inc.
Academic Licenses

• Accredited educational institutions
    Teaching staff
    Students
• No charge
• Details: Academic License Program page




                     Copyright, Instantiations, Inc.
Backup




Copyright, Instantiations, Inc.
GLORP Basics

• Create a session object
    Made from an accessor object
    Which is made from a connection object
    Which is made from a login object
• Within a unit of work, make changes
• Use session to query existing data
• Create new objects and add them
    Sub-objects are automatically noted
• Commit or rollback the unit of work



                       Copyright, Instantiations, Inc.
GLORP Mapping

• Simple mapping is one-to-one
    Describe a table
    Create an object that looks like a row
    Describe that object and its mapping
• Complex mappings
    One row becomes variant object type
    Multiple rows combine for one value
• Can map existing objects to RDB




                        Copyright, Instantiations, Inc.
GLORP Descriptor

•   What a table contains
•   What objects will participate
•   How to map them
•   Very flexible system
•   When in doubt, refer to the unit tests for
    examples




                       Copyright, Instantiations, Inc.
VA Smalltalk V8.0.1

•   Seaside 3.0 alpha5
•   Continued Web Services enhancements
•   Additional enhancements for tabbed browsers
•   Windows 7 (32-/64-bit)
•   “cdecl” calling convention on Windows
•   Improved error diagnostics for memory allocation
•   Enhanced SST resource management for faster
    execution using less memory




                    Copyright, Instantiations, Inc.
VA Smalltalk V8.0

• Seaside 2.9 alpha3 Core, jQuery, Scriptaculous,
  RSS, porting layer and development tools
• Enhanced Web Services supporting “Document
  Literal/Document Literal Wrapped” style
• Enhanced IDE with tabbed browsers, native
  Windows widgets, inspector improvements, a
  new Method List Pane, Text Pane, Version Graph
  Tab, more
• New documentation delivery system (web or
  local) with improved navigation, formatting and
  updated content


                    Copyright, Instantiations, Inc.

Contenu connexe

Tendances

Oracle WebLogic Server 12c: Seamless Oracle Database Integration (with NEC, O...
Oracle WebLogic Server 12c: Seamless Oracle Database Integration (with NEC, O...Oracle WebLogic Server 12c: Seamless Oracle Database Integration (with NEC, O...
Oracle WebLogic Server 12c: Seamless Oracle Database Integration (with NEC, O...jeckels
 
BYOP: Custom Processor Development with Apache NiFi
BYOP: Custom Processor Development with Apache NiFiBYOP: Custom Processor Development with Apache NiFi
BYOP: Custom Processor Development with Apache NiFiDataWorks Summit
 
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 LessEd Burns
 
(ATS3-APP14) Troubleshooting Symyx Notebook client performance
(ATS3-APP14) Troubleshooting Symyx Notebook client performance(ATS3-APP14) Troubleshooting Symyx Notebook client performance
(ATS3-APP14) Troubleshooting Symyx Notebook client performanceBIOVIA
 
Bridging Oracle Database and Hadoop by Alex Gorbachev, Pythian from Oracle Op...
Bridging Oracle Database and Hadoop by Alex Gorbachev, Pythian from Oracle Op...Bridging Oracle Database and Hadoop by Alex Gorbachev, Pythian from Oracle Op...
Bridging Oracle Database and Hadoop by Alex Gorbachev, Pythian from Oracle Op...Alex Gorbachev
 
Acceleration Technology: Taking Media File Transfers From Days to Minutes
Acceleration Technology: Taking Media File Transfers From Days to MinutesAcceleration Technology: Taking Media File Transfers From Days to Minutes
Acceleration Technology: Taking Media File Transfers From Days to MinutesFileCatalyst
 
Building Streaming Data Applications Using Apache Kafka
Building Streaming Data Applications Using Apache KafkaBuilding Streaming Data Applications Using Apache Kafka
Building Streaming Data Applications Using Apache KafkaSlim Baltagi
 
The View - Leveraging Lotuscript for Database Connectivity
The View - Leveraging Lotuscript for Database ConnectivityThe View - Leveraging Lotuscript for Database Connectivity
The View - Leveraging Lotuscript for Database ConnectivityBill Buchan
 
Functional reactive programming
Functional reactive programmingFunctional reactive programming
Functional reactive programmingAraf Karsh Hamid
 
KACE Agent Architecture and Troubleshooting Overview
KACE Agent Architecture and Troubleshooting OverviewKACE Agent Architecture and Troubleshooting Overview
KACE Agent Architecture and Troubleshooting OverviewDell World
 
What’s New In Cincom Smalltalk
What’s New In Cincom SmalltalkWhat’s New In Cincom Smalltalk
What’s New In Cincom SmalltalkESUG
 
Case Study: Credit Card Core System with Exalogic, Exadata, Oracle Cloud Mach...
Case Study: Credit Card Core System with Exalogic, Exadata, Oracle Cloud Mach...Case Study: Credit Card Core System with Exalogic, Exadata, Oracle Cloud Mach...
Case Study: Credit Card Core System with Exalogic, Exadata, Oracle Cloud Mach...Hirofumi Iwasaki
 
Thick Application Penetration Testing - A Crash Course
Thick Application Penetration Testing - A Crash CourseThick Application Penetration Testing - A Crash Course
Thick Application Penetration Testing - A Crash CourseNetSPI
 
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation EcosystemHow APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation EcosystemCisco DevNet
 
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server PerformanceBIOVIA
 
Java Library for High Speed Streaming Data
Java Library for High Speed Streaming Data Java Library for High Speed Streaming Data
Java Library for High Speed Streaming Data Oracle Developers
 
Putting Kafka Into Overdrive
Putting Kafka Into OverdrivePutting Kafka Into Overdrive
Putting Kafka Into OverdriveTodd Palino
 

Tendances (20)

Oracle WebLogic Server 12c: Seamless Oracle Database Integration (with NEC, O...
Oracle WebLogic Server 12c: Seamless Oracle Database Integration (with NEC, O...Oracle WebLogic Server 12c: Seamless Oracle Database Integration (with NEC, O...
Oracle WebLogic Server 12c: Seamless Oracle Database Integration (with NEC, O...
 
BYOP: Custom Processor Development with Apache NiFi
BYOP: Custom Processor Development with Apache NiFiBYOP: Custom Processor Development with Apache NiFi
BYOP: Custom Processor Development with Apache NiFi
 
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
 
(ATS3-APP14) Troubleshooting Symyx Notebook client performance
(ATS3-APP14) Troubleshooting Symyx Notebook client performance(ATS3-APP14) Troubleshooting Symyx Notebook client performance
(ATS3-APP14) Troubleshooting Symyx Notebook client performance
 
Kace & SQL
Kace & SQLKace & SQL
Kace & SQL
 
Introduction
IntroductionIntroduction
Introduction
 
Bridging Oracle Database and Hadoop by Alex Gorbachev, Pythian from Oracle Op...
Bridging Oracle Database and Hadoop by Alex Gorbachev, Pythian from Oracle Op...Bridging Oracle Database and Hadoop by Alex Gorbachev, Pythian from Oracle Op...
Bridging Oracle Database and Hadoop by Alex Gorbachev, Pythian from Oracle Op...
 
Acceleration Technology: Taking Media File Transfers From Days to Minutes
Acceleration Technology: Taking Media File Transfers From Days to MinutesAcceleration Technology: Taking Media File Transfers From Days to Minutes
Acceleration Technology: Taking Media File Transfers From Days to Minutes
 
Building Streaming Data Applications Using Apache Kafka
Building Streaming Data Applications Using Apache KafkaBuilding Streaming Data Applications Using Apache Kafka
Building Streaming Data Applications Using Apache Kafka
 
The View - Leveraging Lotuscript for Database Connectivity
The View - Leveraging Lotuscript for Database ConnectivityThe View - Leveraging Lotuscript for Database Connectivity
The View - Leveraging Lotuscript for Database Connectivity
 
Functional reactive programming
Functional reactive programmingFunctional reactive programming
Functional reactive programming
 
KACE Agent Architecture and Troubleshooting Overview
KACE Agent Architecture and Troubleshooting OverviewKACE Agent Architecture and Troubleshooting Overview
KACE Agent Architecture and Troubleshooting Overview
 
GDPR- The Buck Stops Here
GDPR-  The Buck Stops HereGDPR-  The Buck Stops Here
GDPR- The Buck Stops Here
 
What’s New In Cincom Smalltalk
What’s New In Cincom SmalltalkWhat’s New In Cincom Smalltalk
What’s New In Cincom Smalltalk
 
Case Study: Credit Card Core System with Exalogic, Exadata, Oracle Cloud Mach...
Case Study: Credit Card Core System with Exalogic, Exadata, Oracle Cloud Mach...Case Study: Credit Card Core System with Exalogic, Exadata, Oracle Cloud Mach...
Case Study: Credit Card Core System with Exalogic, Exadata, Oracle Cloud Mach...
 
Thick Application Penetration Testing - A Crash Course
Thick Application Penetration Testing - A Crash CourseThick Application Penetration Testing - A Crash Course
Thick Application Penetration Testing - A Crash Course
 
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation EcosystemHow APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
 
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
 
Java Library for High Speed Streaming Data
Java Library for High Speed Streaming Data Java Library for High Speed Streaming Data
Java Library for High Speed Streaming Data
 
Putting Kafka Into Overdrive
Putting Kafka Into OverdrivePutting Kafka Into Overdrive
Putting Kafka Into Overdrive
 

En vedette

A Parser in my Pocket
A Parser in my PocketA Parser in my Pocket
A Parser in my PocketESUG
 
Changeboxes
ChangeboxesChangeboxes
ChangeboxesESUG
 
ESUG 2006 Welcome
ESUG 2006 WelcomeESUG 2006 Welcome
ESUG 2006 WelcomeESUG
 
Open Aspects
Open AspectsOpen Aspects
Open AspectsESUG
 
DSL, the absolute weapon for the development
DSL, the absolute weapon for the developmentDSL, the absolute weapon for the development
DSL, the absolute weapon for the developmentESUG
 
Agile Seaside
Agile SeasideAgile Seaside
Agile SeasideESUG
 
Application Frameworks an Experience Report
Application Frameworks an Experience ReportApplication Frameworks an Experience Report
Application Frameworks an Experience ReportESUG
 
VAST 7.5 and Beyond
VAST 7.5 and BeyondVAST 7.5 and Beyond
VAST 7.5 and BeyondESUG
 
ESUG 2007 Welcome
ESUG 2007 WelcomeESUG 2007 Welcome
ESUG 2007 WelcomeESUG
 
EasyMorphicGUI
EasyMorphicGUIEasyMorphicGUI
EasyMorphicGUIESUG
 
Cincom® ObjectStudio® New Native GUI Implementation Preview
Cincom® ObjectStudio® New Native GUI Implementation PreviewCincom® ObjectStudio® New Native GUI Implementation Preview
Cincom® ObjectStudio® New Native GUI Implementation PreviewESUG
 
GemTalk Systems Overview
GemTalk Systems OverviewGemTalk Systems Overview
GemTalk Systems OverviewESUG
 
Bytecode Optimizations
Bytecode OptimizationsBytecode Optimizations
Bytecode OptimizationsESUG
 
Classes in the Mist
Classes in the MistClasses in the Mist
Classes in the MistESUG
 
Multimedia Presentation in Köthen Castle
Multimedia Presentation in Köthen CastleMultimedia Presentation in Köthen Castle
Multimedia Presentation in Köthen CastleESUG
 
Language-side Foreign Function Interfaces with NativeBoost
Language-side Foreign Function Interfaces with NativeBoostLanguage-side Foreign Function Interfaces with NativeBoost
Language-side Foreign Function Interfaces with NativeBoostESUG
 
Lightweight Classifications
Lightweight ClassificationsLightweight Classifications
Lightweight ClassificationsESUG
 
0 coisas de-celular
0  coisas de-celular0  coisas de-celular
0 coisas de-celularluzberto
 
0 segurança dos-pneus
0    segurança dos-pneus0    segurança dos-pneus
0 segurança dos-pneusluzberto
 

En vedette (20)

A Parser in my Pocket
A Parser in my PocketA Parser in my Pocket
A Parser in my Pocket
 
Changeboxes
ChangeboxesChangeboxes
Changeboxes
 
ESUG 2006 Welcome
ESUG 2006 WelcomeESUG 2006 Welcome
ESUG 2006 Welcome
 
Open Aspects
Open AspectsOpen Aspects
Open Aspects
 
DSL, the absolute weapon for the development
DSL, the absolute weapon for the developmentDSL, the absolute weapon for the development
DSL, the absolute weapon for the development
 
Agile Seaside
Agile SeasideAgile Seaside
Agile Seaside
 
Application Frameworks an Experience Report
Application Frameworks an Experience ReportApplication Frameworks an Experience Report
Application Frameworks an Experience Report
 
VAST 7.5 and Beyond
VAST 7.5 and BeyondVAST 7.5 and Beyond
VAST 7.5 and Beyond
 
ESUG 2007 Welcome
ESUG 2007 WelcomeESUG 2007 Welcome
ESUG 2007 Welcome
 
EasyMorphicGUI
EasyMorphicGUIEasyMorphicGUI
EasyMorphicGUI
 
Cincom® ObjectStudio® New Native GUI Implementation Preview
Cincom® ObjectStudio® New Native GUI Implementation PreviewCincom® ObjectStudio® New Native GUI Implementation Preview
Cincom® ObjectStudio® New Native GUI Implementation Preview
 
GemTalk Systems Overview
GemTalk Systems OverviewGemTalk Systems Overview
GemTalk Systems Overview
 
Bytecode Optimizations
Bytecode OptimizationsBytecode Optimizations
Bytecode Optimizations
 
Classes in the Mist
Classes in the MistClasses in the Mist
Classes in the Mist
 
Multimedia Presentation in Köthen Castle
Multimedia Presentation in Köthen CastleMultimedia Presentation in Köthen Castle
Multimedia Presentation in Köthen Castle
 
Language-side Foreign Function Interfaces with NativeBoost
Language-side Foreign Function Interfaces with NativeBoostLanguage-side Foreign Function Interfaces with NativeBoost
Language-side Foreign Function Interfaces with NativeBoost
 
Lightweight Classifications
Lightweight ClassificationsLightweight Classifications
Lightweight Classifications
 
0 coisas de-celular
0  coisas de-celular0  coisas de-celular
0 coisas de-celular
 
Emilyscollage
EmilyscollageEmilyscollage
Emilyscollage
 
0 segurança dos-pneus
0    segurança dos-pneus0    segurança dos-pneus
0 segurança dos-pneus
 

Similaire à VA Smalltalk Update

VA Smalltalk Update
VA Smalltalk UpdateVA Smalltalk Update
VA Smalltalk UpdateESUG
 
Delivering Developer Tools at Scale
Delivering Developer Tools at ScaleDelivering Developer Tools at Scale
Delivering Developer Tools at ScaleOracle Developers
 
7 Apache Process Cloudstack Developer Day
7 Apache Process Cloudstack Developer Day7 Apache Process Cloudstack Developer Day
7 Apache Process Cloudstack Developer DayKimihiko Kitase
 
Docker for the enterprise
Docker for the enterpriseDocker for the enterprise
Docker for the enterpriseBert Poller
 
[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the BasicsUlrich Krause
 
Continuous Localisation On A Massive Scale
Continuous Localisation On A Massive ScaleContinuous Localisation On A Massive Scale
Continuous Localisation On A Massive ScaleGary Lefman
 
Windows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server ManagementWindows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server ManagementSharkrit JOBBO
 
Extension Library - Viagra for XPages
Extension Library - Viagra for XPagesExtension Library - Viagra for XPages
Extension Library - Viagra for XPagesUlrich Krause
 
Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithMarkus Eisele
 
Continuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerContinuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerAmazon Web Services
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUlrich Krause
 
Asynchronous Frameworks.pptx
Asynchronous Frameworks.pptxAsynchronous Frameworks.pptx
Asynchronous Frameworks.pptxganeshkarthy
 
Migrate from Oracle to Aurora PostgreSQL: Best Practices, Design Patterns, & ...
Migrate from Oracle to Aurora PostgreSQL: Best Practices, Design Patterns, & ...Migrate from Oracle to Aurora PostgreSQL: Best Practices, Design Patterns, & ...
Migrate from Oracle to Aurora PostgreSQL: Best Practices, Design Patterns, & ...Amazon Web Services
 
Immutable Infrastructure: Rise of the Machine Images
Immutable Infrastructure: Rise of the Machine ImagesImmutable Infrastructure: Rise of the Machine Images
Immutable Infrastructure: Rise of the Machine ImagesC4Media
 
Reactive Development: Commands, Actors and Events. Oh My!!
Reactive Development: Commands, Actors and Events.  Oh My!!Reactive Development: Commands, Actors and Events.  Oh My!!
Reactive Development: Commands, Actors and Events. Oh My!!David Hoerster
 
Apache Sever Technology By Greg Williams
Apache Sever Technology By Greg WilliamsApache Sever Technology By Greg Williams
Apache Sever Technology By Greg WilliamsGregWilliams65325
 
Application Streaming is dead. A smart way to choose an alternative
Application Streaming is dead. A smart way to choose an alternativeApplication Streaming is dead. A smart way to choose an alternative
Application Streaming is dead. A smart way to choose an alternativeDenis Gundarev
 

Similaire à VA Smalltalk Update (20)

StarlingX - A Platform for the Distributed Edge | Ildiko Vancsa
StarlingX - A Platform for the Distributed Edge | Ildiko VancsaStarlingX - A Platform for the Distributed Edge | Ildiko Vancsa
StarlingX - A Platform for the Distributed Edge | Ildiko Vancsa
 
VA Smalltalk Update
VA Smalltalk UpdateVA Smalltalk Update
VA Smalltalk Update
 
Delivering Developer Tools at Scale
Delivering Developer Tools at ScaleDelivering Developer Tools at Scale
Delivering Developer Tools at Scale
 
Case study
Case studyCase study
Case study
 
7 Apache Process Cloudstack Developer Day
7 Apache Process Cloudstack Developer Day7 Apache Process Cloudstack Developer Day
7 Apache Process Cloudstack Developer Day
 
Docker for the enterprise
Docker for the enterpriseDocker for the enterprise
Docker for the enterprise
 
[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics
 
Continuous Localisation On A Massive Scale
Continuous Localisation On A Massive ScaleContinuous Localisation On A Massive Scale
Continuous Localisation On A Massive Scale
 
Windows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server ManagementWindows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server Management
 
Extension Library - Viagra for XPages
Extension Library - Viagra for XPagesExtension Library - Viagra for XPages
Extension Library - Viagra for XPages
 
Performance testing material
Performance testing materialPerformance testing material
Performance testing material
 
Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolith
 
Continuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerContinuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and Docker
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basics
 
Asynchronous Frameworks.pptx
Asynchronous Frameworks.pptxAsynchronous Frameworks.pptx
Asynchronous Frameworks.pptx
 
Migrate from Oracle to Aurora PostgreSQL: Best Practices, Design Patterns, & ...
Migrate from Oracle to Aurora PostgreSQL: Best Practices, Design Patterns, & ...Migrate from Oracle to Aurora PostgreSQL: Best Practices, Design Patterns, & ...
Migrate from Oracle to Aurora PostgreSQL: Best Practices, Design Patterns, & ...
 
Immutable Infrastructure: Rise of the Machine Images
Immutable Infrastructure: Rise of the Machine ImagesImmutable Infrastructure: Rise of the Machine Images
Immutable Infrastructure: Rise of the Machine Images
 
Reactive Development: Commands, Actors and Events. Oh My!!
Reactive Development: Commands, Actors and Events.  Oh My!!Reactive Development: Commands, Actors and Events.  Oh My!!
Reactive Development: Commands, Actors and Events. Oh My!!
 
Apache Sever Technology By Greg Williams
Apache Sever Technology By Greg WilliamsApache Sever Technology By Greg Williams
Apache Sever Technology By Greg Williams
 
Application Streaming is dead. A smart way to choose an alternative
Application Streaming is dead. A smart way to choose an alternativeApplication Streaming is dead. A smart way to choose an alternative
Application Streaming is dead. A smart way to choose an alternative
 

Plus 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 programmingESUG
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in PharoESUG
 
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 RoadmapESUG
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoESUG
 
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 resultsESUG
 
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 6ESUG
 
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 GenerationESUG
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingESUG
 
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 ModesESUG
 
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 ReportESUG
 
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 APIsESUG
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector TuningESUG
 
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 CaseESUG
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FutureESUG
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the DebuggerESUG
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing ScoreESUG
 
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 JavaScriptESUG
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocESUG
 
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 TransformationsESUG
 

Plus 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
 

Dernier

Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
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 DiscoveryTrustArc
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
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 REVIEWERMadyBayot
 
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 WorkerThousandEyes
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 

Dernier (20)

Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
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
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
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
 
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
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

VA Smalltalk Update

  • 1. VA Smalltalk Update John O’Keefe Principal Smalltalk Architect Instantiations, Inc. Copyright, Instantiations, Inc.
  • 2. But first, the rebirth of Instantiations • Instantiations roots are in Smalltalk development tools • The company licensed Smalltalk technology and grew • The Smalltalk tools were very good, so the company redid them for Java and grew and redid them again for Eclipse and grew • Google liked the Java tools, so they bought that part of Instantiations and Instantiations took the money and went back to its roots • VA Smalltalk...Onward and Upward! Copyright, Instantiations, Inc.
  • 4. VA Smalltalk V8.0.2 May 2010 • Seaside 3.0 update • GLORP initial release • Platform currency and enhancements • Database currency and enhancements • Class library enhancements • SUnit 4.0 release • Documentation updates Copyright, Instantiations, Inc.
  • 5. Seaside 3.0 • Seaside is an open source framework for developing sophisticated web applications Layered abstraction over HTTP and HTML • HTML concepts exposed in Smalltalk • HTML markup hidden Base for higher-function frameworks Quickly build highly interactive applications • Scriptaculous and jQuery frameworks JavaScript Ajax libraries Programmed through Smalltalk artifacts Copyright, Instantiations, Inc.
  • 8. Seaside Cautions • Seaside Flow (currently) unsupported by VA Smalltalk 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: [ :r | <more code using r ]. “YES” Copyright, Instantiations, Inc.
  • 9. GLORP Initial Release 0.3.178+ • Generic Lightweight Object-Relational Persistence Open Source framework for Object/Relational database access With concepts reminiscent of popular TOPLink product Provides: • Mapping of objects into relational databases • Transactions for change grouping • Non-intrusive implementation • Support for queries based on objects and data • High performance through optimized database access Documented in Database Guide Copyright, Instantiations, Inc.
  • 10. Platform Currency and Enhancements • Support added for: Ubuntu 9.04 (32- and 64-bit) Windows Server 2008 R2 (64-bit) • Windows executables are digitally signed Enhanced security Windows Logo Certification requirements Copyright, Instantiations, Inc.
  • 11. Platform Currency and Enhancements (cont.) • Windows power management events supported GUI apps can react to Sleep/Hibernate and Resume New protocol on Subapplication class • #suspending • #resume Useful for resetting sockets, reconnecting development manager, etc. Documented in Smalltalk User's Guide Copyright, Instantiations, Inc.
  • 12. Database Currency and Enhancements • Support added for Oracle 11g Compatibility mode No code changes • Support added for Oracle function calls Eliminates need to wrap function calls in stored procedures Examples of usage shown in Database Guide Copyright, Instantiations, Inc.
  • 13. Database Currency and Enhancements (cont.) • Support added for Anonymous SQL blocks Provides ability to send user-defined data types Provides ability to retrieve user-defined data types Supported in Oracle Examples of usage shown in Database Guide Copyright, Instantiations, Inc.
  • 14. Class Library Enhancements • Method pragmas Allow you to annotate methods with user- defined processing information Stored as literals in instances of CompiledMethod Pragma class has protocol for finding and processing annotations Provided for Pier Content Management System Documented in Programmer’s Reference Copyright, Instantiations, Inc.
  • 15. Class Library Enhancements (cont.) • Instance- and class-based exceptions are now polymorphic Providing clearer and more efficient handling of errors Brings back function dropped in VAST 6.0.1 Example: ^ [ (Array new: 3) at: 4 ] on: Error do: [ :ex | Transcript cr; show: ex messageText. ex return ] Primitive failed in: Object>>#at: due to Index out of range in argument 1 Copyright, Instantiations, Inc.
  • 16. SUnit 4.0 Just in Time Resources • Resources made available just-in-time: First test that needs it prompts setup Later tests that need it can see whether it has been (or failed to be) setup Tear down guaranteed at end of run; can be done anytime • Resource-processing is ordered A test’s resources are setup in order and torn down in reverse order A resource’s resources are setup before it is setup and torn down after it is torn down Copyright, Instantiations, Inc.
  • 17. SUnit 4.0 Class Changes • First there were three classes ... TestCase, TestSuite and TestResult • And then there was a fourth ... TestResource to manage resources • And now a fifth ... TestAsserter - abstract superclass of TestCase TestResource any user-created TestCase delegate class • Resources understand #assert:… protocol #setUp and #isAvailable run inside the handler Copyright, Instantiations, Inc.
  • 18. SUnit 4.0 Class Changes (cont.) • Logging TestCase methods moved to the class-side #isLogging, and #failureLog (and #logFailure: is now on both sides) Copyright, Instantiations, Inc.
  • 19. Documentation Updates • Web Services Guide Added Getting Started: Web Services in a Day Added Cookbook with debugging hints, XML de- serialization tips, and guidance on securing a Web service • Smalltalk User’s Guide Added Application behavior when Windows Power Management events occur Moved Namespace support to the Programmer’s Reference • Programmer’s Reference Added Pragmas, Namespace pragmas, and Annotation pragmas • Database Guide Added GLORP Tutorial, Anonymous PL/SQL Blocks, and Function Calls using Native Oracle Copyright, Instantiations, Inc.
  • 20. Looking to the Future Copyright, Instantiations, Inc.
  • 21. Future Releases • Release schedule is twice a year Usually May and November • Next release is November 2010 Web interface • Seaside 3.0 Development Tools • Message extraction tool Platform • Ubuntu 10.04 • Fedora Core 13 Copyright, Instantiations, Inc.
  • 22. Priority Technologies • Internationalization • Web interface • Database • GUI Look and Feel • Development Tools • Security • Performance and Scalability • Platforms • Other Copyright, Instantiations, Inc.
  • 23. Future Releases Candidates • Internationalization Unicode/UTF-8 • Web interface Seaside 3.1 SST Servlet multipart forms Web services tooling improvements Web services debugging tools/doc Validating XML parser Copyright, Instantiations, Inc.
  • 24. Future Releases Candidates (cont.) • GUI Look and Feel GTK+ 2.x on Linux Additional Windows Common Controls Additional icon/image support • Development Tools New ‘Settings’ framework and dialogs Improved Changes Browser • Database GLORP infrastructure improvements GLORP Programmer’s Reference Active Records built on GLORP Copyright, Instantiations, Inc.
  • 25. Future Releases Candidates (cont.) • Security “Basic” security framework -- current OpenSSL “Full” security framework -- OpenSSL 1.0 • Performance and Scalability Incremental garbage collection 64-bit Smalltalk Class library performance hotspots • Platform Windows Services control moved to Smalltalk Copyright, Instantiations, Inc.
  • 26. Future Releases Candidates (cont.) • Installation Single installer for Client and Manager Install/Repair/Uninstall Seamless with User Account Control (UAC) • Class Libraries Collection hashing policies Collection sorting policies Copyright, Instantiations, Inc.
  • 27. How Do I Get VA Smalltalk? • Download evaluation copy • Buy development licenses Copyright, Instantiations, Inc.
  • 28. How Do I Get VA Smalltalk? • Download evaluation copy • Buy development licenses • Download development build Copyright, Instantiations, Inc.
  • 29. Development Builds • An experiment in Early delivery Continuous integration 1 for V8.0.1, 2 for V8.0.2, 2 for V8.0.3 • Availability Announced on VA Smalltalk Forum and comp.lang.smalltalk Download from VA Smalltalk website Irregular schedule Documentation updated to match build Windows and Linux only • Fix-list for build on VA Smalltalk forum Copyright, Instantiations, Inc.
  • 30. How Do I Get VA Smalltalk? • Download evaluation copy • Buy development licenses • Download development build • Be a committer on an Open Source project Copyright, Instantiations, Inc.
  • 31. Open Source Project Committer • Instantiations will donate a perpetual VA Smalltalk license to committers working on non-commercial open source project Hint: release something to VAStGoodies.com • No charge • Details: Instantiations' Donations to Open Source Projects page Copyright, Instantiations, Inc.
  • 32. 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 Copyright, Instantiations, Inc.
  • 33. Academic Licenses • Accredited educational institutions Teaching staff Students • No charge • Details: Academic License Program page Copyright, Instantiations, Inc.
  • 35. GLORP Basics • Create a session object Made from an accessor object Which is made from a connection object Which is made from a login object • Within a unit of work, make changes • Use session to query existing data • Create new objects and add them Sub-objects are automatically noted • Commit or rollback the unit of work Copyright, Instantiations, Inc.
  • 36. GLORP Mapping • Simple mapping is one-to-one Describe a table Create an object that looks like a row Describe that object and its mapping • Complex mappings One row becomes variant object type Multiple rows combine for one value • Can map existing objects to RDB Copyright, Instantiations, Inc.
  • 37. GLORP Descriptor • What a table contains • What objects will participate • How to map them • Very flexible system • When in doubt, refer to the unit tests for examples Copyright, Instantiations, Inc.
  • 38. VA Smalltalk V8.0.1 • Seaside 3.0 alpha5 • Continued Web Services enhancements • Additional enhancements for tabbed browsers • Windows 7 (32-/64-bit) • “cdecl” calling convention on Windows • Improved error diagnostics for memory allocation • Enhanced SST resource management for faster execution using less memory Copyright, Instantiations, Inc.
  • 39. VA Smalltalk V8.0 • Seaside 2.9 alpha3 Core, jQuery, Scriptaculous, RSS, porting layer and development tools • Enhanced Web Services supporting “Document Literal/Document Literal Wrapped” style • Enhanced IDE with tabbed browsers, native Windows widgets, inspector improvements, a new Method List Pane, Text Pane, Version Graph Tab, more • New documentation delivery system (web or local) with improved navigation, formatting and updated content Copyright, Instantiations, Inc.