Jump to content

Smalltalk: Difference between revisions

From EDM2
Ak120 (talk | contribs)
Ak120 (talk | contribs)
mNo edit summary
Line 4: Line 4:
The Smalltalk language suffered great setbacks in that latter half of the nineties when almost all of the companies building tools for the language turned their attention to [[Java]] and either mothballed or discontinued their Smalltalk offerings wholesale, in more recent years to the renewed interest in [[Eiffel]] has also contributed to an erosion of the Smalltalk mindshare, but the latter language has an even cleaner object orientation features and greatly improved execution speeds.
The Smalltalk language suffered great setbacks in that latter half of the nineties when almost all of the companies building tools for the language turned their attention to [[Java]] and either mothballed or discontinued their Smalltalk offerings wholesale, in more recent years to the renewed interest in [[Eiffel]] has also contributed to an erosion of the Smalltalk mindshare, but the latter language has an even cleaner object orientation features and greatly improved execution speeds.


==A list of OS/2 implementations of SmallTalk==
==OS/2 implementations of SmallTalk==
* [[ChapMan]] - Commercial - Discontinued
* [[ChapMan]] - Commercial - Discontinued
* [[Enfin Smalltalk]] - Commercial - Discontinued
* [[Enfin Smalltalk]] - Commercial - Discontinued
Line 17: Line 17:
* [[Visual Smalltalk]] - Commercial - Discontinued.
* [[Visual Smalltalk]] - Commercial - Discontinued.


====Add-ons and utilities====
===Add-ons and utilities===
Most Smalltalk add-ons are/were system specific and are therefore only listed on the page of the Smalltalk system that they support
Most Smalltalk add-ons are/were system specific and are therefore only listed on the page of the Smalltalk system that they support
* [[ENVY/Developer]] - Commercial - Discontinued
* [[ENVY/Developer]] - Commercial - Discontinued
Line 29: Line 29:
* [[WindowBuilder Pro]] - GUI builder - Commercial - Discontinued
* [[WindowBuilder Pro]] - GUI builder - Commercial - Discontinued


====Class libraries====
===Class libraries===
* Indelv XML Libary - Open source library under the [[Mozilla Public License]] - a VisualAge version compatible with OS/2 was supposedly available but the company actually never uploaded it to their site, neither the last 2.2 beta or the earlier 1.01, even though there were download links both of to them on their site for years.
* Indelv XML Libary - Open source library under the [[Mozilla Public License]] - a VisualAge version compatible with OS/2 was supposedly available but the company actually never uploaded it to their site, neither the last 2.2 beta or the earlier 1.01, even though there were download links both of to them on their site for years.
* [http://www.seaside.st/ Seaside] - Web framework - Works on some OS/2 SmallTalk's with a little bit of massaging.
* [http://www.seaside.st/ Seaside] - Web framework - Works on some OS/2 SmallTalk's with a little bit of massaging.
* [[TOPLink]] - Database connection/persistence classes- Commercial - Discontinued
* TOPLink - Database connection/persistence classes- Commercial - Discontinued
* [[WidgetKit/BusinessGraphics]] - Graphics library - Commercial - Discontinued
* [[WidgetKit/BusinessGraphics]] - Graphics library - Commercial - Discontinued


====Foreign libraries with Smalltalk bindings====
===Foreign libraries with Smalltalk bindings===
* [[Cairo]] - 2D graphics library - Open source - Current
* [[Cairo]] - 2D graphics library - Open source - Current
* [[LibcURL]] - Internet URL (WWW, FTP, etc) access - Open Source - Current.
* [[LibcURL]] - Internet URL (WWW, FTP, etc) access - Open Source - Current
* [[LZ4]] - Compression library - Open source - Current
* [[LZ4]] - Compression library - Open source - Current
* [[Snappy]] - Compression lib. - Open Source - Current.
* [[Snappy]] - Compression lib. - Open Source - Current


====OS/2 text & programmers editors with Smalltalk support====
===OS/2 text & programmers editors with Smalltalk support===
* [[jEdit]] - Java based editor - Smalltalk syntax highlighting built in - Current.
* [[jEdit]] - Java based editor - Smalltalk syntax highlighting built in - Current


==A list of DOS implementations of SmallTalk==
==DOS implementations of SmallTalk==
* [[Smalltalk/V|Methods]] - Commercial - Discontinued
* [[Smalltalk/V|Methods]] - Commercial - Discontinued
* [[Smalltalk/V|Smalltalk/V DOS]] - Commercial - Discontinued
* [[Smalltalk/V|Smalltalk/V DOS]] - Commercial - Discontinued
Line 53: Line 53:
* [[Squeak]] - Open Source - Discontinued
* [[Squeak]] - Open Source - Discontinued


==A list of SmallTalk implementations that run under WinOS/2==
===Implementations that run under WinOS/2===
* [http://www.andreadrian.de/smalltalk/ Smalltalk Express] - Commercial - Discontinued - Now freeware.
* [http://www.andreadrian.de/smalltalk/ Smalltalk Express] - Commercial - Discontinued - Now freeware
* [[Smalltalk/V|Smalltalk/V Win]] - Commercial - Discontinued.
* [[Smalltalk/V|Smalltalk/V Win]] - Commercial - Discontinued
* [[VisualAge Smalltalk]] - Commercial - Discontinued.
* [[VisualAge Smalltalk]] - Commercial - Discontinued


====WinOS/2 compatible Smalltalk add-ons, libraries and utilities====
===WinOS/2 compatible Smalltalk libraries and utilities===
* [[WidgetKit/BusinessGraphics]] - Graphics library - Commercial - Discontinued
* [[WidgetKit/BusinessGraphics]] - Graphics library - Commercial - Discontinued
* [[WidgetKit/Professional]] - Spreadsheet library - Commercial - Discontinued
* WidgetKit/Professional - Spreadsheet library - Commercial - Discontinued
* [[WindowBuilder Pro]] - GUI builder - Commercial - Discontinued
* [[WindowBuilder Pro]] - GUI builder - Commercial - Discontinued


==A list of SmallTalk implementations that run under Java==
==Implementations that run under Java==
* [http://www.bergel.eu/athena/?Athena Athena] - Open source - Current - Based on Small World (below) - intended for embedding.
* [http://www.bergel.eu/athena/?Athena Athena] - Open source - Current - Based on Small World (below) - intended for embedding.
* [http://bistro.sourceforge.net/ Bistro] - Open source - Discontinued.
* [http://bistro.sourceforge.net/ Bistro] - Open source - Discontinued
* [http://www.redline.st/ Redline Smalltalk] - Open source - Current
* [http://www.redline.st/ Redline Smalltalk] - Open source - Current
* Smalltalk/JVM - Commercial - Discontinued - Was intended to help you migrate code from SmallTalk to Java rather than as an environment to develop in/for.
* Smalltalk/JVM - Commercial - Discontinued - Was intended to help you migrate code from SmallTalk to Java rather than as an environment to develop in/for.
* [http://web.engr.oregonstate.edu/~budd/SmallWorld/ReadMe.html Small World] - Open source - Discontinued.
* [http://web.engr.oregonstate.edu/~budd/SmallWorld/ReadMe.html Small World] - Open source - Discontinued
* Talks2 Smalltalk - Open source - Discontinued
* Talks2 Smalltalk - Open source - Discontinued
* VmxJava - Open source - Discontinued
* VmxJava - Open source - Discontinued


==A list of SmallTalk implementations in JavaScript==
==Implementations in JavaScript==
* [http://amber-lang.net/ Amber] - A Smalltalk like language that compiles to [[ECMAScript]] - Open source - Current.
* [http://amber-lang.net/ Amber] - A Smalltalk like language that compiles to [[ECMAScript]] - Open source - Current
* [http://clamato.net/ Clamato] - A Smalltalk interpreter for ECMAScript - Open source - Current.
* [http://clamato.net/ Clamato] - A Smalltalk interpreter for ECMAScript - Open source - Current
* [http://ympbyc.github.io/LittleSmallscript/ Little Smallscript] - Another Smalltalk to JS compiler - Open source - Current.
* [http://ympbyc.github.io/LittleSmallscript/ Little Smallscript] - Another Smalltalk to JS compiler - Open source - Current
* [https://silversmalltalk.wordpress.com/ Quicksilver Smalltalk] - SmallTalk-80 compatible interpreter in ECMAScript - Open source - Current.
* [https://silversmalltalk.wordpress.com/ Quicksilver Smalltalk] - SmallTalk-80 compatible interpreter in ECMAScript - Open source - Current
* [http://bertfreudenberg.github.io/SqueakJS/ SqueakJS] - An interpreter that allows you to run [[Squeak]] Smalltalk inside a browser - Open source - Current.
* [http://bertfreudenberg.github.io/SqueakJS/ SqueakJS] - An interpreter that allows you to run [[Squeak]] Smalltalk inside a browser - Open source - Current
* [http://www.squeaksource.com/ST2JS/ ST2JS] - SmallTalkt to ECMAScript converter - Open source - Current.
* [http://www.squeaksource.com/ST2JS/ ST2JS] - SmallTalkt to ECMAScript converter - Open source - Current


==Links and publications==
==Links and publications==
Line 88: Line 88:
* [http://www.world.st/ The World Of Smalltalk] - A Smalltalk site run by Geert Claes, there is little information in there any more but the [http://forum.world.st/ forum] is probaby the most used Smalltalk forum historically.
* [http://www.world.st/ The World Of Smalltalk] - A Smalltalk site run by Geert Claes, there is little information in there any more but the [http://forum.world.st/ forum] is probaby the most used Smalltalk forum historically.


====USENET====
*USENET [news:comp.lang.smalltalk comp.lang.smalltalk] - fairly popular
* [news:comp.lang.smalltalk comp.lang.smalltalk] - Fairly popular - Go to the [https://groups.google.com/forum/#!forum/comp.lang.smalltalk Google groups version] if your ISP does not offer USENET access or you are are in any other way newsgroup challenged.


==Standards==
==Standards==
Line 96: Line 95:
* Draft of the [http://smalltalk.org/versions/ANSISmalltalk/ANSISmalltalkStandard_v1.9_199712_NCITS_X3J20_draft.pdf ANSI X3J20 Standard].
* Draft of the [http://smalltalk.org/versions/ANSISmalltalk/ANSISmalltalkStandard_v1.9_199712_NCITS_X3J20_draft.pdf ANSI X3J20 Standard].


[[Category:Programming Languages]]
[[Category:Programming Languages]][[Category:Smalltalk]]
[[Category:Smalltalk]]

Revision as of 05:03, 6 February 2017

An Object-oriented, dynamically typed programming language that was the main development language used by IBM for the creation of application and development software from the late 1980's into the late 90's when Java took over. It is a simplification of Simula patterned on Euler (experimental Pascal predecessor) but features a dynamic typing system closer to LISP than to most of its Algol brethren and that has long been its Achilles heel, while simplifying programming somewhat it also cases a considerable execution slowdown in comparison to other languages in the Algol family.

The Smalltalk language suffered great setbacks in that latter half of the nineties when almost all of the companies building tools for the language turned their attention to Java and either mothballed or discontinued their Smalltalk offerings wholesale, in more recent years to the renewed interest in Eiffel has also contributed to an erosion of the Smalltalk mindshare, but the latter language has an even cleaner object orientation features and greatly improved execution speeds.

OS/2 implementations of SmallTalk

Add-ons and utilities

Most Smalltalk add-ons are/were system specific and are therefore only listed on the page of the Smalltalk system that they support

  • ENVY/Developer - Commercial - Discontinued
  • Sina/st - OO abstraction language - Open source - Discontinued
  • Smalltalk Professional Debug Package - Commercial - Discontinued
  • SUnit - Testing framework - Open source - Discontinued
  • Synopsis - Automatic document creator - Commercial - Discontinued
  • VA Assist - Commercial - Discontinued
  • Versant Argos - Commercial - Discontinued.
  • VOSS - Database/transaction/object persistence system - Commercial/open source - Discontinued
  • WindowBuilder Pro - GUI builder - Commercial - Discontinued

Class libraries

  • Indelv XML Libary - Open source library under the Mozilla Public License - a VisualAge version compatible with OS/2 was supposedly available but the company actually never uploaded it to their site, neither the last 2.2 beta or the earlier 1.01, even though there were download links both of to them on their site for years.
  • Seaside - Web framework - Works on some OS/2 SmallTalk's with a little bit of massaging.
  • TOPLink - Database connection/persistence classes- Commercial - Discontinued
  • WidgetKit/BusinessGraphics - Graphics library - Commercial - Discontinued

Foreign libraries with Smalltalk bindings

  • Cairo - 2D graphics library - Open source - Current
  • LibcURL - Internet URL (WWW, FTP, etc) access - Open Source - Current
  • LZ4 - Compression library - Open source - Current
  • Snappy - Compression lib. - Open Source - Current

OS/2 text & programmers editors with Smalltalk support

  • jEdit - Java based editor - Smalltalk syntax highlighting built in - Current

DOS implementations of SmallTalk

  • Methods - Commercial - Discontinued
  • Smalltalk/V DOS - Commercial - Discontinued
  • GNU Smalltalk - Open Source - Discontinued
  • Little Smalltalk - Open Source - Discontinued
  • ParcPlace Smalltalk-80 - Commercial - Discontinued
  • PDST - Open Source - Discontinued
  • Squeak - Open Source - Discontinued

Implementations that run under WinOS/2

WinOS/2 compatible Smalltalk libraries and utilities

Implementations that run under Java

  • Athena - Open source - Current - Based on Small World (below) - intended for embedding.
  • Bistro - Open source - Discontinued
  • Redline Smalltalk - Open source - Current
  • Smalltalk/JVM - Commercial - Discontinued - Was intended to help you migrate code from SmallTalk to Java rather than as an environment to develop in/for.
  • Small World - Open source - Discontinued
  • Talks2 Smalltalk - Open source - Discontinued
  • VmxJava - Open source - Discontinued

Implementations in JavaScript

  • Amber - A Smalltalk like language that compiles to ECMAScript - Open source - Current
  • Clamato - A Smalltalk interpreter for ECMAScript - Open source - Current
  • Little Smallscript - Another Smalltalk to JS compiler - Open source - Current
  • Quicksilver Smalltalk - SmallTalk-80 compatible interpreter in ECMAScript - Open source - Current
  • SqueakJS - An interpreter that allows you to run Squeak Smalltalk inside a browser - Open source - Current
  • ST2JS - SmallTalkt to ECMAScript converter - Open source - Current

Links and publications

For information on Smalltalk writings in print see the Smalltalk Bibliography

Standards