View EnumerableWrapper.g.csx
#r "System.Net.Http"
#r "System.Threading.Tasks"
#r "packages\Microsoft.CodeAnalysis.CSharp.2.3.2\lib\netstandard1.3\Microsoft.CodeAnalysis.CSharp.dll"
using System.Net.Http;
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.CSharp;
using Microsoft.CodeAnalysis.CSharp.Syntax;
var source = await new HttpClient().GetStringAsync("https://gist.githubusercontent.com/atifaziz/779846996638e50cbf11554c75739178/raw/8e0ef8f52c1beadd5f6a6cbb464737e2bce0f9c9/Enumerable.cs");
View Enumerable.cs
namespace System.Linq
{
//
// Summary:
// Provides a set of static (Shared in Visual Basic) methods for querying objects
// that implement System.Collections.Generic.IEnumerable`1.
public static class Enumerable
{
//
// Summary:
View ValueTupleEqualityComparer.g.cs
#region The MIT License (MIT)
//
// Copyright (c) 2017 Atif Aziz. All rights reserved.
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of
// this software and associated documentation files (the "Software"), to deal in
// the Software without restriction, including without limitation the rights to
// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
// the Software, and to permit persons to whom the Software is furnished to do so,
// subject to the following conditions:
View git-alias.txt
git config alias.ls "log --decorate --pretty=format:%Cgreen%h%Cred%d%Creset\ %s\ [%cn]"
git config alias.ll "log --decorate --stat"
git config alias.f "!git ls-files | grep -i"
git config alias.last "log -1"
View dotnet-install-v1.0.0-preview2.0.1.ps1
curl https://raw.githubusercontent.com/dotnet/cli/v1.0.0-preview2.0.1/scripts/obtain/dotnet-install.ps1 -OutFile dotnet-install.ps1
.\dotnet-install.ps1 -InstallDir dotnet -Verbose -Version 1.0.0-preview2-003131
View TupleVsValueTupleBenchmarks.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Runtime.CompilerServices;
using BenchmarkDotNet.Attributes;
using BenchmarkDotNet.Running;
public class TupleVsValueTupleBenchmarks
View mockaroo.csv
id first_name last_name email gender ip_address
1 Daniel Kelley dkelley0@instagram.com Male 148.111.121.121
2 Ann Perez aperez1@nih.gov Female 21.193.101.17
3 Jesse Cole jcole2@issuu.com Male 164.43.98.144
4 Charles Patterson cpatterson3@princeton.edu Male 211.15.88.119
5 Walter Rogers wrogers4@wikimedia.org Male 41.92.242.12
6 Albert Taylor ataylor5@ucoz.ru Male 117.104.110.112
7 Harold Alvarez halvarez6@constantcontact.com Male 52.183.25.59
8 Jessica Griffin jgriffin7@mozilla.com Female 36.40.157.18
9 Gregory Watkins gwatkins8@opensource.org Male 55.42.33.241
View Unprotect-ProtectedData.ps1
Add-Type -AssemblyName System.Security;
[Text.Encoding]::ASCII.GetString([Security.Cryptography.ProtectedData]::Unprotect([Convert]::FromBase64String((type -raw (Join-Path $env:USERPROFILE foobar))), $null, 'CurrentUser'))
View Timestamped.cs
#region The MIT License (MIT)
//
// Copyright (C) 2017 Atif Aziz. All rights reserved.
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of
// this software and associated documentation files (the "Software"), to deal in
// the Software without restriction, including without limitation the rights to
// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
// the Software, and to permit persons to whom the Software is furnished to do so,
// subject to the following conditions:
View anonymous-iterators-in-csharp-7-almost.md

Anonymous Iterators in C# 7, Almost

If you squint hard enough, you can almost believe that C# 7 now has [anonymous iterators][why-no-anonymous-iterators] that you can use smack in the middle of your LINQ comprehension to introduce some ah-hoc operator:

from seq in new[] {
    new Func<int, int, int, IEnumerable<int>>((start, stop, step) => { return Seq(); IEnumerable<int> Seq() {
        for (var i = start; i < stop; i += step)