Elliott Stoneham

Results 169 comments of Elliott Stoneham

I can try it on my old mac tomorrow @PXshadow. Reading through the code, is it a problem that in `Slice.hx` `SliceData` a number of the functions do not reference...

As for "an exact test case", I'm running the code at the start of this thread.

As requested, terminal transcript from my running the original code on my x86 mac: ``` elliott@Elliotts-MacBook-Pro15-2 issue120 % haxelib remove go2hx Library go2hx removed elliott@Elliotts-MacBook-Pro15-2 issue120 % haxelib git go2hx...

...one reason it is slow may be: https://github.com/go2hx/go2hx/blob/c4efb51560e84f20653e8df3741f5083f4758e99/stdgo/Slice.hx#L130 Every time `Slice.__append__(args:Rest):Slice` is called, all of the slice's data is copied! Go just writes the new contents into the free space...

To quote the Go doc for append: > The append built-in function appends elements to the end of a slice. If it has sufficient capacity, the destination is resliced to...

The speed issue is certainly much improved: µs in Go, ms in (interpreted) Haxe. The only immediate issue remaining is the difference between Go & Haxe bytes.Buffer capacity figures: 8192...

With the C++ target now working, my latest speed test is (some output elided): ``` Go: elapsed: 19.542µs --interp: elapsed: 16.25984ms --hl: /usr/local/lib/haxe/std/haxe/Rest.hx:48: character 2 : Don't know how to...

Latest figures from me: ``` Go: elapsed: 18.209µs --cpp: elapsed: 1.074944ms --interp: elapsed: 14.83904ms --hl: elapsed: 17.761024ms ```

A Go `unsafe pointer` is an intermediate form to allow a chunk of memory created with one data layout to be re-interpreted with another data layout. TardisGo did this by...

My advice is to concentrate on documentation that can be auto-generated, especially graphs (as you suggest). Keeping documentation up-to-date is very difficult long-term, which is why sensible solutions, from both...