Phix is an open source, self-hosted, interpreted or compiled programming language with a strong emphasis on simplicity and plain human-readable error messages. No other compilers or similar tools need to be installed. Currently 30MB, with 500 demos.
Version: 0.8.2Phix is an open source, self-hosted, interpreted or compiled programming language with a strong emphasis on simplicity and plain human-readable error messages.
Operating System: Windows
No other compilers or similar tools need to be installed. Currently 30MB, with 500 demos. Implements automatic garbage collection, even for manually allocated raw memory.
Parameters are passed by reference with copy-on-write semantics. That realises the performance benefits of pass-by-reference but with the behaviour of pass-by-value.
It has just five builtin data types, and includes a bundled GUI (based on IUP) as well as components such as ipc, json, curl, SQlite, zip, gmp, regular expressions, sockets, and unit testing.
Has optional structs and classes for object orientated programming, while also supporting traditional imperative programming.
Programs can be interpreted or compiled. Interpretation is fast as it builds the same machine code as compilation, just executes it directly in memory.
Incorporates both a source-level debugger with single-stepping and the ability to enable / disable on selected blocks / files, and an execution profiler.
Strings are fully mutable with variable length slice substitution. Sequences can grow and shrink at will with no manual housekeeping.
Explicitly tagged ends, such as "if ... then ... end if", while more verbose than braces, catch more errors and avoid problems such as the dangling else.
Compiler and run-time errors are made as human-readable as possible, and always include the offending source file name and line number.
Phix uses 1-based indexes to provide consistent and logical subscripting, along with negative subscripts that work from right to left.
Phix does not support overloading, lambda expressions, closures, currying, first class environments, inverted syntax, and suchlike.
Despite, or perhaps because of that, Phix has some 1, 277 completed rosettacode tasks, second only to Go.
Available for Windows and Linux, in both 32 and 64 bit versions.
Version 0.8.2: unit testing