1. Phix 0.8.3 uploaded

Usual place: http://phix.x10.mx/download.php

This is a maintenance release. From the readme

22/12/2020: Bugfix: "class x string name procedure name()" now produces the 
            error "invalid type". Note that all methods are "virtual" in the 
            sense they can be overidden, ideally it would check that it was 
            only overriding something from an "extends" clause, but that is 
            not particularly simple. Instead it is saying it cannot override  
            a string with a procedure. Likewise it will trigger an error if 
            you try to override a procedure with a function and vice versa. 
            I would have liked to put signature checks in there, but alas 
            that information is not held (think "pure virtual"), or rather  
            it is quite a bit more difficult to dig out. 
24/12/2020: BUGFIX: in something (well, anything!) like the following 
                sequence x = repeat(0,rand(50)) 
                if <condition> then 
                    x = {} -- (or any other [fixed] length) 
                end if -- <<== **bad mergeBlocks()/mergeTypes() here !!!** 
                if length(x)=0 then ?9/0 end if -- <<== uses if 0=0 then!! 
            pltype.e was replacing/merging the lslen[prev] of -1 (aka 
            "no idea yet") with the lslen[curr] of 0, which meant it would 
            think x was length 0 (or whatever) even after condition failed. 
            It now leaves it alone (the last if now /looks/ at x's length). 
            Amazed this was not caught years ago, and even more amazed that  
            p -test didn't start /any/ bitchin... 
02/01/2021: Replaced sys_exit with sys_exit_group, for proper linux s/down. 
08/01/2021: Moved initialisation in sha256.e to permit forward calls. 
10/01/2021: Added hideScope/restoreScope for nested functions, which hide 
            anything and everything that would otherwise require a closure. 
            Note that some work remains outstanding in this area. 
21/01/2021: Tightened up on builtin overrides, to prevent such nonsense as 
            integer integer, atom atom, string string, and so on. constant 
            SLASH was a bit of an innocent bystander, though you/I should 
            probably be using the builtin constant anyway. 
21/01/2021: BUGFIX: Ctrl [] in Edita/Edix now correctly skip backtick strs. 
21/01/2021: Edita: easinst.ew now uses GetWindowText, should be better. 
21/01/2021: BUGFIX: Edix now uses an ini file rather than IupConfig for the 
            list of open files, which was always corrupting itself. Close 
            file now works properly, not mangling the table of tab handles. 
25/01/2021: IupCloseOnEscape() is now applied by default to all IupDialog, 
            and the latter has a new bEsc parameter to turn that off. 
25/01/2021: get_routine_info() now has a bName parameter, which will avoid 
            unnecessarily populating the symbol table with actual names. 
25/01/2021: ENH: IupScintilla() added to pGUI, along with a demo. 
29/01/2021: BUGFIX: deleting a dictionary entry was moving the key but not 
            the data(!!). Many thanks to irv for finding this nasty bug. 
29/01/2021: New still_has_delete_routine() function. Used by the internal  
            type checking routines of builtins\structs.e to identify any  
            now-invalid struct/class instances, and prevent accidentally  
            clobbering a slot now occupied by something else. 
30/01/2021: BUGFIX: tagset was using ceil() not floor() for some unknown 
            reason, and thus overruning the limit (when step!=1). 
01/02/2021: ENH: allow dot notation on "struct" variables (previously it 
            only allowed that on actual struct/class definitions). Eg/ie 
                -- procedure test(Widget x)  -- (was ok) 
                procedure test(struct x)     -- (now ok too) 
                    x.field = 1 
                end procedure 
01/02/2021: Allowed delete_routine(x,0) to remove any prior association. 
            The docs said you could, but the front-end disallowed it. 

There was also an "while 1 do end while" going into an infinite loop, that is in the compiler itself,
branch straightening the same jump to itself forever, which I can't see listed above.

new topic     » topic index » view message » categorize

2. Re: Phix 0.8.3 uploaded

Thank you very much! I too was a eu customer and quit on it. Life is wired - i discovered phix and me and some people got hooked. great. We use phix for our daily work (not being allowed) still are doing and me personally fighting coronal and it's stately management. would I have had Phix starting out - I would not have changed for years to other languages. it is so nicely lisp like, expert systems...

thanks pete!

PS missing: oracle, mssql, maria db ...

new topic     » goto parent     » topic index » view message » categorize

3. Re: Phix 0.8.3 uploaded

 the result of 7 * 8.50 is: 3.84062e+248 
./p -test hangs here.

Don't know much about math, but that seems to be off by a few percent smile

new topic     » goto parent     » topic index » view message » categorize

4. Re: Phix 0.8.3 uploaded

irv said...

 the result of 7 * 8.50 is: 3.84062e+248 
./p -test hangs here.

Don't know much about math, but that seems to be off by a few percent smile

Oh yes, I forgot about that - it's not a "real" bug.

Remember that C_DOUBLE stuff? Well, t42cback lines 387-437 (which I sidestepped at the time) are now effectively a test it is still working wrong.
In other words it is a hand-crafted inline assembly test that is based on my faulty understanding of lnx 64-bit calling conventions.
Option a: completely rewrite it and perhaps/probably still be wrong, or b: bin it. The latter is going to win.

new topic     » goto parent     » topic index » view message » categorize

5. Re: Phix 0.8.3 uploaded

petelomax said...
irv said...

 the result of 7 * 8.50 is: 3.84062e+248 
./p -test hangs here.

Don't know much about math, but that seems to be off by a few percent smile

Oh yes, I forgot about that - it's not a "real" bug.

No problem, it appears to be the same kind of math the credit card company uses.

new topic     » goto parent     » topic index » view message » categorize

6. Re: Phix 0.8.3 uploaded

Testing[64]: /home/irv/phix/test/t64struct.exw 
 
/home/irv/phix/builtins/structs.e:895 
        s = delete_routine(s,0) 
          ^ routine_id expected 
 
 
...included by /home/irv/phix/test/t64struct.exw, line 76 
changed the abort() line 434 in t42cback.exw to: puts(1,"Failed double test/n")

Now I get as far as test 64.

new topic     » goto parent     » topic index » view message » categorize

7. Re: Phix 0.8.3 uploaded

irv said...

/home/irv/phix/builtins/structs.e:895 
        s = delete_routine(s,0) 
          ^ routine_id expected 

What?!! Nooo! Oh, stupid me, I forgot p32 and p64 again. Uploaded, can you "wget http://phix.x10.mx/p64" and "mv p64 phix/p".

new topic     » goto parent     » topic index » view message » categorize

8. Re: Phix 0.8.3 uploaded

Done. Things are working again.

Thanks!

new topic     » goto parent     » topic index » view message » categorize

9. Re: Phix 0.8.3 uploaded

petelomax said...

Usual place: http://phix.x10.mx/download.php
This is a maintenance release.

Sorry, stops...
Without any idea...
http://pl-euphoria.narod.ru/phix/phix.png
http://pl-euphoria.narod.ru/phix/ex-err.txt

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

10. Re: Phix 0.8.3 uploaded

kinz said...
petelomax said...

Usual place: http://phix.x10.mx/download.php
This is a maintenance release.

Sorry, stops...
Without any idea...
http://pl-euphoria.narod.ru/phix/phix.png
http://pl-euphoria.narod.ru/phix/ex-err.txt

Regards


kinz

For a moment I thought it might be no longer working on Windows XP (ah, brings back memories), but it's fine here.
Three possible options, none of them particularly grand, sorry:
1) reinstall, and hope that magically fixes it
2) run procmon, see if you can spot anything amiss there (as in turn if off asap, then look for suspicious errors somewhere near the end, of a usually very long list)
3) install ollydbg and open it with that, see if that gives any clues...

new topic     » goto parent     » topic index » view message » categorize

11. Re: Phix 0.8.3 uploaded

petelomax said...

For a moment I thought it might be no longer working on Windows XP (ah, brings back memories), but it's fine here.

It is Win7max 8gb, 64.

petelomax said...

Three possible options, none of them particularly grand, sorry:
1) reinstall, and hope that magically fixes it

Done, no effect.

petelomax said...

2) run procmon, see if you can spot anything amiss there (as in turn if off asap, then look for suspicious errors somewhere near the end, of a usually very long list)

What is procmon?

petelomax said...

3) install ollydbg and open it with that, see if that gives any clues...

What is ollydbg?

This is my first try of Phix at all.
My body magnets all hard and soft computer bugs. When I worked the digital tester in USSR NAVY, devs wanted to kill me.

new topic     » goto parent     » topic index » view message » categorize

12. Re: Phix 0.8.3 uploaded

kinz said...

It is Win7max 8gb, 64.

Sorry, I have no way to test that. Mind you, given that XP is fine I suspect it would work anyway - more likely it is something about your specific pc.

kinz said...

What is procmon?
What is ollydbg?

Seriously, no Google, no Yandex?
Nevermind, procmon is a low-level monitoring tool. It produces vast quantities of largely irrelevant data, including lots of things that look like errors but it recovered from them (esp include files). However, stopping it asap, and looking at the end of the list just might show up something interesting. You can use right click to filter out irrelevent programs and/or paths, if that helps.
Ollydbg is a debugger. Run it and open the executable with File/Open, then Debug/Play or F9 to carry on. There might be something visible in the callstack, and you can use View/Memory to get an idea of where the failure address is. Don't expect miracles. Try it. Give up. Sleep on it. Repeat.

There is a very strong possibility, in fact probability, that you'll get nowhere with either of those tools.

new topic     » goto parent     » topic index » view message » categorize

13. Re: Phix 0.8.3 uploaded

petelomax said...
kinz said...

It is Win7max 8gb, 64.

Sorry, I have no way to test that. Mind you, given that XP is fine I suspect it would work anyway - more likely it is something about your specific pc.

Ok, I have pure IBM NetVista of 2002 here and now but with added SATA+SSD instead of IDE. WinXP+SP3.
And I have Packard Bell oneTwo L5351. Win7+SP1.
Plus I have Lenovo IdeaPad 330. Win10 of 2021.

What of these above you can recommend to try Phix?

petelomax said...
kinz said...

What is procmon?
What is ollydbg?

Seriously, no Google, no Yandex?
Nevermind, procmon is a low-level monitoring tool. It produces vast quantities of largely irrelevant data, including lots of things that look like errors but it recovered from them (esp include files). However, stopping it asap, and looking at the end of the list just might show up something interesting. You can use right click to filter out irrelevent programs and/or paths, if that helps.
Ollydbg is a debugger. Run it and open the executable with File/Open, then Debug/Play or F9 to carry on. There might be something visible in the callstack, and you can use View/Memory to get an idea of where the failure address is. Don't expect miracles. Try it. Give up. Sleep on it. Repeat.

There is a very strong possibility, in fact probability, that you'll get nowhere with either of those tools.

So, Phix is self hosted, but needs for now some low level debuggers just to run it on my machine (oneTwo L5351) ?

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

14. Re: Phix 0.8.3 uploaded

kinz said...

What of these above you can recommend to try Phix?

Not the Packard Bell oneTwo L5351, someone told me it doesn't work on that.

kinz said...

So, Phix is self hosted, but needs for now some low level debuggers just to run it on my machine (oneTwo L5351) ?

I bought some ready-to-eat custard the other day. When I got home, I was horrified to find out it needed a can opener, a pan, a hob, a bowl, and a spoon.

new topic     » goto parent     » topic index » view message » categorize

15. Re: Phix 0.8.3 uploaded

petelomax said...
kinz said...

What of these above you can recommend to try Phix?

Not the Packard Bell oneTwo L5351, someone told me it doesn't work on that.

kinz said...

So, Phix is self hosted, but needs for now some low level debuggers just to run it on my machine (oneTwo L5351) ?

I bought some ready-to-eat custard the other day. When I got home, I was horrified to find out it needed a can opener, a pan, a hob, a bowl, and a spoon.

Thanks, Pete...
But my antiviruses (Avira+Windows) seem to be very aggressive to
pw.exe, so, on Lenovo IdeaPad with Windows 10 I can not run Phix.

What to do?

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

16. Re: Phix 0.8.3 uploaded

I just installed it and it downloaded updates during the installation and then ran a demo launcher with tons of demos. Very interesting! I will definitely spend more time learning how Phix works.

new topic     » goto parent     » topic index » view message » categorize

17. Re: Phix 0.8.3 uploaded

kinz said...

But my antiviruses (Avira+Windows) seem to be very aggressive to
pw.exe, so, on Lenovo IdeaPad with Windows 10 I can not run Phix.

What to do?

After severe struggle against of all defense on my poor IdeaPad,
I started pdemo.exw under control of pw.exe to see, what a thing Phix is.

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

18. Re: Phix 0.8.3 uploaded

kinz said...

I started pdemo.exw under control of pw.exe to see, what a thing Phix is.

Do you remember about the dangerous feature of my body ... yes, USSR NAVY devs wanted to kill me (as digital tester)...

Here is the very first start of Phix on my machine:
http://pl-euphoria.narod.ru/phix/phix-001.png

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

19. Re: Phix 0.8.3 uploaded

kinz said...

Do you remember about the dangerous feature of my body ... yes, USSR NAVY devs wanted to kill me (as digital tester)...

Not today, you'll have to try harder than that. smile
Next time though, try not to hide the program that's going wrong, i.e. move the ex.err window so I can see the selected line underneath in the screenshot. smile

kinz said...

Here is the very first start of Phix on my machine:
http://pl-euphoria.narod.ru/phix/phix-001.png

Oops, some test code for an experimental version of IupLayoutDialog() I accidentally left in. Either change demo/pGUI/fill.exw line 39:

--Ihandle ih = IupLayoutDialog2(dialog) 
Ihandle ih = IupLayoutDialog(dialog) 
IupShow(ih) 

or better yet just delete that line and the followng IupShow.

Thanks

new topic     » goto parent     » topic index » view message » categorize

20. Re: Phix 0.8.3 uploaded

petelomax said...

Next time though, try not to hide the program that's going wrong, i.e. move the ex.err window so I can see the selected line underneath in the screenshot. smile

My old good IBM NetVista/WinXP works almost great with Phix:
http://pl-euphoria.narod.ru/phix/phix-nv-001.PNG
http://pl-euphoria.narod.ru/phix/ex-001-nv.txt
The ex.err writes here.

kinz said...

Here is the very first start of Phix on my machine:
http://pl-euphoria.narod.ru/phix/phix-001.png

Phix can not write *.ini and ex.err on my Windows 10. (??)

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

21. Re: Phix 0.8.3 uploaded

kinz said...

My old good IBM NetVista/WinXP works almost great with Phix:
http://pl-euphoria.narod.ru/phix/phix-nv-001.PNG
http://pl-euphoria.narod.ru/phix/ex-001-nv.txt
The ex.err writes here.

Windows XP does not support the required elliptic curve cryptography to access https sites.
If you download https://aka.ms/vs/16/release/VC_redist.x86.exe and install that it should be fine.
It is failing trying to do that for you, I had to do it on a different machine and copy it over.

(I can't afford to spend much time worrying about whether Phix plays nice with Windows XP any more.)

kinz said...

Phix can not write *.ini and ex.err on my Windows 10. (??)

Sounds like a permissions error. Either:
a) right-click on the directory[1], select Properties, then the Security tab, then Edit, then Users(you), check "Full control" and hit apply, or
b) move/copy the program(s) to a directory where you already have write permissions.

[1] eg "C:\Program Files\Phix" will bequest it's permissions to all sub-directories.

It is a long-standing issue that Phix installs everything to C:\Program Files[ x86]\Phix, whereas it should install several bits and pieces
to %ALLUSERSPROFILE%, %APPDATA% or somesuch. Windows is supposed to deal with this through "Virtual Registry", only it don't work.

I'll gladly accept improvements to installation (even moreso on Linux), but it's simply not effective for me to try and go that alone.

new topic     » goto parent     » topic index » view message » categorize

22. Re: Phix 0.8.3 uploaded

petelomax said...

I'll gladly accept improvements to installation (even moreso on Linux), but it's simply not effective for me to try and go that alone.

Ok, but I do not see system requirements for Phix...
For example, I run Win7-64 on PB_oneTwo.
And I run Rosa Linux here. Very powerful set.
And it seems to be not enough good set for Phix.

Something is wrong.

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

23. Re: Phix 0.8.3 uploaded

kinz said...
petelomax said...

I'll gladly accept improvements to installation (even moreso on Linux), but it's simply not effective for me to try and go that alone.

Ok, but I do not see system requirements for Phix...
For example, I run Win7-64 on PB_oneTwo.
And I run Rosa Linux here. Very powerful set.
And it seems to be not enough good set for Phix.

Something is wrong.

Well, but what about remote control from your machine
to my oneTwo's desktop just to squash all these collected bugs?

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

24. Re: Phix 0.8.3 uploaded

kinz said...
petelomax said...

I'll gladly accept improvements to installation (even moreso on Linux), but it's simply not effective for me to try and go that alone.

Ok, but I do not see system requirements for Phix...
For example, I run Win7-64 on PB_oneTwo.
And I run Rosa Linux here. Very powerful set.
And it seems to be not enough good set for Phix.

Ok, my PB_oneTwo under Russian Military Rosa Linux control
runs yours buggy Phix well enough to put version 1.0.0 to Phix today
from the best digital tester of USSR NAVY.
http://pl-euphoria.narod.ru/phix/phix-001-rosa.png
http://pl-euphoria.narod.ru/phix/phix-002-rosa.png

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

25. Re: Phix 0.8.3 uploaded

kinz said...

from the best digital tester of USSR NAVY.

http://pl-euphoria.narod.ru/phix/

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

26. Re: Phix 0.8.3 uploaded

petelomax said...

Windows XP does not support the required elliptic curve cryptography to access https sites.
If you download https://aka.ms/vs/16/release/VC_redist.x86.exe and install that it should be fine.
It is failing trying to do that for you, I had to do it on a different machine and copy it over.

Done. Works. Thanks.
http://pl-euphoria.narod.ru/phix/phix-nv-vc-001.PNG
http://pl-euphoria.narod.ru/phix/phix-nv-vc-002.PNG

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

27. Re: Phix 0.8.3 uploaded

petelomax said...
kinz said...

It is Win7max 8gb, 64.

Sorry, I have no way to test that. Mind you, given that XP is fine I suspect it would work anyway - more likely it is something about your specific pc.

It was Avira incompatibility.
After deleting of Avira Phix starts and works.
Avira itself can not allow work of "infected" p.exe/pw.exe.
http://pl-euphoria.narod.ru/phix/without_avira.png

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

28. Re: Phix 0.8.3 uploaded

kinz said...

After deleting of Avira Phix starts and works.

Some bug:
http://pl-euphoria.narod.ru/phix/q_doesnt_work.png

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

29. Re: Phix 0.8.3 uploaded

Very odd, works fine here, though generally the console-based demos, esp interactive ones, are never going to play nice with "p pdemo" and the gui in the way, trying to re-use the same console.
Try running it as "pw pdemo", so each demo that needs one gets it's own brand-new terminal to play with.

PS 4 out of 5 places in the docs said "pw pdemo", I've now fixed the one rogue one in example.htm to match.

new topic     » goto parent     » topic index » view message » categorize

30. Re: Phix 0.8.3 uploaded

kinz said...
kinz said...

After deleting of Avira Phix starts and works.

Some bug:
http://pl-euphoria.narod.ru/phix/q_doesnt_work.png

Sorry, it is not only the Avira.
Phix doesn't work again here.
I have reinstalled my top version of Avira and deleted
the Phix on my Win7 PB for better times.
I will see it on XP and on W10 later on.

Regards


kinz

new topic     » goto parent     » topic index » view message » categorize

31. Re: Phix 0.8.3 uploaded

Compiled some random examples from the folder f:\phix\demo\arwendemo\, at startup, everyone swears:

f:\phix\builtins\VM\pUnassigned.e:259 
fatal exception #80000003 at #00500E86 
... called from f:\phix\builtins\VM\puts1.e:47 
... called from f:\phix\builtins\VM\pFEH.e:16 
... called from f:\phix\builtins\VM\pStack.e:95 
... called from f:\phix\builtins\VM\pcallfunc.e:20 
... called from f:\phix\builtins\VM\pDeleteN.e:240 
... called from f:\phix\builtins\VM\pHeap.e:835 
... called from f:\phix\builtins\VM\pcfunc.e:108 
... called from f:\phix\builtins\dll.e:22 
... called from f:\phix\demo\arwendemo\arwen.ew:5 
... called from f:\phix\demo\arwendemo\demo_menus.exw:5 
In the interpreter, they start and work normally

new topic     » goto parent     » topic index » view message » categorize

32. Re: Phix 0.8.3 uploaded

AlexXX said...

Compiled some random examples from the folder f:\phix\demo\arwendemo\, at startup, everyone swears:
In the interpreter, they start and work normally

Thanks, I've just recently put some init code in that don't belong. In builtins\VM\pDiagN.e line 286, change

--4/2/21: 
--string cdi_filename = "", 
--     cdi_varname = "" 
string cdi_filename, 
       cdi_varname 

and add the following to the start of diag(), line 2340ish:

--20/2/2021 
    cdi_filename = "" 
    cdi_varname = "" 

Then run p -cp and it should be a bit better.
I'm also getting some "bad IdLinks" messages here, which I'll investigate a bit further.

new topic     » goto parent     » topic index » view message » categorize

33. Re: Phix 0.8.3 uploaded

Oh, yes, it worked
procedure diag() in the line 2263

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu