Questions tagged [visualworks]

VisualWorks is a cross-platform implementation of the Smalltalk language.

VisualWorks is implemented as a development system based on "images", which are dynamic collections of software objects, each contained in a system image.

The lineage of VisualWorks goes back to the first Smalltalk-80 implementation by Xerox PARC. In the late 1980s, a group of Smalltalk-80 developers spun off ParcPlace Systems to further develop Smalltalk-80 as a commercial product. The commercial product was initially called ObjectWorks, and then VisualWorks. On August 31, 1999, the VisualWorks product was sold to Cincom.

VisualWorks runs under many operating systems, including Windows, Mac OS X, Linux, and several versions of Unix.

Useful links:

117 questions
25
votes
2 answers

What is the difference between self and yourself in Smalltalk?

In Smalltalk, there are two terms often found within a method body: self and yourself. What is the difference between them?
Euan M
  • 1,126
  • 11
  • 20
14
votes
5 answers

Why do methods return "self" by default in Smalltalk?

Background In Smalltalk, if you don't excplicitly return anything then the message passing evaluates to the receiver (or "self" in the message context). For example, given this method: MyClass >> myMethod Transcript show: 'hello'; cr. Evaluating…
Sebastian N.
  • 1,962
  • 15
  • 26
13
votes
1 answer

What are Smalltalk pragmas conceptually?

I have used pragmas in Pharo Smalltalk and have an idea about how they work and have seen examples for what they are used in Pharo. My questions are: what are pragmas conceptually, to what construct do they compare in other languages, when should i…
MartinW
  • 4,966
  • 2
  • 24
  • 60
12
votes
5 answers

Writing a GUI in squeak

How can I write a GIU in Squeak? I'm a Smalltalk newbie and I'm using Cincom's VisualWorks at the moment but I'd like to give Squeak a try. I see that Squeak has Morphic for graphics but for the life of me I can't seem to find a package to write an…
KHWP
  • 1,211
  • 2
  • 11
  • 17
10
votes
2 answers

Where could I find more examples of using PetitParser?

I'm looking for additional examples of using PetitParser beyond PPArithmeticParser and PPLambdaParser that are provided in the tests package and a couple of blog posts by Lukas? If anyone's willing to share theirs, it would be much…
Boris Slobodin
  • 233
  • 1
  • 6
10
votes
5 answers

Why does add: return the object added in Smalltalk collections?

Background Something that catches every Smalltalk newbie is that add: does not return "self" but the object being added. For example, with this code: myCollection := OrderedCollection new add: 'Peter'; add: 'John'; add:…
Sebastian N.
  • 1,962
  • 15
  • 26
9
votes
5 answers

Browsing VisualWorks code in Squeak/Pharo

Is there any Smalltalk parser in Squeak/Pharo which allows me to browse VisualWorks code in Squeak/Pharo ? I'm interested in reading code exported in the chunk format (not in XML). Clarification: I do not need to file in the code. Thanks
Ray Doyle
  • 829
  • 1
  • 6
  • 8
9
votes
6 answers

Smalltalk - Compare two strings for equality

I am trying to compare two strings in Smalltalk, but I seem to be doing something wrong. I keep getting this error: Unhandled Exception: Non-boolean receiver. Proceed for truth. stringOne := 'hello'. stringTwo := 'hello'. myNumber := 10. [stringOne…
user69514
  • 26,935
  • 59
  • 154
  • 188
9
votes
2 answers

Glamour and Nautilus questions

In Smalltalk, the system browser is the central tool for pretty much anything. Glamour seems to be a package for building general purpose browsers using a declarative scripting language. From the paper it is available in VisualWorks and Pharo, but…
user1000565
  • 927
  • 4
  • 12
8
votes
4 answers

Smalltalk: Sort a collection by two criteria

How can I sort a collection by two criteria in Cincom VisualWorks? Example: I have an OrderedCollection that contains persons, and want a new collection that sort the persons first by age, and then if the age is the same sort the persons by name.…
dobleseis
  • 629
  • 2
  • 7
  • 12
7
votes
5 answers

Is it OK to leave the [ and ] out for messages like at:ifAbsent: if you don't need a full block?

In Smalltalk (and specifically Pharo/Squeak) I want to know if it is OK to leave out the "[" and "]" for the argument to messages like at:ifAbsent: if you don't need a block, like this; ^ bookTitles at: bookID ifAbsent: ''. and ^ books at: bookID…
claudio
  • 71
  • 1
7
votes
2 answers

Generating UML Class Diagram from Smalltalk code

Currently, I am working with a Smalltalk based application server, using Visual Works. I am looking for a way to generate a UML Class Diagram from the code. I have looked up for many tools but nothing seems to work or be useful.
chand
  • 301
  • 1
  • 2
  • 6
7
votes
1 answer

Parsing RDF in Smalltalk

Is there any example, in any Smalltalk flavour, showing how to parse a RDF file? The only package I've seen is Rikaiko with a RDFXMLReader class, but there are no references and it seems very undocummented.
Juan Aguerre
  • 388
  • 2
  • 7
6
votes
4 answers

How to, in smalltalk, read and process contents of CSV file

I am attempting to read and process the contents of a csv file in smalltalk(visualworks), but I seem to be having some hard time getting the string to split into an array please. Below is code I have been able to get working. What I am missing is…
Kobojunkie
  • 6,375
  • 31
  • 109
  • 164
6
votes
3 answers

assert fails when it should not, in Smalltalk Unit testcase

I'm stumped. Here is my testcase. theTestArray := #(1.2 3 5.1 7). self assert: theTestArray squareOfAllElements = #(1.44 9 26.01 49). The assert should not fail. On calculating the square of each element is correct. So I did "step into test",…
sherry
  • 1,829
  • 7
  • 21
  • 23
1
2 3 4 5 6 7 8