self
self copied to clipboard
gaps in doco
OK. Thanks to your help I got the VM built. Now what?
It seems to me that there's a huge gap in the doco regarding actually using self, esp out of the build directory.
I can't go from building the VM to running self via the doco. Additionally, I have no idea how to use the instructions on how to build the world. Here is some of my confusion illustrated:
10071 % find . -type f -name Self
./controller/osx/Self.app/Contents/MacOS/Self
./vm/Self.app/Contents/MacOS/Self
The first one wants to use X11 for some reason. The second doesn't. Why are they different but named the same?
Running the second one:
10072 % open vm/Self.app/
The application cannot be opened because its executable is missing.
and if I run the actual binary:
10074 % ./vm/Self.app/Contents/MacOS/Self
Self Virtual Machine Version 4.1.13, Mon 13 Jan 14 15:40:57 Mac OS X i386 (4.5.0-1-g1a5f8ac)
Copyright 1989-2003: The Self Group (type _Credits for credits)
for I386: LogVMMessages = true
for I386: PrintScriptName = true
for I386: Inline = true
for I386: SICDeferUncommonBranches = false (not implemented)
for I386: SICReplaceOnStack = false (not implemented)
for I386: SaveOutgoingArgumentsOfPatchedFrames = true
VM# desktop open
A lookup error happened while sending the message
desktop
to
lobby.
Subsequently, the lookup error message
undefinedSelector:Receiver:Type:Delegatee:MethodHolder:Arguments:
was sent to
<0>,
and was also not understood, causing the process to be aborted by the Self VM.
#0 (<error>:1): desktop = ( | self* = lobby. delegatee = nil. selector = 'desktop'. |
"undefined selector error;
this method was automatically generated by the VM."
)
#1 (<stdin>:1): <top level expr> = ( | self* = lobby. | desktop open )
or:
VM# _Spy: true
false <1>: ( | parent* = lobby. | )
VM# 'worldBuilder.self' _RunScript
A lookup error happened while sending the message
primitiveFailedError:Name:
to
'worldBuilder.self'.
Subsequently, the lookup error message
undefinedSelector:Receiver:Type:Delegatee:MethodHolder:Arguments:
was sent to
<0>,
and was also not understood, causing the process to be aborted by the Self VM.
#0 (<error>:1): primitiveFailedError:Name: = ( | self* = 'worldBuilder.self'. :arg1 = 'ENOENT'. :arg2 = '_RunScript'. delegatee = nil. selector = 'primitiveFailedError:Name:'. |
"undefined selector error;
this method was automatically generated by the VM."
)
#1 (<stdin>:1): <top level expr> = ( | self* = lobby. | 'worldBuilder.self' _RunScript )
This one was done because I overlooked the prose and went straight to the instructions. Having step 1 includecd objects
would have helped.
Even more confusing:
10083 % find . -type f -perm -100
./.git/hooks/applypatch-msg.sample
./.git/hooks/commit-msg.sample
./.git/hooks/post-update.sample
./.git/hooks/pre-applypatch.sample
./.git/hooks/pre-commit.sample
./.git/hooks/pre-push.sample
./.git/hooks/pre-rebase.sample
./.git/hooks/prepare-commit-msg.sample
./.git/hooks/update.sample
./CMakeFiles/2.8.12.1/CMakeDetermineCompilerABI_C.bin
./CMakeFiles/2.8.12.1/CMakeDetermineCompilerABI_CXX.bin
...
./website/static/images/img01.jpg
./website/static/images/img02.jpg
./website/static/images/img03.jpg
./website/static/images/spacer.gif
10084 % find . -type f -perm -100 | wc -l
1918
1900+ files are executable in the checkout. Why are source code and jpgs marked executable in the checkout? This just obscures discovery.
On Tue, Jan 14, 2014 at 1:02 PM, Ryan Davis [email protected] wrote:
OK. Thanks to your help I got the VM built. Now what?
I don't have a Mac handy but something like this should get you going:
$ cd objects $ ../vm/Self.app/Contents/MacOS/Self Self Prompt> 'worldBuilder.self' _RunScript ... Self Prompt> desktop open
http://www.bluishcoder.co.nz
Ryan, can I suggest you subscribe to the mailing list at [email protected]? Email [email protected] to subscribe. There is an archive at forum.selflanguage.org That way more people will see your questions.
On Jan 13, 2014, at 16:13, Russell Allen [email protected] wrote:
Ryan, can I suggest you subscribe to the mailing list at [email protected]? Email [email protected] to subscribe. There is an archive at forum.selflanguage.org That way more people will see your questions.
I totally can, but I'm still gonna bug you here. :D Too much stuff gets dropped on the floor when support is done via mailing lists.
I've been following self for.. well... prolly since my first OOPSLA. I want you guys to succeed and I'm really happy you guys got this release out. It's a big improvement, but needs to be more approachable by newbs. So I'm going at this like one.