1. Phix 1.0.0 uploaded!

Usual place: http://phix.x10.mx/download.php (0.8.3 notes: https://openeuphoria.org/forum/m/135673.wc )

This release is all about pwa/p2js, which transpiles Phix code so it can run in a web browser.

The information posted in last month's announcement and the webinar has not really changed.

Other far less important changes include:

New builtins/bzstream.e for in-memory bzip handling 
New builtins/sets.e for basic set operations: is_member(), add_member(), remove_member(),  
                        union(), intersection(), difference(), is_subset(), is_superset() 
Allow exponential notation in mpfr.e, eg mpz_init("1e200"), also strips ',' and '_'. 
Deprecated mpz_probably_prime_p() and randstate functions. 
Added mpz_prime[_mr](), mpz_nthroot(), mpz_rand(), mpz_pollard_rho(). 
Renamed mpfr_get/set[_default]_prec() as mpfr_get/set[_default]_precision(). 
Renamed mpz_binom() as mpz_bin_uiui(), since latter is the standard gmp name for it. 
Added mpfr_get_fixed(), mpfr_rootn_ui(). 
Added even(), odd(), match_all() builtins. 
There is now an undocumented var_id() routine, but I'm not sure if you can do anything useful with it. 
vslice() now allows column as integer {s,e} for src[s..e], as well as integer for src[column]. 
New K_asmm flag to signal variables actually modified by inline assembly. 
New builtins\pipeio.e and updated demo\capture_console.exw 
Added a hll goto (see http://phix.x10.mx/docs/html/goto.htm) 
kill refcounts in deld() 
allow flatten(x,{}) to coerce a dword-sequence as opposed to string result. 
unique(x,"STABLE") not using tid (bugfix) 
delete_routine(x,0) now properly removes it 
dicts.e/trees shown by5 in ex.err 
Icallback() no longer duplicates entries 
IupHide() rather than IUP_CLOSE if dialog has a parent 
clear RASTERSIZE on IupShow 
make IupMessage wrap optional 
fixed IupTable sort crash on missing elements 
Allow userdata on IupTreeView nodes 
experimental pGUIC.e added (class based like irv's work on GTK, for nicer syntax etc) 
udts in structs required addRoutineId() 
out-of-date test in t42cback.exw removed 

new topic     » topic index » view message » categorize

2. Re: Phix 1.0.0 uploaded!

petelomax said...

Woo hoo! And I was here to witness it!

Good job, Pete!

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

3. Re: Phix 1.0.0 uploaded!

+1

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

4. Re: Phix 1.0.0 uploaded!

+1 Nice!

Do you plan more reflection? Ex.: namespace

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

5. Re: Phix 1.0.0 uploaded!

Congrats, Pete!

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

6. Re: Phix 1.0.0 uploaded!

mitgedanken said...

Do you plan more reflection? Ex.: namespace

Nothing planned. Reflection is quite different in JavaScript (everything stored in the "window" global) to Phix (everything stored in a symbol table),
so we could be quite limited in the things (of a reflective nature) that we can get to work equivalently on both. There already is a [slightly fudged] get_routine_info().

Should you find anything in https://262.ecma-international.org/11.0 that could be used for/as namespaces let me know (good luck with that lol).

The one thing I should focus on is a GUI. I am leaning towards pGUI but not ruling out irv's new GTK, or even a new GUI that mimics the browser box model on the desktop.
There is clearly no shortcut there, and the other bit of the puzzle is probably either mocking or even better actually running a traditional PHP/SQL backend on the desktop.

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

7. Re: Phix 1.0.0 uploaded!

Congratulations, Pete

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

8. Re: Phix 1.0.0 uploaded!

petelomax said...

This release is all about pwa/p2js, which transpiles Phix code so it can run in a web browser.

Could it also be made to run outside a web browser, for example with node.js?

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

9. Re: Phix 1.0.0 uploaded!

GreenEuphorian said...
petelomax said...

This release is all about pwa/p2js, which transpiles Phix code so it can run in a web browser.

Could it also be made to run outside a web browser, for example with node.js?

Maybe, tbh I know little of node.js but I gather it would be a reasonable alternative for a PHP/SQL backend,
which is the one thing on my to-do list with which I will need the most help. It would make sense to add an
asynchronous i/o api to desktop/Phix as a foundation stone, I guess. The bottom line is "not without help".

The future path of pwa/p2js is going to be driven by what people try and use it for, probably combined with
finding simple practical examples of the sort of code it needs to spit out, and/or mimic on desktop/Phix.
In my mind there is no point whatsoever getting pwa/p2js to emit code that runs on (eg) node.js without
also being able to run that same input code natively on desktop/Phix, or at least mock things well.

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

10. Re: Phix 1.0.0 uploaded!

petelomax said...

Maybe, tbh I know little of node.js but I gather it would be a reasonable alternative for a PHP/SQL backend

Absolutely. But even more importantly, it would make Phix usable everywhere and for all purposes, whereas now the practical usability of Phix is very much restricted (Windows, Linux, only certain architectures, etc...). Node.js and similar projects are being developed ubiquitously for all OSes and architectures. Think Android, ARM, etc.

If we could piggyback on node.js or something similar there would be nothing stopping JS Phix!

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

11. Re: Phix 1.0.0 uploaded!

Thanks a million and i love the goto's - my metapi compiler becomes reality. +1

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

12. Re: Phix 1.0.0 uploaded!

Congrats! You have worked hard on this for a lot of years.

I have never used phix.

How compatible/incompatible with euphoria is?

What advantages/disadvantages it has?

Marco Achury

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

13. Re: Phix 1.0.0 uploaded!

achury said...

How compatible/incompatible with euphoria is?

What advantages/disadvantages it has?

See https://en.everybodywiki.com/The_Phix_Programming_Language#Comparison_with_Euphoria

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

Search



Quick Links

User menu

Not signed in.

Misc Menu