World: r3wp
[Red] Red language group
older newer | first last |
PeterWood 5-Sep-2011 [3138x4] | Tick-tock. |
Yes, very nice Kaj. | |
Nenad keeps the status updated on the RoadMap http://www.red-lang.org/p/roadmap.html Since taking the decision for Red to compile to Red/System code, Nenad has been spending additional time extending Red/System to be able to do so. It will probably result in less work being needed on the first Red static compiler. | |
Having more people testing red/system would probably help speed things up a little. | |
Dockimbel 5-Sep-2011 [3142] | Agreed with Peter, as Red/System becomes more important now, it needs to be strengthen a bit more. I will publish an updated roadmap duing the SFD event in two weeks. |
Kaj 5-Sep-2011 [3143] | Detecting aliases would be very nice. It would replace GTK's RTTI, which is complex and buggy, and obviously wouldn't work cross-toolkit |
Dockimbel 6-Sep-2011 [3144x4] | Kaj: I have added in the last commit a new virtual path for querying aliases unique ID value: system/alias/<name> The system/alias/... paths are replaced during compilation with a unique ID that should match the one passed for "typed" functions. So now you basically have RTTI on aliases too. |
As it might be a bit verbose in some cases, macros would be welcome to shorten them. In such case, the convention of a "type-" prefix on the alias name would be a good one to follow (will document that in the spec later today). | |
I also plan to add a SWITCH function soon, maybe before the SFD. It should be able to resolve alias names without the system/alias/ path prefix. | |
Let me know what you think about this solution. | |
Kaj 6-Sep-2011 [3148x3] | Great, I'll try it |
What I'm a bit worried about, though, is binary compatibility. How are the values of type IDs determined? | |
I suppose they shift when the program uses different aliases. That's no problem for monolithic programs, but it would be when you try to define an interface to a library or other subsystem | |
Dockimbel 6-Sep-2011 [3151] | They are source-specific, they represent the order of each alias definition encountered by the compiler. |
Kaj 6-Sep-2011 [3152] | Yes, so they're not suitable for standard interfaces |
Dockimbel 6-Sep-2011 [3153x2] | Anyway, whatever value is attributed it should be transparent to users. |
As long you as you use system/alias/ path accessors. | |
Kaj 6-Sep-2011 [3155] | That's source compatibility, not binary compatibility |
Dockimbel 6-Sep-2011 [3156x2] | The value are calculated at compilation-time. |
values | |
Kaj 6-Sep-2011 [3158] | If I ask GTK to determine an object's type, it takes care that it works across versions of the GTK library. You can't use these aliases to build such a library |
Dockimbel 6-Sep-2011 [3159] | You can't build libraries yet in Red/System anyway. |
Kaj 6-Sep-2011 [3160] | Sure, but we will in the future. In other words, we need some sort of ReBin standard |
Dockimbel 6-Sep-2011 [3161] | We'll deal with that when library generation will be possible. Until that, the current solution should be enough. |
Kaj 6-Sep-2011 [3162] | OK |
SFarber 6-Sep-2011 [3163] | If Carl should decide not to continue developing rebol is there anyone else who could take it over? |
Henrik 6-Sep-2011 [3164] | Sure, but I doubt that would happen, since Carl is not likely to hand his baby over to someone else. |
SFarber 6-Sep-2011 [3165] | SO why the mysterious behavior? |
Henrik 6-Sep-2011 [3166x2] | Carl is very busy with another project. |
(let's move to REBOL3 group) | |
SFarber 6-Sep-2011 [3168x2] | I'm trying to make a decision about which language to learn for my own use. |
OK see you on REBOL3 | |
Kaj 6-Sep-2011 [3170x2] | Help! The current Red is incapable of compiling anything: |
Compiling /resources/Red/tests/empty.reds ... *** Compiler Internal Error: Script Error : Cannot use path on none! value *** Where: build-debug-lines *** Near: [records: job/debug-info/lines/records files: job/debug-info/lines/files rec-size: ] | |
Dockimbel 6-Sep-2011 [3172x3] | Strange...I ran the whole tests suite, as usual, without any issue before committing. |
Simple scripts are compiling OK for Linux too. | |
Testing from Linux, the tests are not passing. | |
Andreas 6-Sep-2011 [3175x2] | hmm, nope. seems there's a bug in my debug fix |
Fix pushed. Sorry for the mess. | |
Kaj 6-Sep-2011 [3177] | No problem, thanks |
Dockimbel 6-Sep-2011 [3178] | Thanks Andreas. |
Kaj 7-Sep-2011 [3179] | Can't test the new struct detection due to a new bug |
Dockimbel 7-Sep-2011 [3180x2] | It will be very hard to fix if there's no way for me to reproduce the issue. |
The code part where the compiler script breaks is not related to function return values, but only to function arguments code generation. | |
Kaj 7-Sep-2011 [3182] | It's a Heisenbug, so I'll check in the broken code |
Dockimbel 7-Sep-2011 [3183x2] | I have posted debugging instructions in the ticket comments. |
It might be caused by a uncaught wrong definition in your imports, that is messing up the imported function arguments parsing code. | |
Kaj 7-Sep-2011 [3185x3] | It's in Fossil now |
I didn't change the imports, only the type definition | |
Got closer, will change the bug description | |
older newer | first last |