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

World: r3wp

[!REBOL3 Host Kit]

ssolie
12-Oct-2010
[69]
I'm new to rebol obviously :)
Andreas
12-Oct-2010
[70]
Nevertheless, currently there's no official, published test suite 
for R3.
BrianH
12-Oct-2010
[71x2]
Not published at least. There is apparently a massive test suite 
for R2 (and possibly R3) that RT uses internally.
And yes, it is in unit test format. We have found that unit test 
vectors are best formatted in the "block of code that returns true 
on success" model.
Andreas
12-Oct-2010
[73x2]
Remnants of an early attempt at getting something structured going 
for R3 can still be found on R3 chat.
And as far as I understand their are third parties doing internal 
regression testing. Nothing published that i know of, though.
Kaj
12-Oct-2010
[75]
I thought Carl generated a test suite for R3 a few years ago? And 
Ladislav seemed to be executing them
BrianH
12-Oct-2010
[76x2]
Right now there are so many changes between host kit alphas that 
there tend to be regression bugs with every release. They get fixed.
Ladislav may still be executing them - he's in the development group.
ssolie
12-Oct-2010
[78]
Are there any RT employees that hang around in chat?
BrianH
12-Oct-2010
[79]
Unfortunately (or not, depending on your opinion) the module system 
doesn't have many unit tests. The reason for this is because it is 
written using design-by-contract rather than test-driven-development. 
Once the design is final we will write tests to try to break it.
Andreas
12-Oct-2010
[80]
dbc is orthogonal to tdd
BrianH
12-Oct-2010
[81x2]
DBC makes most of the tests in TDD unnecessary.
There are people involved with the development of R3 that come here, 
like Henrik and me. Some of the others come by more rarely, to catch 
up or answer questions.
ssolie
12-Oct-2010
[83]
For the to-be-made amiga host-kit, would it be possible to include 
both dynamic (libr3.so) and static (libr3.a) linked r3 core libs?
Andreas
12-Oct-2010
[84]
libr3.a is unrealistic.
BrianH
12-Oct-2010
[85]
For the module system the only bugs that get through are native bugs 
and design flaws. The native bugs are found through testing, the 
design flaws through thought. Actual bugs in the module code are 
caught through tracing, but usually prevented in the first place 
through type tests and explicit error checking.
Andreas
12-Oct-2010
[86x2]
I think we have a remote chance at eventually getting a partially 
linked libr3.o (which can then of course be wrapped in an .a on it's 
own).
I don't know about Amiga or Win32, but at least with Linux linkers 
it's possible to achieve this in a way that should satisfy Carl.
BrianH
12-Oct-2010
[88]
Why those restrictions, Andreas? Core is a statically linked host 
kit.
Andreas
12-Oct-2010
[89x2]
Which restrictions?
Yes, but we can't reproduce Core from the hostkit.
ssolie
12-Oct-2010
[91x2]
I worked on the amiga python port and we provide a libpython.so which 
is what apps like Blender then utilize for embedding python
I imagine rebol will be similar
Andreas
12-Oct-2010
[93]
Yeah, but Python is open source :) Carl is _very_ picky about libr3.
Maxim
12-Oct-2010
[94x2]
that is what is to be expected.
(reply was for ssolie)
ssolie
12-Oct-2010
[96x2]
thanks Maxim
just thinking out loud a bit while browsing the host-kit here..
Andreas
12-Oct-2010
[98]
The primary reason there's no OSX hostkit is that Carl has not yet 
managed to generate a libr3 to his satisfaction :)
Maxim
12-Oct-2010
[99]
he says he can't generate a .so on OSX that doesn't export all symbols
ssolie
12-Oct-2010
[100]
strange.. I would think you just disable the option in the linker... 
--export-all-symbols or something?
Andreas
12-Oct-2010
[101]
Yeah, which is precisely what an .a does as well ("exporting all 
symbols", that is) :)
ssolie
12-Oct-2010
[102]
gcc doesn't export all symbols by default but maybe apple made some 
changes
Andreas
12-Oct-2010
[103x2]
Yeah, I sent Carl a complete example of how to achieve what he wants 
on OSX. But up until today he didn't get around to look into it.
What toolchain is used on Amiga?
ssolie
12-Oct-2010
[105]
gcc
Andreas
12-Oct-2010
[106]
+ binutils?
ssolie
12-Oct-2010
[107]
yes
Andreas
12-Oct-2010
[108x2]
What binary format is used?
ELF?
ssolie
12-Oct-2010
[110]
yes, the good old elf
Andreas
12-Oct-2010
[111]
Cool.
ssolie
12-Oct-2010
[112]
should be pretty easy I figure
Andreas
12-Oct-2010
[113x2]
Should be easy to get going then, yes.
What version of GCC do you have available?
ssolie
12-Oct-2010
[115]
from memory.. 4.0.3 is the current baseline
Maxim
12-Oct-2010
[116]
I really just think that maintaining several repos is currently to 
much work since it changes sooo oftern.  once the hostkit stabilizes 
a bit (within two or three releases is my guess) he should get around 
to concentrating on getting other distros their .so  


The amiga port was probably a good exercise in making the core lib 
even more cpu/platform agnostic.
BrianH
12-Oct-2010
[117]
You can't reproduce Core from the host kit? I understand that you 
can't make official binaries, but there shouldn't be anything stopping 
you from creating a single program that does everything Core does 
from the host kit once the host kit is out of alpha.
Andreas
12-Oct-2010
[118]
Well, there is. You can't statically link dynamic libraries.