• Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

AltME groups: search

Help · search scripts · search articles · search mailing list

results summary

worldhits
r4wp4382
r3wp44224
total:48606

results window for this page: [start: 48401 end: 48500]

world-name: r3wp

Group: #Boron ... Open Source REBOL Clone [web-public]
PeterWood:
9-Dec-2011
Just a remider that boron is an fully open-source REBOL-like evaluator 
built-in C. It has 23 datatypes and more than 100 "native" functions. 

The Boron homepage is at http://urlan.sourceforge.net/boron/
PeterWood:
11-Dec-2011
I really don't understand the licensing issue about Boron. Java is 
GPL licensed and it doesn't stop people usng it. Boron is licensed 
under LGPL.. What is the impediment to adopting Boron?
BrianH:
11-Dec-2011
Maybe it's that you can't look at the source and then work on a comparable 
non-*GPL project?
BrianH:
11-Dec-2011
Java's a special case: It got popular while it was proprietary, but 
open source people wanted to use it too but they couldn't. So they 
cloned Java under a Classpath license, which eventually led to Java 
itself being GPL'ed, which may have led to Sun dying (hard to say, 
but it did kill Java's value to the company). Still, it's mostly 
the proprietary versions of Java that are in use, and the business 
model is mostly based on proprietary restrictions to the use of the 
code.
PeterWood:
11-Dec-2011
As the only comparable projects to boron seem to be REBOL and World 
(both of which are closed source),, I can't see the "not being able 
to look at the source" issue being a problem. I don't think that 
boron's licensing has anything to do with its level of popularity.
Kaj:
11-Dec-2011
Agreed. People who can't come to terms with the LGPL, which is everywhere, 
will have to be content with REBOL and stop complaining about Boron
Kaj:
11-Dec-2011
They should probably also stop using Chrome, Safari, OpenOffice, 
GCC, Linux and the like
Pekr:
11-Dec-2011
And if GPL is really like that, it is in fact denying a freedom of 
choice. BSD like licences are the way to go.
Kaj:
11-Dec-2011
All the ones I mentioned are LGPL and GCC and Linux are even worse: 
GPL. So if you don't want to use Boron because it's LGPL, you can't 
use all that other software, either
Kaj:
11-Dec-2011
And please stop talking about GPL in this context. It has nothing 
to do with Boron
BrianH:
11-Dec-2011
Not really. The main way that I learn a programming platform is to 
view the source, though on platforms where the source is not available 
(as for proprietary platforms like Delphi) or too complex to be of 
use (C++ compilers, office suites, most operating systems) then I 
try to go by the docs and experimentation. If I want to contribute, 
I need to see the source. However, if I learn anything by looking 
at the source, I have to be careful about how I apply that knowledge 
elsewhere if I might violate a license by doing so. So I use Linux, 
Java, OpenOffice and GCC like they are black boxes with no sources 
available, only because they are useful enough to be worth using 
without really learning from them. I wish I could contribute to Boron, 
but it might interfere with my ability to contribute to REBOL and 
Red. And I already have a good enough semi-black box in R3.
BrianH:
11-Dec-2011
Nope, but I wrote most of the R3 mezzanines and all of the recent 
changes to the R2 ones, and my contributions were either MIT licensed 
or contributed under the condition that they be open sourced under 
a permissive license - no copyright transfer agreed to. And the host 
code is in the open portion of R3 - I haven't seen any closed source.
Kaj:
11-Dec-2011
Looking at the R2 mezzanines has already tainted you, and the fact 
that you can see the source of the R3 host kit doesn't mean that 
it's open source - it isn't
PeterWood:
11-Dec-2011
Brian, you could always ask Karl for permission to look at the sources 
and not have you own worked "tainted" by doing so. Of course, he 
may say no. On the other hand, there is no harm in asking.
GiuseppeC:
15-Dec-2011
Hi, I am interested into building an maintaining documentation for 
those programming languages based on REBOL.
It would be nice to have a DOCBASE for them.
What I search is:
- Someone ABLE to SETUP the Linux and the Wiki Software
- Someone which would share with me the cost of hosting.
Do you like the idea ?
Write me at [giuseppe-:-chillemi-:-eu]
Endo:
16-Dec-2011
Hi, I can setup mediawiki (or any other) on my web site: http://www.moldibi.com
which is up for 7-8 years. Its hosted on hostgator. I have unlimited 
storage / MySQL DB / bandwidth etc.

But I only have 1 domain name. If it is ok I can create any number 
of subdomains like world.moldibi.com or red.moldibi.com and give 
you a FTP account if necessary.
Group: Core ... Discuss core issues [web-public]
Oldes:
7-Jan-2012
update: https://github.com/Oldes/rs/commit/19771ea6a7991dd6960ec8c9a1a2a2690c6cd527

fixed the rounding so now the result is same like in the struct! 
version and added real/from-native32
Dockimbel:
7-Jan-2012
Hmm, you've transformed 'from-native, but as the real need was in 
fact to be able to get a binary! representation of a decimal! value, 
I tranformed 'to-native and 'split for that purpose. Has this IEEE 
library is quite rich, the need for the workaround of the intermediary 
string! representation is not needed anymore. Anyway, thanks for 
the update, I'm sure we'll need it at some point for float support.
Oldes:
7-Jan-2012
I transformed both, to-native (the first link) and from-native (second 
one) although I know the binary to decimal version is not needed 
for the Red project... it was just to make it complete. Btw.. I think 
it could be optimised as logic operation are faster than pure math.
Dockimbel:
7-Jan-2012
Thanks, I've missed that. In my version, I have removed line 389 
in 'split32 and added: fraction: fraction + 1 after 390. That fixes 
the "by one" inaccuracy.
Gregg:
16-Jan-2012
In R2 you can't add words to an existing object, you have to make 
a new object (as you are above) and change the reference in the block 
to that new object. FOREACH gives you the object, but not the block 
holding it. FORALL will work for this. e.g. 

blk: reduce [make object! [ test1: 1 ] make object! [ test1: 1 ]]

forall blk [
    change blk make first blk [test-2: 2]
]

probe blk
Geomol:
18-Jan-2012
So there is a difference, if no type is specified and if any-type! 
is specified. Like in:

>> f: func [v][]
>> f
** Script Error: f is missing its v argument

>> f: func [v [any-type!]][]
>> f

HELP does display it differently. In the first case, it's:

ARGUMENTS:
     v -- (Type: any)

and the second:

ARGUMENTS:
     v -- (Type: any-type)


Subtle differences. And you're correct, Ladislav. Insert and append 
sould take the same kind of argument.
Oldes:
31-Jan-2012
So far I'm using this:
myfunc: func[
	"Defines a user function with given spec and body."
	[catch]

 spec [block!] {Help string (opt) followed by arg words (and opt type 
 and string)}
	body [block!] "The body block of the function"
	/local desc
][
	if parse spec [set desc string! to end][
		insert body reduce ['log desc]
	]
	throw-on-error [make function! spec body]
]
GrahamC:
1-Feb-2012
http://www.synapse-ehr.com/community/threads/rebol-on-windows-7-and-a-network.1424/#post-10560

Anyone?
james_nak:
1-Feb-2012
Graham, gotta love that Win 7.  I was about to move all my belongings 
to a W7 machine and retire my XP but not now.
SWhite:
2-Feb-2012
GrahamC, thank you for passing this around.  I did get part way to 
a solution, as noted on your site.  Strange as it may seem, I am 
able to get to the network drives if I run a copy of REBOL that I 
download and leave with the name it came with, namely rebol-view-278-3-1. 
 The copy of REBOL that was giving me trouble was the same rebol-view-278-3-1, 
but I had renamed it to rebview to make a desktop shortcut work. 
 I had the name "rebview" in the shortcut so that I would not have 
to change the shortcut if I ever got an upgraded version of REBOL 
with a different name, like maybe rebol-view-279.  So my first problem 
with WIndows 7, REBOL, and network drives seems fixed.  


I still am not to a full solution to my Windows 7 issues.  I have 
some REBOL scripts that use the "call" command to run powershell. 
 Powershell then runs a powershell script to extract stuff from an 
EXCEL spreadsheet, which then is manipulated by the REBOL script. 
 Actually it's a bit messier.  I run a REBOL program launcher on 
the C drive which runs a REBOL script on a network drive.  The script 
on the network drive calls powershell with parameters to make powershell 
run a powershell script.  The powershell script extracts EXCEL data, 
and the calling REBOL script then makes a report of the extracted 
data.  


When I try to do this, the result from powershell is that I am not 
allowed to run scripts on that computer.  I am aware of this feature 
of powershell, and I have done what has worked for Windows XP (set-executionpolicy 
remotesigned).  I can run powershell directly, and execute scripts 
located on a network drive.  When a REBOL script that worked on XP 
calls powershell on WIndows 7, it won't go.  I am not expecting any 
help with this last issue at this time because the "call" does work 
in some cases (call/shell "notepad") (call/console/show "powershell"), 
so I still have several things to try, and if none work I am plotting 
a work-around.
Endo:
2-Feb-2012
Also try to use the full path. Once I have faced a problem CALL with 
REBOL style file! value. It worked with a windows-style path.

And also have problem with /shell worked on my XP but did not on 
my customers W7.
Pekr:
2-Feb-2012
I just tried:

do to-rebol-file "L:\some\path\here\test.r"


and everything went OK, Win Vista here. Console is being launched 
form the shortcut on start bar, pointing to renamed to rebol.exe
Gregg:
2-Feb-2012
I think /last and /tail only apply to string values. Perhaps a feature 
that hasn't come to pass yet? :-)
Geomol:
3-Feb-2012
Combination of find/tail and charset looks like a bug to me.
Maxim:
3-Feb-2012
sqlab, a charset is not a string its a bitset, so it will search 
for ALL the characters in the charset at each byte...   also note 
that when using find, charsets are case sensitive (and very fast).
the bug with /tail is pretty surprising, I never noticed it.
Endo:
3-Feb-2012
Thank you guys. I know the behaviour of charset in FIND. But I expect 
to skip the char that found, if I use /TAIL refinement as in using 
string.
Same for /LAST as Gregg said. It ignored for charsets. 
And also;
>> find/reverse "endo" charset "d"
== none
a bit confusing..
james_nak:
3-Feb-2012
I've got a function that doesn't and I know one of you can explain 
why. 
foo: func [  /dothis anobject ] [
 if dothis [
  dosomething anobject
 ]
]

foo myobject


So the dosomething function does not work with the "anobject".  However, 
If I hardcode the "myobject" into foo like:
foo: func [ /dothis ]
[
 if dothis [ 
 dosomething myobject
 ]
] 


It works. So my questions are: Is it because "anobject" is a pointer? 
And what do I do on the calling/receiving sides to fix that?
Thanks in advance.
james_nak:
3-Feb-2012
Nope, that wasn't it and I'm back to wondering what's the difference 
between the object and the passed object.
GrahamC:
3-Feb-2012
You can pass functions as parameters, and then omit the 'do
james_nak:
3-Feb-2012
Thanks Graham and Gregg. The object that I was passing was a face 
and I tried different ways to get it to work and that was the only 
way it would work. I guess the question is how does one know when 
he is passing some value if the receiving function sees it as the 
writer is intending it to be seen. Anyway for now I am satisfied 
and have moved on to other issues. I appreciate your input though.
Gregg:
3-Feb-2012
If the func doesn't take a lit-word/get-word argument, it should 
evaluate and pass as an object. Now, if you have a block of words 
that refer to list faces, and you pass that word, that's what you 
get. If your func has types defined for the args, that can help catch 
issues like this.
Maxim:
7-Feb-2012
James, I think you are mixing up the word which refers to an object 
with an object value.  this is confusing in Rebol because words are 
not variables.  

it's happened to me a few times (especially in VID) that I mix this 
up in action blocks and VID dialect builders.
Maxim:
7-Feb-2012
often, I'd build a block to be used and forget to reduce the block 
before appending it to the spec.  so what happens is that you receive 
an unbound word, instead of the data you assumed it should be refering 
to.
Maxim:
7-Feb-2012
I've been working a lot lately, and haven't had a lot of spare time. 
 I'm actually working with REBOL full time at a company which is 
using it to get a significant competitive advantage over the competition.
Maxim:
7-Feb-2012
I think people don't realize just how much power lies in parse.  
 Even I'm impressed with it right now.  I've been doing tests with 
really crazy stuff like two-cursor parse rules and run-time auto-recompilation 
of 400MB parse rules. 


 I've been doing things like parsing 100MB word documents and pushing 
 the interpreter to the limit ... reaching the 32-bit 1.6 GB RAM limit, 
 6 hour loop tests, etc. :-)
Maxim:
8-Feb-2012
learning parse requires baby steps and at some point, the decision 
to solve a real problem with it and force yourself to learn it.  
I didn't use parse for almost a decade until I started using it more 
and more to a point that currently I do more parse than any other 
coding in REBOL (but that's just because its idealy suited for this).


some little tricks accumulate with experience and eventually, we 
discover pretty wacky things, which allow us to use parse almost 
like a VM.
james_nak:
9-Feb-2012
Guys, with all this said (and I agree), perhaps this is the one things 
that needs to be the focal point for Rebol and eventually the #Not 
Rebol languages.  I know there are some tutorials out there but do 
any of them do justice to parse? I keep going back to the Codeconscious 
one: http://www.codeconscious.com/rebol/parse-tutorial.htmland 
the ones at reboltutorial, but there doesn't seem to be a lot considering 
how much one can do with it.
Maxim:
9-Feb-2012
I learnt parse using the 2.3 rebol core guide...  I thought it did 
a pretty good job of launching one in the good direction.   parse 
HAS evolved since then, but for the basic semantics and principles 
of parsing I think its pretty good.

you can also look at this tutorial by Nick Antonaccio:
http://musiclessonz.com/rebol_tutorial.html#section-9.3


IIRC nick has a good sense of tutoring, so it may be a good first 
step... he also gives links to other parse resources at the end of 
that part of his (short) tutorial
Group: World ... For discussion of World language [web-public]
Geomol:
20-Dec-2011
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.
Geomol:
20-Dec-2011
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
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.
Geomol:
22-Dec-2011
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.
Geomol:
22-Dec-2011
And then I should be able to make 64-bit Windows version too.
BrianH:
22-Dec-2011
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
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
New version uploaded with system/options/args and some changes to 
quiet mode.
Geomol:
26-Dec-2011
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
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
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.
Geomol:
29-Dec-2011
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
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
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
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.
Geomol:
29-Dec-2011
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.
Geomol:
29-Dec-2011
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.
PeterWood:
29-Dec-2011
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).
Steeve:
29-Dec-2011
And it's the very reason Boron  failed
Geomol:
29-Dec-2011
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.
Geomol:
29-Dec-2011
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
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
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!
GrahamC:
29-Dec-2011
If you add functionality to Boron, it becomes a derivative work and 
subject to GPL restrictions.  And stop shouting. lol
Kaj:
30-Dec-2011
Yes, and the distinction warrants some shouting after half a decade 
of Boron and ORCA development
Geomol:
2-Jan-2012
I have some free-lance work to do these days, but will continue work 
on World too.


The next thing for World is finishing the memory handling, so contexts 
are freed completely (problems with functions and blocks within contexts 
today). I'll check cyclic references too. After that, it's the rest 
of the datatypes, functions and better networking.
sqlab:
2-Jan-2012
Where and how do you handle a closed socket during receive (total 
== 0)
Geomol:
3-Jan-2012
In src/host/network.c line 86 and src/host/win32/network.c line 84. 
I break out of the while loop, if recv returns zero in case of closed 
socket.
Geomol:
3-Jan-2012
Under OS X, I get an empty binary, which is expected behaviour. Under 
WinXP, the process hangs here. The OS X and Linux version of World 
use standard BSD networking, the Windows version use MS networking, 
where an init is needed. You're welcome to suggest changes to the 
host specific sources. At this stage, I won't use a lot of time on 
Windows specific sources, as I don't use that platform very much.


I consider using cURL for networking, as that could give a lot of 
features fast. If I find, it adds too much to the overall size of 
World, it could be cut along the way by moving features from cURL 
to World sources.
Geomol:
6-Jan-2012
No, mostly COBOL and some REBOL for now.
Pekr:
27-Jan-2012
What Geomol offers, is already being ruined by Carl and RT ...
Pekr:
27-Jan-2012
And the culprit - the licence - the old song .... RT's path ...
Gregg:
27-Jan-2012
As well as R2 and R3, including Saphirion's work.
Pekr:
27-Jan-2012
As for me - I do care about the Red - I already donate, and I will 
do so in next few weeks again. In opposition to you, I don't care 
in ANY closed efforts again. I don't care about RT anymore. Carl 
is an ufo :-) I can't accept  ANYONE, behaving like he is. Weren't 
we supposed to know the resolution of our situation? This is total 
crap - Saphirion my ass - Carl is just making joke of us all ...
Pekr:
27-Jan-2012
We were supposed to see an agreement between the Saphirion, and RT. 
And as expected - nothing happened. Perhaps, Carl is growing his 
wine :-)
Mchean:
27-Jan-2012
on the other hand I understand his concern about getting a return 
on his investment, and if world were
BrianH:
27-Jan-2012
My impression (correct me if I'm wrong, Geomol) is that Geomol doesn't 
require our interest to get a return on his investment. He's already 
got a planned use for World in his own projects. Our interest and 
feedback is a bonus.
Geomol:
28-Jan-2012
Then reality check:


This group was started 2 months ago. It's easy to go through it and 
look for my blue and yellow releases and notes. That's a lot of progress 
in 2 months. If you see it otherwise, then you're blind. The C sources 
of World has grown a lot in those two months, and it's quality work 
with few errors considering the amount.


You will most likely see the progress of World come in waves. I had 
worked intensely on it more than full time since before summer. Yes, 
more than full time (more than 8 hours a day, also week-ends), so 
that's a lot of man hours. The last month, I've done paid freelance 
work too. At the same time, for World I'm researching better networking 
(cURL), getting lib calls to work under Windows 64 using libffi and 
finishing the memory model, so circular references are coped with 
correctly. Why didn't I say so? Because I like to announce things, 
when it's done, instead of giving false hopes, but now I made an 
exception.


1) I'm not going to give my work away for free at this time. That's 
because I see no benefit in doing so.

2) World will not come in a situation like REBOL, with lots of errors 
for a long time and still closed source. If I wasn't able to continue 
work on World (to fix errors, make further progress or whatever), 
and if people relied on work already done, then I would open source 
it. As this isn't the current situation with World, this is no argument 
to open source it.


If you don't like my model, move on. Negative rants here are not 
productive.
Geomol:
1-Feb-2012
First try on a World Map:
http://www.fys.ku.dk/~niclasen/world/World_Map.html

Made with FreeMind and exported as Flash.
Endo:
1-Feb-2012
That's cool! Then you can add explanations & examples to them, later.

And look at the "Note Window" under View menu, you can add notes 
to items. They will be exported to Flash / Javascript as Tooltips 
which is quite useful.
Endo:
1-Feb-2012
Oh and also try "Auto Layout" under Format menu, it makes it nice, 
but make a copy before use it.
Geomol:
1-Feb-2012
Thanks, guys. Easy to do with the right tool, and FreeMind works 
well for me.
Endo:
2-Feb-2012
Geomol: Can you put icons to show which parts are completed, priorities 
and you work on?
Geomol:
2-Feb-2012
The Map is the current picture of what's implemented, so it's not 
an image of all for version 1 of World. As I mention in the README 
on GitHub, date! and time! is only partly implemented, the rest is 
more or less completed for version 1.

I would like to improve the Map, so I'm working on that.
Geomol:
2-Feb-2012
New World Map at:

http://www.fys.ku.dk/~niclasen/world/World_Map.html


I freshed it up with some colors, which is also informative, added 
system, sys-utils and net-utils, added icons for parts with issues 
and added parts not implemented yet as grays.
Geomol:
7-Feb-2012
Gregg wrote in group #Red: "World has similar goals I believe."


Yes. To clarify: There is World and there is World/Cortex. World 
is written in C and the Cortex extension is written in World. It's 
a design goal to have as little as possible in the C part, but because 
it's also a goal to have good performance, especially with math stuff, 
some functions are native (written in C), which could have been mezzanines 
(written in World), like ABS, COS, SIN, TAN (all small functions 
in C).


But large functions like PARSE and SORT and many other functions 
are part of the Cortex extension, so they're written in World and 
is therefore open source.


With the good support for dynamic loaded libraries, good performace 
with heavier functions can be achieved that way.


And then there is the REBOL extension (in the World file %rebol.w), 
which is there to hold further extensions and definitions needed 
to run REBOL scripts. Those are not in the Cortex extension, because 
I disagree with some of the REBOL design decisions, and because I 
would like the Cortex extension not to be too large.


For me, World and Cortex has the higher priority, the REBOL extension 
the lower priority, meaning I use more time on finishing World/Cortex 
for now.
Pekr:
12-Feb-2012
Geomol - could you please explain, how wrapping libraries in World 
are done? Call me dumb, but I can't understand it from a website. 
OK, found more in PDF docs. I just wonder, if I always should use 
typecheck? Eg. I wanted following function to return 0 or 1. I tried 
with variou int types on the C side, and integer! datatype on the 
World side. I was receiving very large integer numbers as a result, 
untill I put [typecheck] in there. Maybe I just had incorrect argument 
type on the C side selected?

led: load/library %ledctrl.dll

led-is-power?: make routine! [
   [typecheck]
   led "LSN_IsPower" []
   uint integer!
]
Geomol:
13-Feb-2012
World is 64 bit. If you don't specify typecheck, it assumes the return 
value to be a 64-bit integer, e.g. sint64 or uint64 in C and integer! 
in World. If the return value of the C library routine isn't a 64 
bit integer, you need to specify typecheck to get it converted from 
8, 16 or 32 bit to 64 bit. If the return value of the C library routine 
is 64 bit, typecheck isn't necessary, but can still be used, and 
it will slow the routine call a bit.
Geomol:
13-Feb-2012
Maybe typecheck should be default, even if it hits performance, when 
it isn't needed, and then some other word should be used to remove 
typechecking (and conversion)? Argh! I don't like to change that. 
:)
Endo:
13-Feb-2012
What about a compiler option to turn on and off the typecheck? More 
complicated, but we would have a chance to run in default (typecheck) 
and then test it without typecheck by changing just one option.
Geomol:
13-Feb-2012
After I wrote the above, I considered it some more. Right now, most 
people will probably run into this problem, because most libraries 
return 32 bit values. But in the future, and with what World is very 
much designed for, namely science, 64 bit values will be used. So 
I'm not gonna change it.


Problem with compiler option is, that we then have two versions of 
World, and programs made for one won't run on the other.


Maybe better to make a World wrapper function with it's own routine 
definition dialect!?
Geomol:
13-Feb-2012
And to make is less confusing, the function description should probably 
read "True if a series isn't at its tail."
Geomol:
19-Feb-2012
Working on the next release of World, I implemented coercion for 
words and datatypes, so things like block! = 'block! returns true. 
This lead to a much simpler implementation of SWITCH, which is a 
mezzanine in World, so it looks like I'm on the right track.
Geomol:
19-Feb-2012
Another point talking against open sourcing at this time. World is 
not completely set in stone yet, I admit that. When I make design 
changes like this coercion between datatypes and words, it affect 
all other code, which can fast become a mess, if you have 10 people 
working on it. When it's completely set in stone, it's another situation.
Geomol:
21-Feb-2012
Update!


I'm implementing support for cyclic series in World these days. My 
initial research about freeing memory taken by cyclic series made 
me realize, that it'll hit performance, if every block and paren 
freed is being tested for cyclic references. So I'll implement a 
FREE mezzanine written in World, that can free such structures. This 
lead me to molding such structures, which is only partly implemented 
in current version of World and copying such structures. Those functions 
will be mezzanines too, as it's much easier to write the code in 
World than in C. So some C code will be removed in next release, 
but we'll have some more World code instead.
Geomol:
21-Feb-2012
Btw. COPY is by defauit deep in World (contrary to REBOL), and World 
will support deep copying of cyclic blocks, which gives a stack overflow 
error in REBOL.
48401 / 4860612345...483484[485] 486487