Paul Bone

Results 135 issues of Paul Bone

Plasma currently allows `_` for function parameter names, but this makes less sense with Plasma than something with clauses such as ML or Prolog. We should probably remove it simplifying...

type: enhancement
skill: mercury
component: docs
component: compiler
meta: triaged
status: accepted

`Block::check()` is quadratic. Fir each free cell it checks if that cell is in the free list. This could be made linear using an extra bit in the cell bytemap...

type: bug
skill: C++
meta: triaged
status: accepted
component: gc

These classes point to the same memory, and it can be tricky to have const versions of either/both of them. In particular care needs to be taken around construction. May...

meta: help wanted
skill: C++
meta: triaged
status: accepted
type: maintenance
component: gc

This token is only used by `LOAD_NAMED` and can be removed if we use `PZT_LOAD_64` (or 32) depending on platfrom as we do in the other cases of loading pointer-sized...

skill: C++
meta: no-domain-knowledge
component: runtime
meta: triaged
status: accepted
type: maintenance

in example/fib.p the pretty-printed PZ and the executed PZ (from trace) differ in the operand size of the not instruction.

type: bug
component: pz
component: compiler
component: runtime
meta: triaged
status: accepted

pzrun should check that the layout of .pz files makes more sense than it does. In particular, there is very little checking that the right data types are combined with...

type: bug
skill: C++
component: pz
component: runtime
meta: triaged
status: accepted

Make the pz pretty printer output suitable for input to pzasm. Make the "language" more self-consistent. Document it in docs/pz_machine.txt Concrete things I know of: * Add a module declaration...

type: enhancement
skill: mercury
skill: asciidoc
component: compiler
meta: triaged
status: accepted

Audit the runtime to ensure it's always using the correct format specifiers for inttypes.

skill: C++
meta: no-domain-knowledge
component: runtime
meta: triaged
status: accepted
type: maintenance

The compiler generates references to many things via a module environment struct. Including references to values in the same module and other module. The compiler should try to generate direct...

skill: C++
skill: mercury
component: pz
component: compiler
meta: triaged
status: accepted
type: optimisation

type: enhancement
skill: mercury
component: compiler
meta: triaged
status: accepted