Re: Time to finish RedyCode 1.0

new topic     » goto parent     » topic index » view thread      » older message » newer message
ryanj said...
  • I would like to get RedyCode working with Phix, too. smile

I should warn you that is not likely to be trivial. Some quick tips follow.
First you will need to hide /std from Phix (but not OE), eg

--/* 
include std/dll.e 
include std/machine.e 
--*/ 

There is no way Phix can support all of std/, the best I can do is extract individual routines one at a time, as needed.
Of course all the ones that get used the most often have already been done.

Second, you'll need a bodged euphoria/info.e, specifically

--/**/constant version_info = {0,0,0,0,0,0,"unknown",0} --/* 
constant version_info = machine_func(M_EU_INFO, {}) --*/ 

and

global function arch_bits() 
--/**/  return sprintf( "%d-bit", machine_bits() )  --/* 
        return sprintf( "%d-bit", 8 * sizeof( C_POINTER ) ) --*/ 
end function 

Thirdly, you will probably need a fair bit of sequence-op stuff such as

--/**/  plblpos = sq_add(wrect[1..2],wcprops[wcpLabelPos][idx])     --/* 
        plblpos = wrect[1..2] + wcprops[wcpLabelPos][idx]           --*/ 

Lastly, Phix has recently (possibly temporarily) ditched "without warning".
To avoid warnings on implicit forward calls, make them explicit.
Just copy the declaration line higher up, prefixed with forward, eg:

forward procedure update_var(string name) 
... 
      update_var(xxx) 
... 
procedure update_var(string name) 
end procedure 

The recent experience with Judith's IDE on Phix went much more smoothly than I expect RedyCode will, because it was all 3.0-compatible code (and no std/).

Pete

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu