smalltalk perspectives, by arden thomas
TRANSCRIPT
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
1/37
Smalltalk PerspectivesArden Thomas
Cincom Smalltalk Product manager
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
2/37
Talks
Arden Thomas: Perspectives on SmalltalkMonday @ 4:30 PM
Arden Thomas: Cincom Smalltalk RoadmapWednesday @ 9:30 AM (Sachem East)
Dirk Verleysen and Andreas Hiltner:Cincom ObjectStudio: New Native GUIImplementation PreviewA Technical OverviewWednesday @ 10:45 AM (Sachem East)
Les Kooyman: Internationalization inCincom VisualWorks Wednesday @ 1:45 PM(Sachem East)
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
3/37
Contents
The Smalltalk of:
Poly, MatriX and Green
Smalltalk Performance
Innovation
Afternoon Projects
Advocacy
Learn Something New!
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
4/37
The Smalltalk of
What is a Smalltalk theme?
Less is more
Minimal needed, no fluff
Most done with least
Simple, robust and effective
Underappreciated
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
5/37
The Smalltalk of
Knots?
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
6/37
The Smalltalk of Knots
The Zeppelin Knot(actually a bend) Best in class bend used to
tie down airships
Almost forgotten!
Beautiful symmetrical
Simple (basically twooverhand bends)
Strong, secure,outstanding in use
Rediscovered!
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
7/37
The Smalltalk of
Supercars
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
8/37
The Smalltalk of Supercars
McClarenF1 Buggati Veyron 4 turbos
10 radiators
1000 bhp
7 spd DSG
All wheel drive No turbos
6 speed manual
Rear wheel drive
No ABS
Center seating!
1st carbon fiber
Careful air handling
Air brake
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
9/37
Poly, MatriX, Green Threads
Simple concurrency
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
10/37
Poly Approach to Using Multi-Cores
Coordinated Multiple
Headless images
Core 1 Core 2 Core 3 Core 4
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
11/37
Example
Coordinated Multiple Headless images
loadNYSE
loadAMEX loadNasdaq loadFunds
loadETFs
Core 1 Core 2 Core 3 Core 4
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
12/37
MatriX
Like Polycephaly but:
Uses Xtreams (X)
Uses sockets
Allows a Grid in addition to multi-cores
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
13/37
Green Threads
Often thought as inferior to native threads
Becoming more relevant
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
14/37
Sequence bottleneck
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
15/37
Bottleneck Revisited Overlap SolutionWork done overlapping the wait
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
16/37
Smalltalk Performance
Seven ideas to get more
performance in your Smalltalk
application
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
17/37
Smalltalk Performance
1.) See the forest through the trees.
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
18/37
Smalltalk Performance
2.) C
If there is a small time critical section, you
can write it in C and call it from Smalltalk.
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
19/37
Smalltalk Performance
3.) Use what you have
. with Poly & MatriX
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
20/37
Smalltalk Performance
4.) 64 bits
We have 64 bit VMs which let you utilize a
very large object space.
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
21/37
Smalltalk Performance
5.) Use what you have V2
Use your GPU for parallel computation!
Modern GPUs can give supercomputer likespeed to number crunching.
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
22/37
Smalltalk Performance
6.) Base Product performance improvements
VM
Image algorithms
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
23/37
Smalltalk Performance
7.) Profile
Because guesses are just inaccurate
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
24/37
Innovation
Smalltalk IS Innovation!
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
25/37
Innovation
Skins
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
26/37
Innovation
ValueInterface
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
27/37
Innovation - ValueInterface
Three things it makes easy:
Connecting widgets to the domain
Reacting to domain changes Connecting/Reusing Applications
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
28/37
Innovation - ValueInterface
it makes easy:
Connecting/Reusing Applications
initialize
stockListApp := StockListApp new.
stockDetailApp := StockDetailApp in: stockListApp.
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
29/37
name Wal-Mart
symbol #WMT
exchange NYSE
ValueInterface
Interface
Domain
Model
Wal-Martname
selectionHolder
WMTsymbol
NYSEexchangeNavteq
CiscoBoeing
Alcoa
Wal-Mart
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
30/37
Innovation
WhateverWhatever provides an efficient shapeless Object, much like a self object. Youcan set any slots you want on each instance, give it custom behavior and eveninherit that behavior with new sub-instances. Consider this 'classless' objects.
Whatever.Object new
name: 'My name';
age: 76;
gender: #happy;
lifeStory: (Whatever.Object new
title: 'My epic tale of classlessness';
content: 'It was a dark and stormy night...';
yourself);
methodAt: 'printString' put: '^self name, '', aged: '', self age printString';
yourself
This package implements these shapeless objects in one of the most efficient ways possible.
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
31/37
Afternoon Projects
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
32/37
Afternoon Projects
Tetris
Kmeans
Progress Grid Pulse
Stock Model
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
33/37
Advocacy
Pearls of Smalltalk
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
34/37
Learn Something New!
Challenge yourself
Do something you do all the time
differently
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
35/37
Fastest Shoelace Knot
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
36/37
Fastest Shoelace Knot
-
7/28/2019 Smalltalk Perspectives, by Arden Thomas
37/37
Contact info
Star Team(Smalltalk Strategic Task Action Resources)
Arden Thomas ([email protected])
Smalltalk Product Manager
Suzanne Fortman ([email protected])
Smalltalk Director
http://www.cincomsmalltalk.com
http://www.cincomsmalltalk.com/http://www.cincomsmalltalk.com/