You must be logged in to reply.

Page 1 of 4 out of 36 messages.

I LOVE TinyCLR

7 likes
Posted 2yr ago
by Gus_ghielectroncs | Employee
Posted 2yr ago
by Gus_ghielectroncs | Employee
I just had to say that! I really LOVE it ... the guys won't let me say more!!
2 likes
Reply #1 — Posted 2yr ago
by Terrence | Hero | 12,056 exp
Reply #1 — Posted 2yr ago
by Terrence | Hero | 12,056 exp
Gus says:
the guys won't let me say more!!

Well you are the BOSS, so do tell more! Or t ell us when you will spill the beans.
1 like
Reply #2 — Posted 2yr ago
by ianlee74 | Superhuman | 127,688 exp
Reply #2 — Posted 2yr ago
by ianlee74 | Superhuman | 127,688 exp
Terrence says:
Well you are the BOSS, so do tell more! Or t ell us when you will spill the beans.

Agreed! You really haven't given us anything to get excited about yet. Don't delay any further!!!
1 like
Reply #3 — Posted 2yr ago
by eddie_garmon | Senior | 2,070 exp
Reply #3 — Posted 2yr ago
by eddie_garmon | Senior | 2,070 exp
I love that I am realigning all my code to get one code base to produce full framework apps, RPi apps, or G120 apps. I just wish I could use generics in my driver implementations, but one can suffice for now...
2 likes
Reply #4 — Posted 2yr ago (modified)
by mcalsyn | Legend | 48,189 exp
Reply #4 — Posted 2yr ago (modified)
by mcalsyn | Legend | 48,189 exp
I love generics - they can enable faster development, and clearer, reusable and maintainable code. But generics are syntactic sugar that have a non-trivial cost to the size of the firmware (more opcodes, more complex opcodes, bigger and more complex type and introspection firmware). Generics can also have a negative impact on heap size, heap fragmentation, and program size, depending on how you use them.

So, as much as I would love to have generics, they pay off at compose-time by shifting some costs to compile-time and run-time. So, you benefit once with quicker/easier coding, but then pay the cost every time you run.

NETMF has always been about trading memory and cycles for easier programming. Your code runs perhaps 100x slower, and with a 2x or larger total footprint in exchange for a quicker development cycle. You can pay that off by buying larger chips for the task than you might have for an equivalent native-code implementation (again, benefit once, pay for every copy). Even given NETMF's role as a development lubricant, the addition of generics to M4-class chip sets seems to me to be on the wrong side of the diminishing returns curve.

[fwiw, in my opinion, async/await is also in this class - it's just compiler tricks to do stuff you can already do]
1 like
Reply #5 — Posted 2yr ago
by eddie_garmon | Senior | 2,070 exp
Reply #5 — Posted 2yr ago
by eddie_garmon | Senior | 2,070 exp
@mcalsyn - I agree completely with the async/await compiler generated state machine for trivial stuff. But the TPL API on the other hand is still valuable in the micro space.
Reply #6 — Posted 2yr ago
by mcalsyn | Legend | 48,189 exp
Reply #6 — Posted 2yr ago
by mcalsyn | Legend | 48,189 exp
@eddie_garmon - Agreed. I am also prepared to be pleasantly surprised if someone produces a suitably slim generics implementation so that the benefit-in-coding exceed the cost-at-runtime.
Reply #7 — Posted 2yr ago
by mtylerjr | King | 24,672 exp
Reply #7 — Posted 2yr ago
by mtylerjr | King | 24,672 exp
Maybe there will be TinyPLINQ too?

(Because it is fun to say TinyPLINQ)
Reply #8 — Posted 2yr ago
by godefroi | Legend | 43,071 exp
Reply #8 — Posted 2yr ago
by godefroi | Legend | 43,071 exp
mcalsyn says:

But generics are syntactic sugar that have a non-trivial cost to the size of the firmware (more opcodes, more complex opcodes, bigger and more complex type and introspection firmware). Generics can also have a negative impact on heap size, heap fragmentation, and program size, depending on how you use them.

Generics have all those negative runtime impacts specifically because they aren't simply syntactic sugar. Java's generics are syntactic sugar, simple compile-time type erasure, but .NET's generics definitely aren't.
Reply #9 — Posted 2yr ago
by mcalsyn | Legend | 48,189 exp
Reply #9 — Posted 2yr ago
by mcalsyn | Legend | 48,189 exp
@godefroi - True, but I have not heard when the G30 will be running Java.

[Edit: In other words, you have made a completely true statement, but one that is irrelevant to the discussion about the content of TinyCLR]

Page 1 of 4 out of 36 messages.

You must be logged in to reply.