Thanks for the responses.
I took a look at the generated code and go-bindata does in fact use the
form "var _data = []byte(`my giant string`)".
But there's something strange happening: I can't reproduce the problem
on my Macbook Pro. It compiles just fine here.
On Mon, Jan 9, 2017, at 12:50 AM, Pierre Durand wrote:
> This option ?
> https://github.com/jteeuwen/go-bindata#lower-memory-footprint
>
> Le dimanche 8 janvier 2017 21:46:15 UTC+1, Dave Cheney a écrit :
>> This is a somewhat known issue. Each token in a parsered .go file is
>> represented by a Node structure inside the program. The Node
>> structure is large, especially on 64 bit systems.
>> Normally this is not a problem, but in th e case where code has large
>> tables of data memory usage when compiling can be unexpectedly high.
>> This problem is being worked on, but not solution exists in a
>> shipping version of Go yet.
>> The mitigation to this problem is to reduce the number of parsed
>> tokens, so, rather than
>> var data = []byte{ 65, 66, 67, 68, 69, 70}
>> Do
>> const data = "abcdef"
>> The latter produces O(1) tokens per declaration vs O(N) tokens for
>> the former.
>> If the data cannot be represented as text, compressing and base64
>> encoding can help.
>> I'm not sure what strategy go-bindata uses, but you can check this
>> yourself looking at its generated output.
>> Dave
>>
>>
>>
>>
>>
>>
>>
>>
>>
>
> --
> You received this message because you are subscribed to the Google
> Groups "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to golang-nuts+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.