Questions tagged [selflanguage]

Self is a prototype-based dynamic object-oriented programming language, environment, and virtual machine centered around the principles of simplicity, uniformity, concreteness, and liveness.

Self includes a programming language, a collection of objects defined in the Self language, and a programming environment built in Self for writing Self programs. The language and environment attempt to present objects to the programmer and user in as direct and physical a way as possible. The system uses the prototype-based style of object construction.

Release 4.0 contained an entirely new user interface and programming environment designed for “serious” programming, enabling the programmer to create and modify objects entirely within the environment, and then save the object into files for distribution purposes. The metaphor used to present an object to the user is that of an outliner, allowing the user to view varying levels of detail. Also included in the environment is a graphical debugger, and tools for navigation through the system.

The current release (4.4) was the first release for Linux on x86.

Self is available for Linux and MacOS X under a BSD-like licence.

adapted from the website

13 questions
44
votes
7 answers

What are the advantages that prototype based OO has over class based OO?

Why is class based OO so popular instead of prototype based OO? Do they teach the latter in schools? Though Javascript is prototype based, most people use it mostly functionally, or via frameworks that try to emulate a class based system. I know…
egaga
  • 21,042
  • 10
  • 46
  • 60
18
votes
3 answers

Differences between Self and Smalltalk

I'm just looking for what it is that sets Self apart from Smalltalk. This isn't supposed to be a Gorilla vs Shark question. I'm not looking for reasons one is better, I'm just confused as to what defines one as being distinct from the other. They…
TheIronKnuckle
  • 7,224
  • 4
  • 33
  • 56
5
votes
1 answer

Code as System image (serialized run-time environment) vs Source (text)

Almost all conventional languages today represent programmers intention as text source, which is then (lets say for sake of simplicity) translated to some bytecode/machine code and interpreted/executed by a VM/CPU. There was another technique,…
artemonster
  • 744
  • 4
  • 27
4
votes
2 answers

Where did the Self language get its name?

Why was the language given such a hard to google name?
blueberryfields
  • 45,910
  • 28
  • 89
  • 168
3
votes
1 answer

Has the Self language seen use outside of the computer research community?

Are there any non-research groups or projects which have used the Self language in some capacity?
blueberryfields
  • 45,910
  • 28
  • 89
  • 168
3
votes
3 answers

what is a "Self programming language"

I am learning SmallTalk now using Squeak4.1. I use Squeak by Example as a tutorial, Here I countered a delema, " Morphic was developed by ... for the Self programming language " Can anybody give some hints on the meaning of self programming…
parsifal
  • 879
  • 4
  • 12
  • 21
1
vote
1 answer

How do I get user input in the Self language?

I'm experimenting with the Self language and I just past the point of easy canned stuff. I want to prompt the user for a number, or perhaps provide a form for several numbers. Is there an equivalent to a scripting language's stdin-input, or a…
Justin Love
  • 4,397
  • 25
  • 36
1
vote
1 answer

How do you do version control in Self?

How do you do version control in Self? I understand it is a shared environment(image) where all developers can be connected to the same image, but I'm keen to understand how I do things like roll back changes, take patches forms developers who…
Stephen
  • 1,215
  • 2
  • 25
  • 40
1
vote
1 answer

How slot of outer scope is modified by selflanguange

I am trying to understand the self language.(Without actually coding!) I was wondering how a method is able to modify its receivers' slot. My understanding is that: In self, 'self*' is given as parent pointer for the activation record. So that if a…
shakthi
  • 1,597
  • 2
  • 17
  • 29
1
vote
2 answers

Is cloning in self language deep clone or shallow one?

I am trying to understand self language. My doubt is that, whether cloning in self language deep clone or shallow one. I.e., whether clone just clones objects slots or objects inside the slots are get cloned.
shakthi
  • 1,597
  • 2
  • 17
  • 29
1
vote
1 answer

On the Self Language, how do we run code on its VM?

If Self is installed on Ubuntu using the file on http://selflanguage.org/, then we can use $ Self Self Virtual Machine Version 4.1.13, Sat 20 Feb 10 22:39:48 Linux Copyright 1989-2003: The Self Group (type _Credits for credits) for I386: …
nonopolarity
  • 146,324
  • 131
  • 460
  • 740
0
votes
0 answers

Where can I find an implementation of the Cartesian Product Algorithm for Type Inference?

Where can I find an implementation of the cartesian product algorithm for type inference? (Preferably in Python/C++, but any language would really do.) I've searched the internet many times but there are few details about the algorithm, and as far…
xilpex
  • 3,097
  • 2
  • 14
  • 45
0
votes
1 answer

Using Arch Linux, Self is installed, but there are no messages

I downloaded Cinnarch and have it running on a virtual machine. I tried to install Self, only to find that it was already installed. So I tried playing around with it, but there's a problem. Numbers, strings, etc. work, but I can't send any…
Matt
  • 5,553
  • 5
  • 24
  • 32