World: r4wp
[#Red] Red language group
older newer | first last |
DocKimbel 27-Aug-2012 [1463] | It seems there are some remaining bugs in on-* callbacks, probably registers saving issue...still investigating... |
Rebolek 27-Aug-2012 [1464] | So I've got this working: >> foo: make-native [a [integer!] return: [integer!]][a + 1] >> equal? 124 foo 123 == true Still needs some work before publishing, but it shouldn't take long. |
DocKimbel 27-Aug-2012 [1465x2] | Great! :-) I'll push a fix for the on-* issue in a couple of minutes. |
Fix pushed, let me know if you see regressions. | |
MagnussonC 27-Aug-2012 [1467] | Is Rebols GUI code (view etc) going to be usable in Red? Or is it going to something completely different? A while back I think there was talk of an dedicated Red editor (Reditor?). Is this still included in the roadmap? |
Pekr 27-Aug-2012 [1468x2] | I think that guys had some kind of GUI in mind, or maybe more specifically - some GUI targets, as e.g. html5, etc., being native on target devices. Myself, I would support and sponsor bit a View plus VID3 transition towards the Red, but not sure if someone would pick up. So - in the end, some "GUI" might appear .... |
... but GUI is not a priority right now I think .... | |
Henrik 27-Aug-2012 [1470] | It's important to distinguish between View and VID, and I assume that any kind of graphics engine can be implemented. I would personally like a View/VID like clone without the design flaws, but there is probably no hindrance in using GTK+ or whatever. |
Kaj 27-Aug-2012 [1471] | I'm not sure it's useful to repeat this, because people seem to wipe their memory and start over the discussion, but: - Red's roadmap includes binding to native GUIs. That means there's supposed to appear a binding for every platform Red is ported to. The intent is to try to create one dialect that would be able to drive all these native bindings. This would be a common denominator dialect. - Some of those GUIs are actually cross-platform, such as GTK and Enlightenment. so those can figure as a cross-platform GUI. They could offer more functionality than the common denominator dialect but still be cross-platform. |
Pekr 27-Aug-2012 [1472] | I can't accept anything so bloated as GTK or Enlightenment, hence I will voter for View clone anyday .... but the "architecture" of the plan sounds reasonable ... |
Kaj 27-Aug-2012 [1473] | You don't have to accept anything: the roadmap calls for a binding to the platform you already work on |
Robert 27-Aug-2012 [1474x2] | I'm not convinced with the native GUI bindings. A lot of framework have tried it too and it's a lot of work to bridget the gaps. Or if the least common denominator is becoming to small the native look & feel won't help since the app feels crippeled anyway: Why don't they use widget ABC here? |
Porting / binding R3 GUI to Red shouldn't be hard to do. It's a lot of work but we would get a simple and fast to use GUI. One of the major USPs of Rebol. I don't know any other simple to use interpreter that gives you a GUI out of the box. And, in these app days, it's no longer so critical to support native look & feel in all aspects. | |
Pekr 27-Aug-2012 [1476] | Robert - it is just that talking to Cyphre, he was eventually interested in a "port", which would be more of a new implementation, supporting more advanced stuff in the backend (as switching targets, hw acceleration, etc.), and doing it in his free time the initial guess was 12 months. Such product would be surely cool, but it seems to me, that it could be just the second stage. In first stage, I would prefer having windowing/events plus AGG ported (still fast enough for many things, I don't understand the obsession about the speec, well, apart from devices lacking float support, here, AGG would be really slow). Such step could be done in 2-3 months of work? Then ppl could start port R3 GUI to it .... |
Kaj 27-Aug-2012 [1477] | That's fine; it would be one of the supported cross-platform GUIs, next to Enlightenment and GTK. Of course, you'll have to make sure you have the rights to use the R3 GUI |
Pekr 27-Aug-2012 [1478x3] | I could afford. e.g. 50USD/month for that. I know, it does not make for a living, but maybe such an effort would be considered by more ppl? |
Well, for Robert, anyway, if Carl does not decide to go open-sourced, that thing is mostly dead anyway. But who knows, who owns the licence of View engine? IIRC the work was done by Cyphre. But what's the licence of the sources coming with Host Kit? Or is Cyphre still the owner of the work/licence? | |
the more options, the better imo .... | |
DocKimbel 27-Aug-2012 [1481x2] | We don't have to be limited in GUI backend options, as long as we can use the same dialect (or subset of it) to program them. |
About the native GUI option (using only what the OS provides), I'm pretty confident that the minimum common should be enough to cover most needs for business apps, I will do a prototype for the Red IDE. Having a free drawing x-platform canvas, for games and non-native GUI would also be needed, SDL seems to be the best backend for that AFAIK (that gives us also OpenGL for free). | |
MagnussonC 27-Aug-2012 [1483] | I guess then that some code from R2/R3 applications will be reusable in Red (as Red uses Rebol syntax), but not the GUI code. |
DocKimbel 27-Aug-2012 [1484] | R2/R3: probable, for the GUI code, it depends how close our VID version will be (R3 VID seems to be a good model that we could push further). |
Rebolek 27-Aug-2012 [1485] | I have this code for Red/System DLL: f-1423181: func [a [integer!] return: [integer!]] [a + 1] f-10584225: func [a [integer!] return: [integer!]] [a - 1] #export [f-1423181 f-10584225] and this code in R2 to load it which throws error: >> lib: load/library %builds/routines.dll >> foo: make routine! [a [integer!] return: [integer!]] lib "f-1423181" >> bar: make routine! [a [integer!] return: [integer!]] lib "f-10584225" ** Access Error: Cannot open f-10584225 Is it Red/System or R2 problem? |
DocKimbel 27-Aug-2012 [1486x4] | Let me test that... |
Error reproduced, looking for the cause... | |
Rebolek: issue fixed. | |
(fix pushed) | |
Rebolek 27-Aug-2012 [1490] | Yes, works now. Thanks! |
Kaj 27-Aug-2012 [1491x2] | How am I supposed to cross-compile a Windows DLL from Linux? I'm getting an internal compiler error with any combination of -dlib, -t WinDLL and -t Windows |
Oddly, -dlib does produce an .so | |
DocKimbel 27-Aug-2012 [1493x2] | -dlib just activates the flag for generating a shared lib for the systems the compiler runs on. |
From a non-Windows system, you have to use -t WinDLL target (and just that). | |
Kaj 27-Aug-2012 [1495x2] | That's what I thought. It looks like the crash happens when there are no exports |
May I suggest that -shared is a more common switch, usually on systems using GCC? | |
DocKimbel 27-Aug-2012 [1497] | I guess we need an error message in such case. |
Kaj 27-Aug-2012 [1498] | It also crashes when there's executable code outside functions. I guess that's disallowed |
DocKimbel 27-Aug-2012 [1499x3] | There are short and long switches, -dlib is already a bit too long, so it might be reduced further in the future, the long version is: --dynamic-lib. |
I prefer the dynamic/static naming scheme for libraries than shared/static. | |
Code outside: it shouldn't affect the library as it will never be run. I'm testing that... | |
Kaj 27-Aug-2012 [1502] | The compiler seems to crash on it |
DocKimbel 27-Aug-2012 [1503] | Can't make it crash that way...what global code are you using? |
Kaj 27-Aug-2012 [1504] | A lot of stuff. Just my way of claying a new binding out of an old one. We'll see when I encounter some specific situation |
DocKimbel 27-Aug-2012 [1505x2] | Have you tried loading a Red/System DLL with Wine? |
I've pushed a fix for the compiler crashing on missing #export. | |
Kaj 27-Aug-2012 [1507x5] | Thanks. No, I don't have a meaningful DLL yet |
Don't really have WINE, either. I'd have to dig out the laptop | |
I'm confused by | |
https://github.com/dockimbel/Red/commit/0443c4c4fe9bd7a2a86f9b62b566b80f310539e4 | |
I thought the callback attribute was replaced? | |
DocKimbel 28-Aug-2012 [1512] | The callback attribute is added automatically to a function when passed as get-word. But there are some cases where it needs to be manually set, like for the ***-dll-entry-point function from the runtime. |
older newer | first last |