Alexander
но если я весь результат использую
Anonymous
Anonymous
Y
Спасибки
Anonymous
у меня такое чувство, чти вы ищете что-то вроде NLP, а там питон
Y
Да, это смежная с вычислительной семантикой область
Alexander
а с wai/warp можно ж стримово входящий файл посланный в multipart form-data обрабатывать?
Alexander
(мне почему-то кажется что нельзя, но мало ли)
Alexander
я не хочу руками multipart разбирать
Leonid 🦇
Есть же сноймановский парсер
Leonid 🦇
Он так себе
Leonid 🦇
http://hackage.haskell.org/package/wai-extra-3.0.24.3/docs/Network-Wai-Parse.html
Влод
IC
Влод
+
Влод
были смешные попытки (на лиспе, тип сделать научные работы про то как познание работает у человека и пытаться сделать также у программы и ещё чтоб визуально это напоминало слова в пейпере)
Влод
потом были серьезные формальные грамматики (не имеющие отношения к прикладному nlp нашего времени)
у людей были проблемы и решения для несуществующих задач
теоркат hott там имеет место быть но не языки программирования
Anonymous
у меня сложилось впечатление, что в книжке "Categorial Grammar: Logical Syntax, Semantics, and Processing" сделана попытка извлечения "семантики" из бытовых предложений.
Y
Ну, попытки формализации до появления программирования были в нише математической логики, потом вектор сменился с логического анализа на магистраль анализа обыденного языки в нестрогом виде образца куайна, патнэма, стросона и т.д. я плохо разбираюсь в инновациях в этой области, но исчисление синтаксиса после показа ложности теории Хомского вроде как стало какой-то человекоразмерной целью
Y
Конечно, речь не идёт об утопии полной формализации, сам язык в этой утопии не работает, он стихиен
Влод
не уверен но кажется ваши утверждения ведут беседу в разные стороны
Влод
редко речь заходит про семантику естественной речи
Влод
ну более высокоуровневая и прикладная задача
Влод
возможно менее интересующая людей из мира логики
Alexander
@chshersh у меня вам там подарок будет в PR скоро
Alexander
wtf почему у даблов разный fingerprint!
Dmitrii
Alexander
ничего этот на старые зависит
Alexander
правда я не до конца доделал, новый insert все же тормозной еще
Felixitur
Подскажите, пожалуйста, есть ли транслятор Haskell в C#?
Alexander
маловероятно, что есть неигрушечный транслятор Haskell в C#
Cheese
транслировать ленивый язык в энергичный вообще сложновато
Cheese
пиши на F#, если начальство заставляет иметь дело с дотнетом
Felixitur
Спасибо.
Anonymous
@fakkafushka будет жить. Поприветствуем!
A64m
clr-inline
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE QuasiQuotes #-}
{-# LANGUAGE TemplateHaskell #-}
module Main where
import Clr.Inline
[fsharp|
open System.Windows.Forms
|]
main = do
startClr
let text = "Hello from Haskell"
[fsharp|
let form = new Form(Text=$text:string)
let button = new Button(Text="Click Me!", Dock=DockStyle.Fill)
button.Click.Add(fun _ -> MessageBox.Show($text, "Hey!") |> ignore)
form.Controls.Add(button)
Application.Run(form)
|]
Kirill
а чегож не inline-clr или типа винда, там всё задом наперёд?
A64m
автор, видимо. любит продемонстрировать оригинальность
у него и репа на гитлабе
Anonymous
@Felixitur https://rise4fun.com/dafny есть ещё.
Anonymous
Но оно не серьезное, конечно.
Felixitur
Спасибо.
Ю ли я? 🤔
Тут есть активные кодворщики? Прошу хинт к https://www.codewars.com/kata/5b1bdc2bccef79e948000086 , я застрял на
instance (Factor f, Factor g) => Factor (Sum f g)
с компанией
Alexander
я туда года 2 не заходил
Ю ли я? 🤔
Как понимаю, к этому моменту у нас есть factor :: Count c -> Count (f c) и factor :: Count c -> Count (g c), и нужно получить factor :: Count c -> Count (Sum f g c). Проблема в том, что c в инстансе нигде не фигурирует, и если в лоб записать, оно как минимум требует InstanceSigs
Ю ли я? 🤔
(хм, как инлайновые кодовставки делать?)
Dmitry
Три `
Ю ли я? 🤔
Да, делал три `, но они вот на отдельной строке выходят
Dmitry
Ну у меня
Получается вроде
Ю ли я? 🤔
Хм, кажется, это косяк настольного Телеграма, в мобильном всё нормально в строчку отображается.
Alexander
надоело
Alexander
у меня в списке что порешать пачка заданий висит
Ю ли я? 🤔
Я там случайно нашёл @int_index (и подписался на всякий), но он тоже джва года не заходил
Ю ли я? 🤔
В итоге сделал factor c = coerceC $ liftC2 (+) (factor @f c) (factor @g c), тесты прошло. Нельзя ли теперь без этих расширений?
Cheese
Ю ли я? 🤔
О, спасибо, покурю!
Cheese
но с расширениями-то лучше
Ю ли я? 🤔
Наверное, у меня превратное предубеждение против них :)
кана
кана
они же специально для этого
Ю ли я? 🤔
(хотя и понимаю, что нынче без них никуда)
кана
чтобы не делать костыли вроде проксей
A64m
не нынче, всегда
кана
в задании открытым текстом
Ю ли я? 🤔
Это да, но ещё приходится InstanceSigs, про которые в задании нетъ
Dmitrii
Это да, но ещё приходится InstanceSigs, про которые в задании нетъ
InstanceSigs — очень хорошее расширение. Я всем рекомендую, и сам в своих пакетах использую. Очень помогает в тайплкассах видеть сигнатуры инстансов. Когда преподавал Haskell, то в обязательно порядке заставлял это расширение использование. Очень помогает, когда в качестве ДЗ надо писать инстансы Foldable, Traversable, Monad и так далее
Vladislav
Мне больше нравится отдельно мономорфную функцию определитьё
Ю ли я? 🤔
{-# LANGUAGE ScopedTypeVariables #-}
sumFactorImpl :: (forall f g . Factor f, Factor g) => Count c -> Count (Sum f g c)
sumFactorImpl c = coerceC $ liftC2 (+) (factor @f c) (factor @g c)
error: Not in scope: type variable ‘f’
error: Not in scope: type variable ‘g’
ЧЯДНТ?
Vladislav
То есть не
instance Functor [] where
fmap :: (a -> b) -> [a] -> [b]
fmap _ [] = []
fmap f (x:xs) = f x : fmap f xs
а просто
instance Functor [] where
fmap = map
кана
кана
а то у тебя какие-то универсальые констрейты
кана
типа только если для любого f есть инстанс Factor, то можно вызвать функцию
Vladislav
QuantifiedConstraints
Vladislav
Только все равно скобок не хватает
Ю ли я? 🤔
А explicit forall для оскопления типопеременных всегда надо писать?
кана
instance Countable Void where count = Count 0
instance Countable () where count = Count 1
instance Countable Bool where count = Count 2
instance Countable Nat where count = Count undefined
а какой каунт указывать в Nat нужно-то?
кана
вроде недавно видел какой-то пропосал, чтобы не обязательно было
Ю ли я? 🤔
infinity = S infinity