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

World: r3wp

[Ann-Reply] Reply to Announce group

Gregg
15-Jun-2009
[1649]
Ladislav's INCLUDE has a /check refinement that does the same thing.
Ladislav
15-Jun-2009
[1650]
yes, INCLUDE/CHECK refinement for "ordinary call", #include-check 
directive to put into the file
Paul
15-Jun-2009
[1651]
Good to hear. ;-)
Chris
15-Jun-2009
[1652]
Would using urls be any better than issues?  You can dedicate a whole 
name space to them, use path notation, still are neutral and parseable 
values:

	sdk:include
	sdk:include/check
	sdk:do
Ladislav
15-Jun-2009
[1653]
hi Chris, I am afraid, that the main objection Carl had was, that 
he didn't like the fact, that the keywords were in fact string-like 
series. (so no symbols) This does not change, if we switch from issues 
to URLs, unfortunately
BrianH
15-Jun-2009
[1654]
But it would switch if issue! was changed into a word-like type. 
That decision has not yet been made.
Chris
15-Jun-2009
[1655]
How about paths?  You could anchor all the commands to one word, 
parse can still distinguish:

	sdk/include
	sdk/include/check
Maxim
15-Jun-2009
[1656]
brian that would be a great idea... as long as all of the current 
functionality remains... convertions and allowed symbols  :-)
ChristianE
16-Jun-2009
[1657]
Ladislav, your INCLUDE already looks very settled, so I'm late with 
the following suggestions. I really like the function and used it 
a lot, but always found the wording a bit unrebolish.


I'm wondering why it's INCLUDE/CHECK or #INCLUDE-CHECK for the "ordinary 
call", as you'd put it above.  Wouldn't it be more convenient to 
have INCLUDE work like the /CHECK-refined call and use INCLUDE/AGAIN 
to again include files already included before?


Also, having INCLUDE/PATH returning the path as a block, wouldn't 
it be easy to APPEND INLCUDE/PATH %ANOTHER without having a seperate 
INCLUDE-PATH next to INCLUDE. It may even be called IMPORT/FROM.

INCLUDE/CHECK   ->  INCLUDE
INCLUDE         ->  INCLUDE/AGAIN
INCLUDE-PATH    ->  INCLUDE/PATH or INCLUDE/FROM


Carl is always picky with names and wording, so having that sorted 
out would probably make it easier to convince Carl to include INCLUDE 
in R3. Which is what I'd really like to see happen, functionality-wise.
BrianH
16-Jun-2009
[1658]
More likely is to have prebol rewritten to be module-aware.
Maxim
16-Jun-2009
[1659x4]
dump prebol and make include module-aware.
I think just about every reboler out there agrees that include should 
replace prebol and let it adapt to R3, instead of prebol.
carl won't have to maintain that aspect anymore, and as a result, 
R3 will move ahead faster.  ladislav is VERY thorough in the tools 
he writes... Carl even admited that ladislav is more thorough than 
he  ;-)
and I'm sure Ladislav is more than willing to improve/modify/extend 
include as to make it compatible with Carl's ideals.
Ladislav
16-Jun-2009
[1663x5]
why it's INCLUDE/CHECK or #INCLUDE-CHECK for the 

ordinary call", as you'd put it above" - hi, Christian! I picked 
this to be compatible with the PREBOL dialect, which uses #include
INCLUDE/PATH: you are using an old version, I suggest you to switch 
to this one: http://www.fm.tul.cz/~ladislav/rebol/include.r, which 
does not use the /PATH refinement any more. Instead, a special variable 
called INCLUDE-PATH is used
aha, regarding INCLUDE-PATH: maybe I did not understand your proposition
so, you propose a new refinement? (I think I had such a refinement 
once, but removed it...)
what does BrianH think about this? How it should be done to make 
it the most comfortable for the users?
BrianH
16-Jun-2009
[1668]
I prefer an issue! keyword dialect, the changing the issue! type 
to be word-like withot the binding. I don't like INCULDE as a function 
name because that would preclude its use as a set operation the opposite 
of EXCLUDE (but that's just me) - using #include and such as issue 
keywords is fine.


An extended prebol dialect like Ladislav's include would work, if 
renamed and made module-aware. When you have modules most of the 
keyword directives go away in practice, since the module scripts 
can be converted to MODULE calls.
Ladislav
16-Jun-2009
[1669]
how does the module path interface look, Brian?
BrianH
16-Jun-2009
[1670x2]
Just a block of file! and url! paths for now. The file paths of the 
original files can be used at preprocessor time, but would be unnecessary 
at runtime since MODULE doesn't use them. Once the module is loaded 
its load path is irrelevant, and doesn't even have to exist anymore.
The default:
>> system/options/module-paths
== [%./]
Ladislav
16-Jun-2009
[1672]
yes, that is OK, sure
BrianH
16-Jun-2009
[1673]
The preprocessor would need a directive to set module import paths 
that would be used during the preprocess - it probably shouldn't 
use the standard paths in the preprocessor's running process, since 
that would get the modules the preprocessor is using mixed up with 
the ones it is processing, which would prrevent cross-platform processing.
Ladislav
16-Jun-2009
[1674]
you mean something like (currently used): #do [append include-path 
%this]
BrianH
16-Jun-2009
[1675]
Yeah, but with its own official directive. Preprocessor directives 
are friendly - code patterns requiring #do are not. Adding module 
support to the preprocessor means doing it for real.
Ladislav
16-Jun-2009
[1676]
yes, sure
BrianH
16-Jun-2009
[1677]
I'll be back this afternoon (It's still morning here).
ChristianE
16-Jun-2009
[1678x2]
Yes, want I wanted to say that I prefered the old INCLUDE/PATH over 
INCLUDE-PATH because it's one word less to "pollute" the global namespace 
(is there such a notion in R3? I'm not so sure now) and it's one 
word less to remember - the refinement will always be easy to learn 
about with HELP INCLUDE.
Re: "INCLUDE as a word" - isn't IMPORT an option, too? We have no 
EXPORT to conflict with, have we?
Ladislav
16-Jun-2009
[1680x3]
IMPORT is used in R3 for module management, which (according to Carl) 
is "not usable for building distributions using..."
then there is the system/options/module-paths variable
(in R3)
ChristianE
16-Jun-2009
[1683x2]
PREBOL set aside, I really think IMPORT/CHECK is the common case 
and one of the main advantages over a simple DO - preventing circular 
imports and such. I would be deeply surprised if Carl opts for INCLUDE 
(or #INCLUDE or whatever it will be) not having that check functionality 
in the standard case, switched off by a refinement. But that's just 
me and I certainly don't have any extensive build scripts ...
IMPORT - ah, o.k., I didn't know about that.
Ladislav
16-Jun-2009
[1685x2]
we may ask him, you can contribute to the discussion article: http://www.rebol.net/wiki/Inclusion_Methods
, ideas welcome
even the notes you mentioned now are good to keep in there
Maxim
16-Jun-2009
[1687]
include should be /check by default   and we should add an  /ALWAYS 
refinement to force reload.
Chris
16-Jun-2009
[1688]
@BH - would changing issue! to a word! sub class rule out some of 
its current capabilities?
BrianH
16-Jun-2009
[1689x3]
Yes. We've made many such changes in R3, removing some functionality 
to replace it with better functionality. It wouldn't have to be as 
bad as you might think - we could change it to copy-on-modify and 
most uses of issue! would still be viable. Keep in mind that use 
of issue! for binary conversions will be going away anyways, replaced 
by better methods. We have strings and tuples for most of the rest. 
The only real difference is just a datatype and/or syntax difference.
Chrisitian, R3's module system handles circular imports without need 
for any /check option.,
Ladislav, R3's IMPORT is not suitable for building distributions, 
but the syntax of modules was designed to be so.
Gregg
21-Jun-2009
[1692]
qwikitxt - Nice Janko!
Janko
22-Jun-2009
[1693]
Gregg and amacleod : Thanks :)
Janko
5-Aug-2009
[1694]
Oles: I still can't fully get this.. are you building this flash 
game in REBOL? or is there AS3 code + REBOL to for example generate 
some data for game, etc... ?
Oldes
5-Aug-2009
[1695]
I'm building it using REBOL (writing code in old but still my favourite 
Crimson editor). Which means I'm producing AS2 bytecode and also 
modify (resize, join...) various swf files with graphic ( on bit-level 
:) I'm using various caching so for example don't have to republish 
the graphic all the time when I just need to change simple logic 
in my code.
Janko
6-Aug-2009
[1696x2]
are you the only coder in the team?
I mean at this project
Oldes
6-Aug-2009
[1698]
yes