Size: a a a

2021 March 29

I

Igor in F# Chat
а почему - думаю теперь понятно
источник

g

gsomix in F# Chat
@vl_za Компилятор собрался одной командой из терминала. Отличная работа. :)
источник

g

gsomix in F# Chat
Я несколько лет назад пробовал, не сразу получалось собрать.
источник

VZ

Vlad Zaa in F# Chat
gsomix
@vl_za Компилятор собрался одной командой из терминала. Отличная работа. :)
Ага, ща гораздо проще, хотелось бы конечно чтобы просто мсбилдом билдилось, но это сложно будет из-за особенностей системы сборки и интеграции дотнета (arcade).
источник

AH

Ayrat Hudaygulov in F# Chat
(fun () -> ())
let test<'a> (xs: 'a seq) =
   let e = xs.GetEnumerator()
   seq {
       while e.MoveNext() do
           yield seq { yield e.Current }
   }


может кто пояснить почему результат этого [|Error: Enumeration already finished.;....
я хз что ты делаешь, но
let test<'a> (xs: 'a seq) =
   seq {
       use enum = xs.GetEnumerator()
       while enum.MoveNext() do
           yield seq { yield enum.Current }
   }
источник

I

Igor in F# Chat
Ayrat Hudaygulov
я хз что ты делаешь, но
let test<'a> (xs: 'a seq) =
   seq {
       use enum = xs.GetEnumerator()
       while enum.MoveNext() do
           yield seq { yield enum.Current }
   }
Это тоже не будет работать
источник

AH

Ayrat Hudaygulov in F# Chat
Igor
Это тоже не будет работать
юзинг в seq? будет
источник

I

Igor in F# Chat
потому что enum.Current сдох
источник

AH

Ayrat Hudaygulov in F# Chat
а.
источник

AH

Ayrat Hudaygulov in F# Chat
да, там надо enum.Current сохранять в локал
источник

AH

Ayrat Hudaygulov in F# Chat
а ты харош
источник

I

Igor in F# Chat
а я запустил, увидел ошибку и сразу все понял))
источник

((

(fun () -> ()) in F# Chat
Ayrat Hudaygulov
я хз что ты делаешь, но
let test<'a> (xs: 'a seq) =
   seq {
       use enum = xs.GetEnumerator()
       while enum.MoveNext() do
           yield seq { yield enum.Current }
   }
let batchSplit<'a> n (xs: 'a seq) =
   seq {
       use enum = xs.GetEnumerator()
       let mutable i = 0;
       while enum.MoveNext() do
           yield seq {
               yield enum.Current
               i <- 0
               while i < (n - 1) && enum.MoveNext() do
                   i <- i + 1
                   yield enum.Current
           }
   }
источник

((

(fun () -> ()) in F# Chat
вот что пытаюсь
источник

((

(fun () -> ()) in F# Chat
это работает если не делать Seq.toArray
источник

((

(fun () -> ()) in F# Chat
внутри умирает Enumerator
источник

AH

Ayrat Hudaygulov in F# Chat
это логично.
источник

I

IdiocyAcceptance in F# Chat
(fun () -> ())
это работает если не делать Seq.toArray
А что ты ожидаешь после Seq.toArray?
источник

((

(fun () -> ()) in F# Chat
но если работать как с ленивыми штуками, а потом сразу всё вытащить, то норм
источник

((

(fun () -> ()) in F# Chat
IdiocyAcceptance
А что ты ожидаешь после Seq.toArray?
_ seq array
источник