タグ

Haskellに関するjsstudyのブックマーク (31)

  • Pandoc User’s Guide 日本語版 — 日本Pandocユーザ会

    原著バージョン: 2.18 更新日: 2022/04/29 翻訳者(アルファベット順): becolomochi makotosan niszet Takada Atsushi Tomoki Ishibashi Yuki Fujiwara 概要¶ pandoc [options] [input-file]… 説明¶ Pandocは、あるマークアップ形式から他の形式へ変換する Haskell ライブラリと、そのライブラリを用いたコマンドラインツールです。 Pandoc は、 MarkdownHTML 、LaTeX 、 Word docx など、これに限定されない多数のマークアップとワープロ形式の間で変換することができます。入力および出力形式の完全なリストについては、下記 (options below) の --from と --to を参照してください。 Pandoc は PDF 出力

    jsstudy
    jsstudy 2020/05/17
    Pandocは Haskell で書かれたライブラリおよびコマンドラインツールであり、 あるマークアップ形式で書かれた文書を別の形式へ変換するものです。
  • それでもRuby、Python、JavaScript(あるいはJava)を使う方々へ.md · GitHub

    それでもRubyPythonJavaScript(あるいはJava)を使う方々へ.md 前置き この記事は静的型付け言語が理解されないことに業を煮やし……いや、ブチギレてしたためたものです。そのため多少過激な表現を伴います 性質上どうしても特定の人々に攻撃的な内容になります リーナスの下品な発言の引用は非現実的です。わたしが5人くらいいれば現実的なのですが…… Python機械学習分野は例外です。ですがここもいずれ静的型付け言語に取って代わられるべきであると考えています(そもそもFFIが得意と言うだけでPython使われてるだけだし) 「型」の概念が石器時代で止まっている方へ まずはこちらをお読みください。 私と型システムとポエム - The curse of λ https://myuon.github.io/posts/type-system-poem/ 特に「よくある誤解」のこ

    それでもRuby、Python、JavaScript(あるいはJava)を使う方々へ.md · GitHub
    jsstudy
    jsstudy 2020/04/17
    型による制約 → 設計上の規約になる。動的型付け言語のメリットは、素早いプロトタイプ作成が可能なこと(適材適所)。密結合の回避なら、型付け云々以前に、命令型言語ではなく宣言型言語を使った方が良い。
  • タイル型ウィンドウマネージャXmonadを使う(基礎編) | クロの思考ノート

    こんにちは。今回のテーマは「タイル型ウィンドウマネージャXmonadを使う(基礎編)」です。タイル型ウィンドウマネージャとしてはAwesomeを紹介していましたが、同様なタイル型ウィンドウマネージャとしてXmonadも気に入って使っているので紹介したいと思います。ネット上に多くの設定例や情報があるのですが、今回は自分の備忘録も兼ねてまとめておきたいと思います。今回は基的な使い方を扱います。詳細な設定とカスタマイズについてはタイル型ウィンドウマネージャXmonadを使う(カスタム編)をご覧ください。 [adsense02] 【目次】 Xmonadとは? Xmonadのインストール 設定とコンパイル 起動 再起動 Xmonadの終了 Xmonadの基的な使い方 xmonad起動時時に他のプログラムを実行する 日本語入力環境について xmobarを使おう Xmonadとは? XmonadはH

    タイル型ウィンドウマネージャXmonadを使う(基礎編) | クロの思考ノート
    jsstudy
    jsstudy 2020/04/17
    XmonadはHaskellで書かれてたタイル型ウィンドウマネージャであり、高いカスタマイズ性からエンジニアの間で人気があります。
  • ブログ始めました

    色々あって,技術的なことを書くブログを始めようと思いました (まる) . 今までは, Advent Calendar の時期だけ Qiita に記事を書いてたりしたんですが, ちゃんとしてないやつも書いていこうかなってことで. ちゃんとした系の記事は,出来るだけ外部に出していこうと思いますが, 調査不足だったり,よく分からない系とか徒然なるままな感じのことだったりとか,あと主に自分のためにしたこととかを書いていこっかなって感じです. で,早速ですが一応ブログ立てたんで,立てる際した事とかを書いていく. サイトジェネレータの選定基準 まず,ブログに使うサイトジェネレータどうしよっかなあと悩んでいた.サイトジェネレータ一覧人気順は, https://www.staticgen.com/ から見れるっぽい.だいたい人気の上位陣は, Jekyll Next Hugo っぽい. Hugo は使ったこ

    ブログ始めました
    jsstudy
    jsstudy 2020/04/07
    色々探してた結果, Python 製の Pelican というジェネレータがあるらしく,標準で reStructuredText に対応してたしハイライトは Pygments を使って何とかできそうだったし,結構 Python を使うと色々ライブラリとの相性が良さそう
  • Pandoc - Wikipedia

    Pandocとは、 文書作成ツール (特に研究者による)[2][3][4]や出版作業の基礎的なツール[5][6][7][8][9]として用いられるフリーかつオープンソースのドキュメント・コンバータ(英語版)である。 カリフォルニア大学バークレー校の哲学の教授であるジョン・マクファーレイン(英語版)(英: John MacFarlane)により開発された[10]。 サポートされているフォーマット[編集] 入力フォーマット[編集] Pandoc が最も徹底的にサポートしているファイルフォーマットは拡張されたMarkdownであるが、多くの他のフォーマットも読むことができる。 軽量マークアップ言語 HTML ReStructuredText LaTeX OPML Org-mode DocBook Office Open XML(Microsoft Word .docxファイル) Djot[11]

    jsstudy
    jsstudy 2020/03/20
    Pandoc が最も徹底的にサポートしているファイルフォーマットは拡張されたMarkdownであるが、多くの他のフォーマットも読むことができる。
  • 44種類のフォーマットに対応したPandocでMarkdownをHTML形式に変換する | DevelopersIO

    今回紹介するMarkdownHTMLは当然として、reStructuredText、Textile、LaTeX、何故かCSV,EPUB、docx(Word)や、pptx(PowerPoint)、Jupyter notebook、各種Wiki形式、PDFに対応しています。 魅力②「メタデータや独自フォーマットへの豊富な対応」 Pandocは、Markdownのシンタックス拡張や、ドキュメントメタデータ、テーブル、脚注、箇条書き、上付き文字、下付き文字、順序付きリストに対応しています。文書変換時に、このあたりのフォーマット情報がきちんと変換されるのは心強い。 魅力③「定期的なアップデート」 Pandoc - Releasesを見るとわかりますが、ほぼ3ヶ月に一度ほど定期的に更新されています。最新のリリースは2020年2月15日と非常にフレッシュ! 自分実はPandoc自体は3年ぐらい前からそ

    44種類のフォーマットに対応したPandocでMarkdownをHTML形式に変換する | DevelopersIO
    jsstudy
    jsstudy 2020/03/20
    "PandocはHaskell製のツールで、通常の利用には各クライアントへのインストールが必要なのですが、公式でDockerイメージが提供されています。"
  • Haskell書いてるときになんとなく気をつけていること - LugendrePublic

    信頼性はない 都市伝説かもしれん 大体枕詞に特別な理由がなければがつく 思いついたら徐々に更新する それは違うよってことがあったら @Lugendre まで ghc 8.6.5の話(8.8.1は仕事で使ってなくてな......) コンパイル通るかの確認だけなら最適化オプションO0でコンパイルする stackでいうとstack build --fast 動かすときはO2ビルドしたほうがいいが,インライン展開に5億年消費する なんならこのくらいは静的解析に任せてもいいが,でかいプロジェクトだと一定時間動いてハングアップするのしか世の中にないのでオワリ VSCode のせい説もある ghcideに期待 haskell-language-serverがすべてを解決した CIするときは必ずキャッシュする 毎回一から依存関係やGHCのビルドが走って余裕で1時間超えるようになるので データ構造のフィール

    Haskell書いてるときになんとなく気をつけていること - LugendrePublic
    jsstudy
    jsstudy 2020/01/19
    Haskellはコンパイルに時間がかかるのでホットスワップも必要になるクリティカルなシステムには不向き?(Erlang/Elixirでカバー) "大規模なプロジェクトを作る時うまくリビルドが走らないように設計に配慮する必要がある"
  • Lillian on Twitter: "Haskellで円周率1億桁を計算する @tanakh さんの記事を読みました。 https://t.co/FmVHMlgBCG シンプルなコードですが、4年前に購入した私の家のパソコン(Core i7-4790)で実行してみて… https://t.co/Es87qE8SQl"

    Haskellで円周率1億桁を計算する @tanakh さんの記事を読みました。 https://t.co/FmVHMlgBCG シンプルなコードですが、4年前に購入した私の家のパソコン(Core i7-4790)で実行してみて… https://t.co/Es87qE8SQl

    Lillian on Twitter: "Haskellで円周率1億桁を計算する @tanakh さんの記事を読みました。 https://t.co/FmVHMlgBCG シンプルなコードですが、4年前に購入した私の家のパソコン(Core i7-4790)で実行してみて… https://t.co/Es87qE8SQl"
  • Lillian on Twitter: "関数型プログラミングに興味があって、Haskellを書いて実行できる環境を整えました😊 入門用の本をなにか買ってみます! https://t.co/2he8h4D5FH"

  • Elmをプロダクトで一年書き続けた感想 - Runner in the High

    この記事はElm Advent Calendar 2019最終日の記事です。 去年末あたりから現職のチームでElmを書き始めたので、大体1年程度はプロダクションでElmのコードを書き続けたことになる。学生時代はRubyJavaScriptばっかりだったので、関数型プログラミングとかそういうバックグラウンドは一切なかった。その観点から、改めて率直な感想を申し上げておく。 なお、弊社フロントエンドチームとElmに関するはなしは、私の書いたFringe81アドベントカレンダーの記事を参照のこと。 fringeneer.hatenablog.com Elmには中毒性がある Elmを触ったことのない方からすると「?」になるかもしれない(というか、昔の自分がそうだった)が、率直に言ってElmには中毒性がある。一度Elmを知ると、Elm以外の言語を触るたびに「これ、Elmだったら〇〇なのにな〜」と思う

    Elmをプロダクトで一年書き続けた感想 - Runner in the High
  • TypeSafe OSの試み

    Meguro.rb#3で「Ruby入門書を書いてて得られた知見5選+3α」と題してLTした資料。ちょっと公開用に微調整済。 https://megurorb.connpass.com/event/57119/

    TypeSafe OSの試み
  • 関数型プログラミングとは? - ttmsk's note to self

    自分の中で、「カリー化ってどんなメリットがあるの?」や「モナドってどのようにつかうの?」と、しっかりと関数型プログラミングを理解できていない節があったので、自分の理解のために記録したものです。 間違っている点や理解が不足している点があればご指摘をいただけると幸いですm(_ _)m そもそも関数型プログラミングとは? ざっくりと言えば、 「プログラムの構成に、副作用のない関数を利用し、組み立てていくプログラミングのスタイル」 のことである。 暫し、オブジェクト指向のプログラミングのスタイルと比較されることがあるが、オブジェクト指向は、データ(状態)と操作を格納したコンテナを基要素とすることで様々なメリットを享受することができるプログラミングのスタイルのこと。 オブジェクト指向と関数型言語のプログラミングのスタイルの比較は、他で書いてありそうなので割愛。 関数型プログラミングの条件 関数を言

    関数型プログラミングとは? - ttmsk's note to self
    jsstudy
    jsstudy 2019/09/28
    モナド 高階関数を利用したデザインパターンの一つで、値にコンテキストを付与し、コンテキストを付与したまま処理を合成することで実現。
  • https://www.tryhaskell.org/

  • 宣言的UIはReact Hooksで完成に至り、現代的設計論が必須の時代になる - Qiita

    この記事は、ある程度以上の規模のGUI開発において、React Hooks以後の宣言的UIにより、大規模開発に用いられる設計論に完全に対応できるようになり「ビジネスロジックの変更や追加」に対応するコストを低く保つこと(技術的負債の抑制)ができるようになったことを解説するものです。 技術的負債の抑制には、技術的負債の原因となりがちな「広範囲の密結合」と「適切な疎結合を保つ仕組みの欠如」が欠かせません。それをカバーするのが、大規模開発をクリーンに行える設計論(ここでは「現代的な設計論」とよぶもの)です。クリーンアーキテクチャなんかでGUIによく適用されるHumble Object Patternのようにプレゼンテーションとビューを分離する必然性が無くなるでしょう。 ポイントは ある程度以上の規模で開発するなら設計論をうまく使い設計しないと、技術的負債を抱え込む(ビジネスロジックの変更や追加に対

    宣言的UIはReact Hooksで完成に至り、現代的設計論が必須の時代になる - Qiita
    jsstudy
    jsstudy 2019/09/06
    Haskell→Elm→Redux https://qiita.com/jooex/items/89ab4bf7c953a6f40069 "Elmアーキテクチャは、ReduxやCycle.jsから参照されています。Elm言語はv0.16以前はSignal(FRP)を使って仮想DOMで描画" JS/AltJSの宣言的記述はReactよりもElmの方が先だった?
  • Elmというミニマムでフレームワークにもなる関数型altJS言語を触ってみよう!!! - Qiita

    Elm触ってみると面白くてハマりまして、この記事もそんな一人による紹介記事になります。 この記事が一番ストック数が多いので、v0.17になったことに合わせて書き直しました。(2016年5月18日) Elmとは ・コンパイルすると、HtmlCSSJavascriptになる。 Elmとは、コンパイルするとHTMLCSSJavascriptを生成するプログラミング言語です。 ・Elmアーキテクチャで書ける。 v0.17から正式にElmはフレームワークを兼ね備えた言語になりました。 後述するElmアーキテクチャというパラダイムでブラウザアプリケーションを書きます。 ・Elmはシンプルで小さな関数型の言語です。 ElmはHaskellやいろんな関数型言語を参考にして、とても小さく強力な構文を持っています。 ・学習が始めやすいです。 かなり学習のしやすさや学習曲線を大事にしているのでちょっと見

    Elmというミニマムでフレームワークにもなる関数型altJS言語を触ってみよう!!! - Qiita
  • 宣言的UI

    宣言的UIの状態管理とアーキテクチャSwiftUIGraphQLによる実践 https://speakerdeck.com/sonatard/swiftui-graphql

    宣言的UI
    jsstudy
    jsstudy 2019/09/03
    Haskell→Elm→Redux https://qiita.com/jooex/items/89ab4bf7c953a6f40069 >Elmアーキテクチャは、ReduxやCycle.jsから参照されています。Elm言語はv0.16以前はSignal(FRP)を使って仮想DOMで描画するので、ElmアーキテクチャはReduxやCycle.jsと同じでした
  • 【forが嫌い!可読性を上げたい!】楽するために学ぶ配列の高階関数(map, filter, reduce等) - Qiita

    【forが嫌い!可読性を上げたい!】楽するために学ぶ配列の高階関数(map, filter, reduce等)JavaScriptリーダブルコード高階関数 複雑すぎるforの処理に悩まされたことはありませんか? プログラミング習いたての頃、forに悩まされた記憶はありませんか? また、業務で複雑すぎるfor文を見て、これくらい理解できないとやっていけないのか…と悩んだ記憶はありませんか? 実はそのfor…もっと読みやすい書き方が出来て、簡単に読めるとしたら楽じゃないですか? いやいや、単にもっと楽したくありませんか? 今回は個人的に「苦手なfor文」の書き換え(map, filter, reduce等)について、短くなるだけじゃないところを紹介したいと思います。 コードを読む事に神経をとがらせて疲弊したくない人には、オススメしています。(頭を使う労力が減ってると信じたい...) 記事につ

    【forが嫌い!可読性を上げたい!】楽するために学ぶ配列の高階関数(map, filter, reduce等) - Qiita
    jsstudy
    jsstudy 2019/08/30
    JS/AltJSを関数型で書きたいなら、Haskellも一度勉強してみれば良いかも。適切な教材を選べばHaskellの基礎は速習可能。例 http://walk.northcol.org/haskell/ https://github.com/kazu-yamamoto/recursion-drill/ その後、ElmやPureScriptを触ってみればOK?
  • Elmの歩き方2019

    Elm Meetup in Summer 2019

    Elmの歩き方2019
    jsstudy
    jsstudy 2019/08/30
    ReduxはElmアーキテクチャを参考にしてる。Elmのエコシステムで不足を感じてもその作法は一度見ておく価値がある?Haskell風に書きたいならPureScript+Reactという選択肢もある。Elmは教材が良いので速習可能 https://guide.elm-lang.jp/
  • Foreign function interface - Wikipedia

    Foreign function interface(フォーリン・ファンクション・インターフェイス、FFI)とは、あるプログラミング言語から他のプログラミング言語で定義された関数などを利用するための機構。主に高水準言語からC/C++などの関数やメソッドを呼び出し、OS固有の機能などを利用するために使用されることが多い。 FFIという用語はCommon Lispにおける仕様に由来し[1]、Haskellでも同様にFFIという用語が使われている[2]。Adaなどでは言語間バインディング(または単にバインディング, language binding)と呼ばれている[3]。 FFIという用語自体に「関数(Function)」という言葉が含まれているが、多くのFFIでは単に他言語で書かれた関数が呼び出せるだけではなく、オブジェクトのメソッドを呼び出したり、その返り値を取得し、データ型やクラスを言語間

    jsstudy
    jsstudy 2019/08/29
    Foreign function interface (FFI)とは、あるプログラミング言語から他のプログラミング言語で定義された関数などを利用するための機構。主に高水準言語からC/C++などの関数やメソッドを呼び出し、OS固有の機能などを利用する。
  • Elmはどんな人にオススメできないか - Qiita

    はじめに 高品質なWebフロントエンド開発を可能にするためのプログラミング言語Elm。その長所を上げればキリがありません。 強い型制約によって実行時エラーをほぼゼロにできること リリースごとに言語機能が減るというどこまでも考えつくされたシンプルな設計 それでいて実用的なアプリケーション開発にとことん貪欲な機能たち まともなパッケージマネージャー テストしやすさ ...... 一方で、そういった強力な武器たちの切れ味を保つために他の言語とは異なる事情を抱えています。 記事では、その特有な性質がゆえに誤解されてしまうことも多い Elm というプログラミング言語について、誤解を解きながら、唯一無二の魅力をお伝えしていきます。 この記事を書いた当時は Elm 0.18 の時代でしたが、Elm 0.19 が出た今でも変わらない内容です。 Elm の根幹部分について言及した記事なので、今後 Elm

    Elmはどんな人にオススメできないか - Qiita
    jsstudy
    jsstudy 2019/08/29
    まず、最適な設計について考えた結果であるフレームワーク (The Elm Architecture) が先にあり、そのフレームワークを使う上で必要な機能を考えた結果としてElmがあります。Elmは汎用言語ではなく、あくまでDSLの一種なのです。