r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[World] For discussion of World language

Geomol
20-Dec-2011
[745x4]
I don't think so, as it's a simple memcpy. The C code looks like 
this:

	if (rb->type == STRUCT_T) {
		if (rc->type == HANDLE_T) {
			Struct *U = (Struct *) rb->value.rc;

   memcpy (U->u, (char *) ((Handle *) rc->value.rc)->pointer, U->size);
		} else
			invalid_argument (W, rc);
	} else
		invalid_argument (W, rb);
The alternative (as I see it) is to not be able to access such structures.
Routines able to operate on structures, you define in World and give 
a pointer to to the routine, doesn't need this memcpy, and it'll 
work today.
To avoid the memcpy, the AS function could be used to redefine a 
handle to a struct. Like:

	as tm handle


, but then handle is redefined as a struct, and it now points to 
a mem area, the routine made. So this can't be deallocated by World, 
and the memory management has to deal with that situation. Not good 
in my view.
Geomol
22-Dec-2011
[749x4]
New release at https://github.com/Geomol/World
- Added ability to run script from command line
- Added command line options: -i -q -v
- Added usage (view usage for example with: world -?)

- Now cortex.w is found, even if world is started from other directory 
(using argv[0] in C)

- Added facility to copy handle data to struct: to <struct> <handle>
- Removed ?? (not useful because of binding rules)
I found a way under OS X using AppleScript to launch World scripts 
from the Finder by dobble-click, and to start World the same way, 
if anybody is interested. It may be useful for REBOL and other languages 
as well. The method makes a world.app. Speak up, if you need it.
I would like to hear your experiences with launching world scripts 
from command line, or use world to run services, etc.
Oldes
22-Dec-2011
[753x2]
world_win32 -? crashes on W7 64bit
ech.. crashes completely when I run it from CMD... starting by clicking 
on icon is fine
Geomol
22-Dec-2011
[755x3]
I test under WinXP with cmd and with cygwin bash terminal, and it 
works:

C:\world\src>.\world.exe -?
Loading Cortex... Done
usage: .\world.exe [options] [script]
...

I should get a Win7 soon, then I can test that.
And then I should be able to make 64-bit Windows version too.
You should also be able to see the usage with any other option not 
recognizes, like: world -h
Maybe the -? is the problem?
Maxim
22-Dec-2011
[758]
I'm not sure about allowing typecasting from handle!.  it sort of 
defeats the purpose of an opaque pointer handler IMHO.   the better 
alternative would be to allow the routine to define what struct pointer 
type it returns directly.
BrianH
22-Dec-2011
[759x3]
The argv(0) method doesn't work in some circumstances on Windows. 
R3 has been running into some problems because of that.
http://issue.cc/r3/1892shows some circumstances that will trigger 
the problem, so it's a good model for building tests.
Andreas wrote this earlier, in response to your question about this:


Is there a way to figure out, what directory a command launches from, 
which will work across platforms?

Yes and no. There are platform-specific ways. This gist of it:

- Linux: readlink("/proc/self/exe")
- OSX: _NSGetExecutablePath
- Win32: GetModuleFileNameW

(We recently discussed this issue in relation to R3 as well.)
Geomol
22-Dec-2011
[762]
The argv method was fast to implement and works in my cases, so I 
went with that for now. It maybe will need to be replaced by something 
else. Putting cortex.w (and user.w later) into an install dir like 
Library/Application Support/world/ could be a way under OSX, and 
something similar on other platforms.
Geomol
23-Dec-2011
[763]
New version uploaded with system/options/args and some changes to 
quiet mode.
Gregg
23-Dec-2011
[764]
Great to see continuing progress John!
Geomol
26-Dec-2011
[765]
Thanks, Gregg. Some thoughts...


I create World, because I need the tool. So when I have the functionality 
planned, I've reached one of my goals, because I then have the tool, 
I need for my own future developments. For World to become a success 
for others to use also, it needs to be better in crucial ways than 
the tools, others use today. Therefore I also focus on making World 
slim (not bloated), stable and bug-free, very well defined, easily 
integratable and with good performance. There still is work to do 
in all these areas.
btiffin
28-Dec-2011
[766]
I have World calling COBOL code.  It'll be nice to get a full on 
64 bit core though.  Much mucking about with 32 bit libraries, compiling 
COBOL in a VBox etc.

Getting close to automating the Dictionary wiki pages as well.


Adding to the old topic of openeness.  OpenCOBOL is open source, 
but very few people fork it.  Roger is the principal developer, and 
we wait for his releases ... but we get to see the compiler, build 
it on our platforms.   John, I don't want to see World core open 
so I can change it, I'd like to see it open so I can read it, build 
to suit, learn things.  So, if it's not asking too much, put the 
core code up in a read-only repo and ignore the forks while you develop?

Lastly; fun and looking forward.
Geomol
29-Dec-2011
[767x2]
I have a Win7 (64-bit) install now and did some work yesterday on 
porting World. I ran into problems with building libffi, which World 
use. I will look into it.
Another try to close the topic on openness: So you expect to get 
man-years of work open-sourced for free? And this in a situation, 
where I get nothing from doing so? Please, be serious! World is not 
a hobby-project for me. I have invested a lot of time and money in 
this.

I have my hands full, and the World project do very good progress 
right now. I see no business benefit from making World open source 
at this point in time.

Case closed. :)
Pekr
29-Dec-2011
[769]
Geomol - it is just that you depreciate psychological factors. Ppl, 
especially with previous experience with RT, are very carefull here. 
In the end, you might just wonder, why noone is interested in such 
a model anymore. And in the end, it is just end result, which matters. 
You either get some community surrounding World, or you might wonder, 
why while your product is excellent, noone really cares anymore. 
Or - you might end up finding some nice niche e.g. embedded market, 
having lots of customers, etc. There is many possibilities, how your 
decision might influence something.


What I really don't understand is one thing - you sound too protective. 
You have full right to sound that way. But what escapes my mind is 
- "when I get nothing from doing so?".  And what do you get from 
actually not doing so? Also - do you expect any harm, caused to the 
business side of your project, by eventually open-sourcing?


As for me - I am used to commercial and licensed products. I just 
wanted to point out, that in the end, your attitude, might be contraproductive. 
If you keep product developed, ppl might feel safe, but ppl might 
also be carefull with their contribution to the project, because 
such kind of REBOL related project already failed big time. Not your 
falt, that's for sure, but the negative assumption is in the air 
nonentheless.
Steeve
29-Dec-2011
[770]
And so he wants support for free. :-)

Joke appart, I feel bad because we saw many projects failed because 
of the same reason.

A language implementation itself without real businnes application 
will get you nothing but some fame.
And so he wants support for free. :-)
Geomol
29-Dec-2011
[771x4]
I don't ask for your support.


I bring World to the awareness of you guys, because you might benefit 
some a REBOL like language in the current situation with REBOL. I 
could just have continued keeping my mouth shut and made the tool, 
I need, without others knowing about it.
benefit *from* a REBOL like ...
And I won't like World to become in a situation, where there are 
lots of bugs and no progress for years, and it's still close sourced. 
That won't happen.
I feel bad because we saw many projects failed because of the same 
reason.


Don't feel bad! A month ago, you didn't know about World. Now you 
do, and now you have an extra option. Where is no reason to feel 
bad.


Afaik projects like Boron are open source, and you may put it in 
the category of "failed projects". So open source doesn't equal success.
Steeve
29-Dec-2011
[775]
Boron is not
PeterWood
29-Dec-2011
[776]
Have you thought of some "escrow" type arrangement to give people 
the confidence that World will not just disappear at some time in 
the future?


It doesn't have to be a full commercial arrangement but perhaps you 
could give a copy of the source to somebody that you trust with instructions 
on what circumstances it would be released (and how it should be 
released).
Geomol
29-Dec-2011
[777]
ok, my bad. I don't know enough about Boron.
Steeve
29-Dec-2011
[778]
And it's the very reason Boron  failed
PeterWood
29-Dec-2011
[779x2]
Boron is fully open source - it is published on gitorious
It is published under the LGPL.
Steeve
29-Dec-2011
[781]
uh !?
Geomol
29-Dec-2011
[782]
:) I take my words "my bad" back.
PeterWood
29-Dec-2011
[783]
https://gitorious.org/boron/boron
Geomol
29-Dec-2011
[784]
Peter, no, I haven't seen a reason for an "escrow" type arrangement 
yet. World has just been available for 3 weeks or so. And I feel, 
World isn't quite yet in a situation, where I would build larger 
projects with it. Close to version 1, maybe around going from alpha 
to beta release, it could be justified to make arrangements.
Steeve
29-Dec-2011
[785]
Ok  people, look at the red light :)
Flashhhhhhh !!!!
Geomol
29-Dec-2011
[786x2]
I bet, you play sorcerer, when you roleplay! :)
Pekr, sorry I don't comment on all you say. But look e.g. at a product 
like WebOS, which was mentioned here in this AltME world not long 
ago. It was developed to the current state as close source. Just 
recently HP announced it to go open source. I judge it to be an ok 
success for the people behind it, even if it was developed as close 
source. Open source doesn't equal success. And close source also 
doesn't equal success. But they may be related.
Andreas
29-Dec-2011
[788]
Geomol: "man-years of work open-sourced for free? And this in a situation, 
where I get nothing from doing so?"


You could get _a lot_ from doing so. Increased participation in general, 
with all the positive effects that can encompass. But whether you 
consider that worth the trade-offs necessary to reap those benefits 
is obviously your choice.
GrahamC
29-Dec-2011
[789]
A lot of us would like Rebol and its derivatives to  be successful 
because success brings validation, and more importantly brings new 
people and development to Rebol.  We've all seen the closed source 
model fail, and specifically we have seen people leave Rebol or refuse 
to learn Rebol on this account.  Orca and Boron are not relevant 
because there was never a critical mass of people aware of it, and 
the GPL license put commercial developers here off.  Partial open 
source models like R3 would suggest that this model is also not attractive 
enough with a lack of investors to keep Carl working on the project. 
 Perhaps you do have some wonderful business plan that is going to 
work against all odds but the majority of us are not so optimistic. 
  We don't wish to see history keep repeating itself and so we are 
advising you to change your plan.   Think King Canute!
Kaj
29-Dec-2011
[790x2]
PLEASE STOP CALLING BORON GPL, OR EVEN CLOSED SOURCE!!!
- Shakes head at all the foolishness spouted here -
GrahamC
29-Dec-2011
[792]
If you add functionality to Boron, it becomes a derivative work and 
subject to GPL restrictions.  And stop shouting. lol
BrianH
29-Dec-2011
[793]
He means that Boron is LGPL, rather than GPL. You still get (an extended 
large subset of) the restrictions.
Kaj
30-Dec-2011
[794]
Yes, and the distinction warrants some shouting after half a decade 
of Boron and ORCA development