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

World: r4wp

[#Red] Red language group

AdrianS
7-Mar-2013
[5963]
I hope you guys are considering the longer (hopefully not so long) 
term series streaming (from ports?) wrt to what you consider worthwhile 
functions in parse. I would think that some the in-place changing 
functionality is desirable for that kind of situation. I guess, copying 
might not even be an option if there is not significant buffering 
available. Am I totally off with this kind of thinking?
BrianH
7-Mar-2013
[5964x2]
That is something I have given some thought to. I don't know about 
Red's port model, but for R3's port model we should be able to use 
seeking to implement backtracking and position setting. This should 
be reasonably quich in buffered port models.
Copying would be easier than modification, especially since modification 
wouldn't even apply for many port schemes, while copying just results 
in a value in memory.
AdrianS
7-Mar-2013
[5966]
You're right - I don't know what I was thinking. What I had in mind 
was one or more back-to-back parsing/transformation stages and it's, 
clear now that you pointed it out that each stage would just parse 
(if needed) data as it is copying from the port or a previous stage, 
to fill its respective buffer.
Paul
7-Mar-2013
[5967]
Kaj, yes, I would say regarding the SDL wav XP bug that it is appearing 
as a timing bug.  Hope to look at it more this weekend.
Kaj
7-Mar-2013
[5968x12]
Great!
Doc, how about merging dyn-lib-emitter into the upcoming release? 
I think it would make use and development a lot easier
I've tested that the remaining issues we had with the R3 bridge are 
due to bugs in R3, not dyn-lib-emitter
Would it be possible to implement { } multi-line strings in LOAD 
before the release?
Another crash:
red>> function [] [()]
Segmentation fault
LOAD doesn't parse file! type:
red>> %/x

*** Script error: action 42 not defined for type: 2
If it would do that, the interpreter could execute the same scripts 
as the compiler unmodified, assuming that any #include files are 
already compiled into the interpreter
The error seems to have something to do with path interpretation 
again, as it happens when a / is present
Paul, I think I have found the sound problem on Windows
It seems I need to open a window before sound is initialised properly, 
no matter if you want a window or not. DirectSound is said to need 
to be associated with a window handle. So it wouldn't apply to other 
sound systems, which probably explains why it works on WINE
Bo
7-Mar-2013
[5980]
Sounds like a poor design choice on the part of the DirectSound team.
Kaj
7-Mar-2013
[5981]
Yes, and it's not abstracted away in SDL
DocKimbel
8-Mar-2013
[5982x5]
Ka, there's no file! type yet in Red, even if some parsing rules 
are already included in compiler's lexer. So the path error for %/x 
is currently correct.


However, adding file! is not a big deal and as you already have provided 
some file access functions, I think I'll add it for the 0.3.2 release.
Ka => Kaj.
FYI, the runtime lexer will parse #include as a word! currently, 
I could change that though, if it's a blocking issue for some scripts 
(but I don't want to spend too much energy in a tokenizer that will 
be replaced in the next weeks).
Multi-line strings: looking into it to see if it's easily doable.
BTW, the segfault above has been fixed.
Endo
8-Mar-2013
[5987x2]
Is it a known issue for console:
red>> print  4 * 4
16
red>> print 10 / 2
10
== / 2
*, +, - works, but / not.
DocKimbel
8-Mar-2013
[5989x3]
Good catch!
That looks like a regression introduced when I added refinement support.
Working on it...
Endo
8-Mar-2013
[5992x2]
I guess so.
Another small thing:
red>> print x * 5

console window closed immediately, so I cannot see the error message 
(but there is a message!)
x is unset by the way.
DocKimbel
8-Mar-2013
[5994x2]
I get here:

    red>> print x * 5

    *** Script error: action 13 not defined for type: 2
Translated in english: "you can't use * on unset! value"
Endo
8-Mar-2013
[5996]
I tried several times with the latest build. I open a fresh console 
window.
print x * y
** script error ... window closes..
DocKimbel
8-Mar-2013
[5997]
On Windows or UNIX?
Endo
8-Mar-2013
[5998]
oh I got it. I run the console by double click, not from dos prompt.
DocKimbel
8-Mar-2013
[5999]
:-)
Endo
8-Mar-2013
[6000]
sorry :)
DocKimbel
8-Mar-2013
[6001x3]
np
/ issue fixed.
Kaj, I won't merge dyn-lib-emitter yet, I will work on it as soon 
as I make the new release to add PIC support and start Mach-O and 
ELF implementations. I want all of them working before merging. I 
would probably also make a new release and bump the revision number 
for the merge.
Kaj
8-Mar-2013
[6004]
It's rather frustrating to have that functionality available for 
so long and yet not available
DocKimbel
8-Mar-2013
[6005]
It is available, just from an alternative branch. Nothing stops anyone 
from using it.
Kaj
8-Mar-2013
[6006x2]
It does, you don't get the functionality and fixes in master, and 
it's hard to install
It's fine that #include is parsed as a word! because that way it's 
skipped
DocKimbel
8-Mar-2013
[6008]
You can easily keep your forked dyn-lib-emitter up-to-date with just 
a `git rebase`.
Kaj
8-Mar-2013
[6009]
I know there is no file!; I don't need it now, I just need file literals 
to be skipped as well, so parsed as a word!, too, instead of bombing 
out
DocKimbel
8-Mar-2013
[6010]
or rather `git merge origin:master`
Kaj
8-Mar-2013
[6011]
I can't use Git
DocKimbel
8-Mar-2013
[6012]
I've fixed the runtime lexer to parse #include as issue!, shouldn't 
change anything for you.