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

World: r4wp

[#Red] Red language group

DocKimbel
17-Sep-2012
[1842x3]
*ones
Also, if someone is willing to make such a list right now and maintain 
it updated, that would be nice.
You just need to screen through %runtime/actions.reds and %runtime/natives.reds 
for changes. You could even make a short script to notify yourself 
when those files are modified using github's API. ;-)
Kaj
17-Sep-2012
[1845x3]
It's very problematic to use existing Red/System code in the Red 
#system directive, because it mustn't conflict with any of the internal 
implementation of Red
Wrapping it in extra contexts doesn't help, because #define's and 
other things are global
Even if I wring the bindings around it now, it can break any moment 
when Red's implementation changes
Arnold
17-Sep-2012
[1848]
The website needs an introduction/instruction section and a downloadlink 
to a zipped version of Red souces, so people can skip the github 
stuff.
NickA
17-Sep-2012
[1849]
+1 Arnold, although Github does provide a zip download link.
Arnold
17-Sep-2012
[1850]
Right, that's new I guess. How many K's is this source now? Ah only 
289 KB couldn't even blink my eyes while downloading it, so there 
will be no real bandwidth issue, I can host one download link on 
my site as well :-)
Pekr
17-Sep-2012
[1851]
So - just link red-lang.org to the zip archive? Doesn't it have a 
static/non-changing link?
Arnold
17-Sep-2012
[1852]
As I see it, it is available under https://github.com/dockimbel/Red/zipball/master
DocKimbel
17-Sep-2012
[1853]
Kaj: I might make macros context-sensitive, but I don't see what 
more I can do. The point of #system is to write Red/System code within 
the 'red context, so naming should be done carefully to avoid conflicts. 
But with a few context wrappers, you should be able to solve that, 
no?
Pekr
17-Sep-2012
[1854x3]
does it work like a preprocessor or what? Any example, of how is 
Red/System code inlined in the Red?
why not do it like a Rebcode? make red-system ...., or make native! 
.... etc.?
# char should not be used for anything else but - preprocessor. And 
if it works like a preprocessor, we should stop talking about the 
ability to use inlined Red/System code anywhere in the Red source 
code ... :-)
DocKimbel
17-Sep-2012
[1857x2]
Arnold: Red source zip links are on github since the beginning. Maybe 
you can write such presentation/instruction section, submit it in 
a gist, put the link here and on the Red ML, discuss with others, 
and when it's ready send it to me so I can review and publish it. 
I need to advance on Red construction rapidly now, so the website 
is currently lower priority to me.
Pekr: # are for compiler directives, they can be processed before 
or during compilation. 

make native!

: see my posts before my v0.3.0 link post on friday in this group.
Pekr
17-Sep-2012
[1859]
Doc - maybe what does Arnold mean is just simple addition of Downloads 
section, and providing just few links for particular branches - https://github.com/dockimbel/Red/zipball/master
... but - we can live without it if other things are more important. 
But - there might be some truth to the fact, that not everybody is 
skilled to fight with Github "complexity". It was an obstacle for 
me too, although I found my way thru ... but only because of your 
help :-)
Arnold
17-Sep-2012
[1860]
A what? A gist??
Pekr
17-Sep-2012
[1861]
:-)
DocKimbel
17-Sep-2012
[1862x4]
Branches: no, they are volatile, and I certainly don't want to have 
to thing about updating them on the web site each time I add/remove 
one...
*think
https://gist.github.com/
Guys, remember the project current version number: v0.2.6, this is 
far from a v1.0.0, don't expect the website to look like if the product 
was finished. Maybe I should add an old-fashion "Under Construction" 
yellow gif banner on top of it? ;-)
Arnold
17-Sep-2012
[1866x3]
I'll finish my new CMS first, or I should say publishing system together 
with the scripts I put on rebol.org lately. Then I will be able to 
publish code and story easier within my pages. I don't want the massive 
make-doc-pro and makedoc2 isn't my flavor. The ancient version from 
Chris Ross-Gill looks good but has some choices I dislike. So I am 
struggling with it too make it easy to use and with it I want to 
be able to generate a pdf version using Gabriele's pdf-maker script.
So 1 source and generate goodlooking webpages or pdf with it.
Then create some howto's and in time change from REBOL driven site 
to Red driven site.
Pekr
17-Sep-2012
[1869x2]
Doc - just concentrate upon Red. I thought that links to gihub archives 
for particular branches are static ...
Hmm, now I might see, what others mean - the Github link is not apparent 
anywhere on the site. Maybe once you find some free time (hardly 
nowadays), here's what I suggest:

- add Downloads link to the top menu

- add just one sentence - you can download .zip archives of particular 
branches from link-to-github ...

That's might help some users ....
DocKimbel
17-Sep-2012
[1871x2]
Links maybe, but branches are not, they are created, live and are 
removed.
Download link: I'll see that once I process all the pending tickets 
for Kaj.
Pekr
17-Sep-2012
[1873x3]
just one link - to the github red site ... then user should orientiate 
himself there ... nowadays visiting Red-lang.org does not suggest 
clearly, where one could get Red to give it a try ....
It is just there might be some rebollers, who are not fluent with 
github syncing tools, and we loose them for testing. Even Gregg admitted 
here, that he finally got it synced .... and Gregg is an experienced 
user :-)
But - sort your priorities yourself, no reason to get distracted 
....
DocKimbel
17-Sep-2012
[1876]
I admit git is not an intuitive tool and it can be a PIA sometimes...but 
Github is the place to be and it's an invaluable tool for collaborative 
coding.
Kaj
17-Sep-2012
[1877x2]
https://github.com/dockimbel/Red/downloads
https://github.com/dockimbel/Red/tags
james_nak
17-Sep-2012
[1879]
I'm just glad I wasn't the only one who thought it was confusing. 
:-) Program on.  Thanks Kaj.
Kaj
17-Sep-2012
[1880x7]
In my Syllable build recipe you can see that you can download the 
current state of a branch the same way:
http://syllable.cvs.sourceforge.net/viewvc/syllable/syllable/system/apps/utils/Builder/packages/Red--current/
I'm sure it's confusing by design, so that Doc can make a living 
selling single downloads ;-)
Kaj: I might make macros context-sensitive, but I don't see what 
more I can do. The point of #system is to write Red/System code within 
the 'red context, so naming should be done carefully to avoid conflicts. 
But with a few context wrappers, you should be able to solve that, 
no?
As I said, wrapping a binding in a context isn't enough, in the first 
place because #define's remain global. Making them context sensitive 
would help a lot, because they're currently the most primitive construct 
in Red/System
The other big part of the problem is that we have two languages now, 
Red built on top of Red/System, while they're so similar that they 
will often use the same names for slightly different concepts. With 
the bindings, one builds a world on top of Red/System, but the biggest 
parts of them should also be usable in the world one builds on Red, 
without making them look butchered when programming in Red/System
It's fair enough that #system code runs within the RED context, to 
be able to extend it and write the application code - although as 
I said, it's hard to know which names from Red's internal implementation 
will conflict. However, I need another place to import the core part 
of the bindings, outside the RED context so they won't conflict
DocKimbel
17-Sep-2012
[1887]
I should be able to find a solution for that need tonight.
Kaj
17-Sep-2012
[1888]
That would be great. Otherwise I don't have a presentation :-(
DocKimbel
17-Sep-2012
[1889]
I know...
Kaj
17-Sep-2012
[1890]
You fixed the cast arithmetic in master. Thanks, but I need it in 
dyn-lib-emitter
DocKimbel
17-Sep-2012
[1891]
Ah, you should have said that in the ticket, I copied the fix in 
v0.3.0 thinking that's where you needed it. :-)