"I don't want to die in a language I can't understand."
- Jorge Luis Borges
Latest version: 0.8.3
Release date: 2nd February 2021
Price: Free. No nags and No expiry date.
Source code: Incuded.
Self Hosted: No other tools required to modify/rebuild Phix.
Phix is Pete’s Self Hosted Hybrid Interpreter/Compiler
pshhic was
not the best of acronyms, plus phiX is the name of the first ever
manmade lifeform artifically created from scratch in a laboratory, which seems
rather appropriate for a self-hosted compiler
Aims:
- Create an easy to use programming language which is also easy to modify and maintain.
- Bug location must be made as easy as possible.
If as some studies suggest up to 90% of effort is actually spent fixing bugs, it follows that the toolchain should be strongly focused on the expediency with which bugs can be located and fixed - at least those in otherwise well written code; obviously anything difficult to understand in the first place will more than likely prove at least as tricky the second time round, should it go wrong.
In Phix, all errors, both compile-time and run-time, are human-readable and indicate the precise file and line where they happened, and Edita jumps right there. - Allow the programmer to focus on solving the problem, rather than solving the solution.
- Terse may at first seem nice, but properly readable and easy to understand code is better.
“Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.”
- Antoine de Saint-Exupéry
“Simplicity is the ultimate sophistication.”
- Leonardo da Vinci
(as commonly attributed, eg ,
but see
)
“A language that doesn’t have everything is actually easier to program in than some that do.”
- Dennis M. Ritchie
“Are you quite sure that all those bells and whistles, all those wonderful facilities of your so called
powerful programming languages, belong to the solution set rather than the problem set?”
- Edsger W. Dijkstra
“Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible,
you are, by definition, not smart enough to debug it.”
- Brian W. Kernighan
“The readability of programs is immeasurably more important than their writeability.”
- C. A. R. Hoare
“Any intelligent fool can make things bigger, more complex, and more violent.
It takes a touch of genius - and a lot of courage - to move in the opposite direction.”
- E. F. Schumacher