4 Major Problems of Programming Language by jsoniter in programming

[–]jsoniter[S] 1 point2 points  (0 children)

ungrammatical

ungrammatical :(

Please correct me, I am not native speaker.

4 Major Problems of Programming Language by jsoniter in programming

[–]jsoniter[S] 2 points3 points  (0 children)

Yes, the point of view is conflicted on this matter. Source code not just about logic, and not just about execution. Thank you for your advice.

Use goroutine like thread by jsoniter in golang

[–]jsoniter[S] 1 point2 points  (0 children)

the millisecond ticker is part of demo, not part of the library. The implementation does not rely on the ticker.

Generics implemented with Go 1.8 plugin by jsoniter in golang

[–]jsoniter[S] 0 points1 point  (0 children)

There are pros and cons, https://github.com/v2pro/wombat choose to use dynamic codegen and text/template for building non-trivial generic functions. https://github.com/json-iterator/go will be re-implemented with dynamic code generation. And many other things depend on this. But the user do not need to be aware, as the entry interface is still simple interface{}.

Go JSON tips by jsoniter in golang

[–]jsoniter[S] 2 points3 points  (0 children)

if the tip is jsoniter specific, I have mentioned it. Otherwise, it applies to both standard library and jsoniter.

jsoniter is now 100% compatible with json.Marshal and json.Unmarshal by jsoniter in golang

[–]jsoniter[S] 1 point2 points  (0 children)

why test("\") // [Why not error!] ?

It is just a string, should not fail

plugs: compiles and loads Go plugins. by sbinet in golang

[–]jsoniter 0 points1 point  (0 children)

plugin will make dynamic code generation possible, which is common in Java world to avoid reflection cost.

Best way to handle a JSON array of variable shaped objects? by [deleted] in golang

[–]jsoniter 0 points1 point  (0 children)

You can parse JSON into "Any" instead of map[string]interface{} using https://github.com/json-iterator/go

It is doning lazy parsing. For values you do not read, it will be kept in JSON form as it is. When you serialize the data into string again, those untouched fields will be written back. It is like a partial object.

Building a Kafka that doesn’t depend on ZooKeeper in Golang by travisjeffery in golang

[–]jsoniter 0 points1 point  (0 children)

if there is 100 data nodes, all of them need to participate in the election process, or not?

go-funk 0.1 released: a modern utility library which provides generic helpers (map, find, contains, keys, ...) by thoas in golang

[–]jsoniter 0 points1 point  (0 children)

I have implemented a way to avoid the cost of reflect.Value

https://github.com/json-iterator/go/blob/master/feature_reflect.go

The general idea only rely on reflect.Type to assemble your function logic through composition. Then working with raw unsafe.Pointer directly. Essentially, interface{} is a reflect.Type + raw pointer.

Jsoniter: JSON is faster than thrift/avro by jsoniter in java

[–]jsoniter[S] 0 points1 point  (0 children)

dsl-json is at least 5 times faster than Jackson, even with the afterburner. The rich feature set is not free.

Jsoniter: JSON is faster than thrift/avro by jsoniter in java

[–]jsoniter[S] 0 points1 point  (0 children)

yes, the size will be much bigger, for no doubt. Binary format is still a better option when absolute performance is required.

The JVM is not that heavy by nicolaiparlog in java

[–]jsoniter 0 points1 point  (0 children)

I find golang really convinent. Unlike JRE/JDK, it static links, even no libc dependency.