Skip to content

Instantly share code, notes, and snippets.

[<Sealed>]
type LongIdentWithTrivia(lid: LongIdent, dotRanges: range list, ?trivia: IdentTrivia option list) =
let triviaStored =
match trivia with
| None -> ValueNone
| Some l when l |> List.forall Option.isNone -> ValueNone
| Some l -> ValueSome (Array.ofList l)
let getTrivia() =
match triviaStored with
| ValueNone -> lid |> List.map (fun _ -> None)
F# 7
1. For FSharp.Core
- assembly size reduced by 1MB
- resource blob FSharpMetadata containing zipped optdata + sigdata 320KB
- (name of this data)
- F# 7 compiler reads this blob
- extra file FSharp.Core.sigdata in nuget containing unzipped sigdata for consumption by F# 6 compilers

Some notes on debug stuff

Notes for Kathleen and Vlad.

Two techniques to fix things like 11262

1. Hack the generated IL

e.g. we want y in scope when stopped at x + 1:

namespace global
open System
open System.Collections.Generic
/// Naive ArgumentParser - only string arguments right now
///
/// Note expects "dotnet fsi vae.fsx <args>" as invocation
type ArgumentParser() =
let specs = ResizeArray()
import argparse
import torch
import numpy as np
import pprint
import time
import os
import glob
import pprint
import sys
from torchvision import datasets, transforms
@dsyme
dsyme / file1.fs
Last active February 15, 2022 15:22
#!/usr/bin/env -S dotnet fsi
#r "nuget: DiffSharp-cuda, 1.0.6"
#r @"..\bin\Debug\net6.0\fwdsgd.dll"
#load "argparse.fsx"
open System.IO
open DiffSharp
open DiffSharp.Model
open DiffSharp.Util
NonGeneric --> TypeHandle(NonGeneric)
--> MethodTable "NonGeneric" ~~~~> System.Type
---> vtable NonGeneric::VirtualMethod1
---> ...
---> vtable NonGeneric::VirtualMethod2
---> **iimpls** for NonGeneric
---> EEClass "NonGeneric"
type IParams =
abstract F1: int -> unit
abstract F2: int -> unit
//abstract F3: int -> unit
//abstract F4: int -> unit
//abstract F5: int -> unit
//abstract F6: int -> unit
type C(p: IParams, count: int, size: int) =
namespace DesignTime
module ABC =
let checkLocalCache() =
async {
while true do
try
[17/09/2021 15:38:49] [Pid:23356, Tid:1, Apid:1] initAndGenerate: starting
[17/09/2021 15:38:50] [Pid:23356, Tid:1, Apid:1] [Get server]
[17/09/2021 15:38:50] [Pid:23356, Tid:1, Apid:1] [Check last server]
[17/09/2021 15:38:50] [Pid:23356, Tid:1, Apid:1] [Make new server]
[17/09/2021 15:38:50] [Pid:23356, Tid:1, Apid:1] Starting new connection to server from client
[17/09/2021 15:38:50] [Pid:23356, Tid:1, Apid:1] Starting server 'E:\GitHub\dsyme\RProvider\src\RProvider\bin\Debug\net5.0\RProvider.Server.dll' with arguments 'RInteropServer_23356_98672906_74542540 "C:\Users\dsyme\AppData\Local\Temp\tmpA10A.tmp"' (exists=true)
[17/09/2021 15:38:50] [Pid:23356, Tid:1, Apid:1] R_HOME not set
[17/09/2021 15:38:50] [Pid:23356, Tid:1, Apid:1] findRLocation
[17/09/2021 15:38:50] [Pid:23356, Tid:1, Apid:1] getRLocation
[17/09/2021 15:38:50] [Pid:23356, Tid:1, Apid:1] Scanning the registry