The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,365 other followers

Archive for April 4th, 2018

C# 8.0 features – an exiting list of new possibilities on the horizon

Posted by jpluimers on 2018/04/04

Shamelessly adapted from [WayBack] C# 8.0 features Extension everything — a new syntax for extension methods that will also allow extension “other things,” like the much-anticipated exte… – Lars Fosdal – Google+, including the original posts where the topics were covered:

C# 8.0 features

Post 1

[WayBack] C# 8.0 Features: A Glimpse of the Future – NDepend: C# 8.0 is on the horizon and will be here before you know it, bringing with it some interesting functionality. Let’s take a peek into the future.

Extension everything — a new syntax for extension methods that will also allow extension “other things,” like the much-anticipated extension properties.

Default implementations on interfaces — this allows you to implement methods on interfaces, giving them a default implementation. That will enable you to add new methods to interfaces without breaking its clients.

Nullable reference types — probably one of the most anticipated features ever. It’s a reinterpretation (a “retcon” for you comic book geeks out there) of all the reference types as nullable and the introduction of a new syntax to denote nullable types, accompanied by several types of static checks, to prevent several classes of errors regarding these types. Say farewell to the null reference exception!

Post 2

[WayBack] C# 8.0 Features: Another Glimpse of the Future – NDepend This post covers two probable C# 8.0 features: null coalescing assignment and records. It explains what they are and reports on their current statuses, as well.

Null coalescing assignment — a very simple feature to shorten the check for null before assigning to a variable.

Records — this one is pretty interesting. It’s basically a very short way for you to declare classes that are only data holders. The compiler gives you Equals and GetHashCode implementations, a constructor, properties, and immutability for free, allowing you to do something more interesting with your life than writing loads of boilerplate code.

Post 3

[WayBack] C# 8.0 Features: A Final Glimpse Of The Future – NDepend: Here’s our final post in our C# 8.0 series, where we glimpse into the future. Today we’ll cover another two possible features: target-typed new expressions and covariant return types.

Target-typed “new” expressions — a way for you to omit the type from a constructor call, making the code simpler and less redundant.

Covariant return types — a much-anticipated feature that allows an overriding method to return a more derived type than the original type from the base class.

I really hope they publish the full specs soon, but given that the C# 7 specs yet have to (see [WayBack] C Sharp (programming language) – Wikipedia: Versions), I do not hold my breath, even though it had lots of interesting new stuff too:

–jeroen

Posted in .NET, C#, C# 7, C# 8, Development, Software Development | Leave a Comment »

Efficient and easy-to-use JSON and BSON library – grijjy blog

Posted by jpluimers on 2018/04/04

Cool library for Delphi: [WayBackEfficient and easy-to-use JSON and BSON library – grijjy blog

On my list of stuff to use when I’m in need for JSON or BSON.

–jeroen

via: [WayBack] Looking for an efficient JSON/BSON library that supports a DOM, reader/writer interface and automatic serialization? Maybe this one has what you need… – Erik van Bilsen – Google+

Read the rest of this entry »

Posted in Delphi, Development, Software Development | Leave a Comment »

From the #AllesIstKaput department: DNS 1.1.1.1 is unusable for many; 9.9.9.9 has government affiliation

Posted by jpluimers on 2018/04/04

Abstract from this morning’s Twitter feed:

  • 1.1.1.1 DNS is broken in many areas (because of for instance AT&T, Vodafone, Cisco screwing up and 1.1.1.1 historically being marked for research purposes)
  • 9.9.9.9 DNS has government affiliation

So what’s left?

  • Cloudflare: 1.0.0.1 alternative to 1.1.1.1
  • Google: 8.8.8.8 with secondary at 8.8.4.4

There are a more interesting IPv4 addresses untaken for DNS, but I’m not sure they are likable enough:

And of course there is the reserved 0.0.0.0 (;

Or you could go the 10.10.10.10 way with DNSSEC (and some public ones mentioned in [WayBack] DNS Server mit Persönlichkeitschutz / Blog / Privat – Lutz Donnerhacke):

Zunächst gibt es eine massive Beschränkung von leicht merkbaren IP-Adressen. Der IPv4 Adressraum läßt nur 220 Adressen der Form x.x.x.x zu.

Via:

So maybe CloudFlare was an April 1st joke after all: [WayBack] Announcing 1.1.1.1: the fastest, privacy-first consumer DNS service / [WayBack] 1.1.1.1 — the Internet’s Fastest, Privacy-First DNS Resolver

References:

–jeroen

Via: [WayBack] From the #AllesIstKaput department: 1.1.1. trouble . – Jeroen Wiert Pluimers – Google+

Posted in DNS, LifeHacker, Power User | Leave a Comment »

Functional programming in C# – CodeProject

Posted by jpluimers on 2018/04/04

Interesting stuff:

This article discusses functional programming in C# through algebra, numbers, euclidean plane and fractals.

[WayBackFunctional programming in C# – CodeProject

Not the least because of images like below.

–jeroen

.

Posted in Development, Functional Programming, Software Development | Leave a Comment »

 
%d bloggers like this: