タグ

2019年8月3日のブックマーク (28件)

  • JavaScriptの‍ES2019で追加された新機能まとめ - Qiita

    (2021/06/24追記) ES2021の記事を公開しました。 正式仕様リリース! JavaScriptの最新仕様ES2021で追加された新機能まとめ - Zenn (2020/02/03追記) ES2020の記事を公開しました。 JavaScriptの次の仕様ES2020で追加されることが決定した新機能まとめ - ICS MEDIA 記事ではES2019の新機能を解説しています。記事末尾では、個人的に追加を期待していたけれどまだステージ3の機能についても紹介しています。 ES2019仕様書:「ECMAScript® 2019 Language Specification」

    JavaScriptの‍ES2019で追加された新機能まとめ - Qiita
    jsstudy
    jsstudy 2019/08/03
    本記事で紹介したES2019の仕様は、Chrome 73ですべて対応済みです。その他のブラウザーについては、TypeScript・Babelとポリフィルで対応するとよいでしょう。
  • 最新版で学ぶwebpack 5入門 - Babel 7でES2023環境の構築(React, Vue, Three.js, jQueryのサンプル付き) - ICS MEDIA

    最新版で学ぶwebpack 5入門 Babel 7でES2023環境の構築 (React, Vue, Three.js, jQueryのサンプル付き) ECMAScript 2015(略:ES2015)以上の言語仕様でJavaScriptを書くことが、昨今のウェブのフロントエンドエンジニアの基テクニックです。しかし、ECMAScript 2015以上の仕様のJavaScriptで記述すると、Internet Explorer 11など古いブラウザでは動作しないこともあります。そこでBabelなどのトランスパイラと呼ばれるツールを使って、ES2015〜ES2023の仕様で記述したJavaScriptファイルを互換性のあるECMAScript 5に変換します。 トランスパイラとして一番有名なのが「Babel」というツールです。ただ、BabelにはECMAScript Modules(impo

    最新版で学ぶwebpack 5入門 - Babel 7でES2023環境の構築(React, Vue, Three.js, jQueryのサンプル付き) - ICS MEDIA
    jsstudy
    jsstudy 2019/08/03
    この記事ではトランスパイラのBabelとモジュールバンドラーのwebpackを連携する方法を網羅的に解説します。
  • 『現場で使える Ruby on Rails 5速習実践ガイド』は何が実践的なのか - ppworks.jp

    著者の1人である櫻井さまより恵贈賜りました『現場で使える Ruby on Railsw 5速習実践ガイド』、とても読みたかったなので嬉しいです。ありがとうございます! なので、駆け足で早速第一印象レビュー。 まずね、表紙が可愛い。現実に人々が生きていて生活しているんだ。そこに寄り添うのがRailsだ、抽象的なありえない線路が空中にバーっとあって電車が空に飛んでいくみたいなことはないのだ、現実は。 この記事を読んでいる方は、まずは以下のリンクから実際にを買うところから。さあ。 現場で使える Ruby on Rails 5速習実践ガイド(特典PDF付き) 作者: 大場寧子,松拓也,櫻井達生,小田井優,大塚隆弘,依光奏江,銭神裕宜,小芝美由紀出版社/メーカー: マイナビ出版発売日: 2018/10/19メディア: 単行(ソフトカバー)この商品を含むブログを見る 買いました?(2018年1

    『現場で使える Ruby on Rails 5速習実践ガイド』は何が実践的なのか - ppworks.jp
    jsstudy
    jsstudy 2019/08/03
    俺たちは雰囲気でコードを書いている!? "アプリケーションのコードがRailsそのもののリズムに似ていれば、フレームワークの動きと衝突することなく、フレームワークを自然に活かして利用することができます。"
  • ググるのをやめるとプログラムの生産性が上がるかもしれない - メソッド屋のブログ

    今日はプログラミングの生産性に対して気づきがあったのでシェアしてみたい。 なぜ米国の人は生産性が高いのだろう プログラミングの生産性に関しては以前から興味がありいくつかのポストで考えたことをシェアしてきた。私は職業柄、いろんな国でいろんな人々とプログラミングを一緒にする機会が多い。その時に頻繁に感じるのは、平均的に言うと、アメリカの人プログラマが生産性が高い確率が高くて、しかもコードもきれいだという傾向にある。アメリカでお客さんと一緒にコードを書くと、お客さん自体が物凄く良く知っているし、実行力もある。アメリカの次と言うことでいうと、英語がネイティブの国もそれに近く、フランスなどの言語が近いところが続く感じなので、英語が物凄く影響すると思っていたし、実際すると思う。そのあたりの話はこちらのポストに書いてみた。 simplearchitect.hatenablog.com 定義での理解と、例

    ググるのをやめるとプログラムの生産性が上がるかもしれない - メソッド屋のブログ
    jsstudy
    jsstudy 2019/08/03
    基本が大事 "リファレンスのみを見て技術調査"
  • YouTubeなどの動画投稿(共有)サービスでの音楽利用 JASRAC

    YouTubeなどJASRACが利用許諾契約を締結している動画投稿サービスにつきまして、動画の投稿者は一定の範囲内でのご利用であれば、JASRAC管理楽曲を含む動画を手続きなくアップロードすることができます。 ただし、利用方法によっては、個別に手続きが必要となる場合があります。詳しくは、以下のフローチャートとご利用上のご注意をご覧ください。 YouTube はJASRACと許諾契約を締結しているサービスとなります。また、YouTubeに投稿された動画にJASRAC管理楽曲が含まれていることをYouTubeのシステムが検知した場合、動画投稿者にJASRACが「著作権の申し立て」を行った旨のお知らせが届くことがあります。これは、著作権の侵害を主張するものではありませんので、動画を削除する必要はありません。詳細はこちらをご覧ください(よくあるご質問はこちら)。

    YouTubeなどの動画投稿(共有)サービスでの音楽利用 JASRAC
  • セキュリティを重視した開発手法ベストプラクティス

    モバイルアプリケーションから大規模な金融機関のインフラストラクチャーまで、ソフトウェアの構築方法は急速に進化しており、セキュリティは開発者が最初から考慮するものとなりました。開発のペースが速まると、セキュリティ侵害のリスクが大きくなります。セキュリティに気を使っている大企業でさえ、公開されているソースコードにパスワードを残したり、お客様の個人データを漏洩したり、明らかに脆弱性があるのに重要なアプリケーションを稼働させたり、といったことは珍しくありません。多くの企業が新しいソフトウェアをいち早くリリースしようと懸命になり、ソフトウェアの安全性を保つことに苦労しています。 このように、企業におけるソフトウェア開発は迅速な作業とセキュアな構築の両立が課題になっています。新しい開発手法はコードをより早く市場に投入できますが、不適切なツールやプロセスを使うと、セキュリティが不十分になりかねません。

    セキュリティを重視した開発手法ベストプラクティス
  • 山は性癖です。

    どうも、篠です。 突然ですが、2024年5月下旬に自転車で日を縦断する「ギネス世界記録」にチャレンジします。 ギネス世界記録日縦断のは土最南端の岬である佐多岬を出発し、門司、下関、青森、函館を通過の後に、北海道島最北端にある宗谷岬を終着とする公道をロードバイクもしくは徒歩のみで走行した、スタートからゴールまでの合計時間を計るものです。 全行程おおよそ2600kmになります。 今回のチャレンジに思い至った経緯 きっかけは昨年高岡亮寛さんがギネス世界記録日縦断に再チャレンジした後の報告会でした。 「篠さんもやってみない?」と話を振られ、その場で即「絶対やりません」と否定できなかった時点で、やる運命が決まっていたように思えます。 とことん長い距離のチャレンジ、ずっと興味を持っていました。 時間を注ぎ込んだ分だけ自分に返ってくる自転車が好き。 大人になってはっきりと成長や変化を実感できる

    山は性癖です。
    jsstudy
    jsstudy 2019/08/03
    自転車は健康的な趣味
  • ヒルクライムは芸術、峠道はロマン 「ロードバイク」で人生が変わった女子のお金の使い方 - マネ会

    2017年の年間走行距離は1万5,000km、累積標高は35万m。「登り過ぎている女子」として、NHK BS1で放送されている自転車情報番組「チャリダー★」に2度出演したり、雑誌に載ったりもしました。軽率な気持ちで自転車を始めてみたら、どっぷり沼にハマってしまったと言ったところでしょうか。 ロードバイクが趣味になると、体を鍛えられることはもちろん、フットワークが軽くなって行動範囲が広くなったり、綺麗な景色を手軽に観に行けるようになったりするというのが魅力でもあります。 もっとたくさんの人にロードバイクの楽しさを知っていただきたいとは思うものの、ロードバイクを始めるにはどれくらいお金がかかるのかが分からなくて手が出しにくい、と悩む人も多いのではないでしょうか。 そこで今回は、ロードバイクにハマっていった過程を交えながら、私がこの4年でロードバイクのどういったところにお金をかけてきたかを振り返

    ヒルクライムは芸術、峠道はロマン 「ロードバイク」で人生が変わった女子のお金の使い方 - マネ会
    jsstudy
    jsstudy 2019/08/03
    健康的な趣味
  • JavaScriptでラムダ計算の仕組みを学ぶ教材 - JavaScript勉強会

    関数型プログラミングの理解を深めるために、OCamlのを読んでいます。 プログラミングの基礎 (Computer Science Library) 作者: 浅井健一 出版社/メーカー: サイエンス社 発売日: 2007/03/01 メディア: 単行 購入: 17人 クリック: 409回 この商品を含むブログ (127件) を見る 「簡約」について調べていたら、分かりやすい説明の記事がありました。 tarao.hatenablog.com ラムダ計算は, 多くのプログラミング言語, とくに関数型言語の原形になっています. ラムダ計算について理解しておくことは, 多くのプログラミング言語の習得に役立つでしょう. ラムダ計算はチューリング完全で, 計算能力としてはふつうのプログラミング言語と同じです. ラムダ計算で計算を書く訓練をしておくことは, 任意の計算を関数のみを使って(他の制御構文を

    JavaScriptでラムダ計算の仕組みを学ぶ教材 - JavaScript勉強会
    jsstudy
    jsstudy 2019/08/03
    簡約(ラムダ計算の実行)の様子を確認できるツール LambdaJS
  • Simple DirectMedia Layer - Homepage

    Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. It is used by video playback software, emulators, and popular games including Valve's award winning catalog and many Humble Bundle games. SDL officially supports Windows, macOS, Linux, iOS, and Android. Support for

    jsstudy
    jsstudy 2019/08/03
    pygameはSDL上に構築されている
  • SDL - Wikipedia

    Simple DirectMedia Layer SDLの構造 SDL (Simple DirectMedia Layer) は、C言語で書かれたクロスプラットフォームのマルチメディアライブラリである。グラフィックの描画やサウンドの再生などのAPIを提供する。オーディオ、キーボード、マウス、ジョイスティック、そしてOpenGLおよびDirect3Dを経由したグラフィックスハードウェアへのローレベルなアクセスを提供するよう設計されている。WindowsmacOSLinux、iOS、Androidを公式にサポートしている。SDLそのものはOS間の違いを吸収するための最低限の抽象化しか提供しないが、SDLで使えるフォントやネットワーク、スプライトなどの多数の補助ライブラリ(後述)が公開されている。 2021年2月7日に開発ベースをGitHubに移動するとアナウンスがあった[2]。 言語バイン

    SDL - Wikipedia
    jsstudy
    jsstudy 2019/08/03
    SDL (Simple DirectMedia Layer) は、C言語で書かれたクロスプラットフォームのマルチメディアライブラリである。グラフィックの描画やサウンドの再生などのAPIを提供する。Windows、macOS、Linux、iOS、Androidを公式にサポートしている
  • pygame - Wikipedia

    pygame は、ビデオゲームを製作するために設計されたクロスプラットフォームのPythonモジュール集であり、Pythonでコンピュータグラフィクスと音声を扱うためのライブラリを含んでいる。pygameは、SDL ライブラリの上に構築されており、C言語のような低水準の機構を使わずにリアルタイムのコンピュータゲームを開発できるようにするための配慮がなされている。これは、計算量の多い関数(主にグラフィクス処理)のほとんどはゲームロジック自体から切り離せるという想定にもとづいており、それがPythonのような高水準言語をゲーム開発に使用することを可能にしている。 歴史[編集] pygameは、開発が停止したpySDLライブラリを置き換えるために作られた。[2] pygameは、元はPete Shinners によって書かれ、GNU Lesser General Public Licenseの下

    jsstudy
    jsstudy 2019/08/03
    pygame は、ビデオゲームを製作するために設計されたクロスプラットフォームのPythonモジュール集であり、Pythonでコンピュータグラフィクスと音声を扱うためのライブラリを含んでいる。pygameは、SDL ライブラリの上に構築
  • Amazon.co.jp: Pythonでつくる ゲーム開発 入門講座: 廣瀬豪: 本

    Amazon.co.jp: Pythonでつくる ゲーム開発 入門講座: 廣瀬豪: 本
  • 海外(ベトナム)でiPhoneをひったくられた話(盗難時のロックとか対処法とか保険とか) - 自分を攻略していく記録

    iPhoneをベトナム・ホーチミンでひったくられたのだが、いざそういう状況になると結構テンパるし、実際にひったくられる前から対策できることがあると感じた。ネットで「iPhoneの盗難にあった時にどうすればいいのか」みたいな記事はヒットするが、実際に盗難にあった人が書いているケースは多くなさそうだし、なにより「iPhoneを消去」コマンドまで実行している人はそんなに多くないと思うので記録しておく。 海外にいる時は、スマホはパスポートの次に大切なものになると思うので、なくした時に備えて準備をしておくのが大切だと実感した。 事件の流れ 12時30分頃 離れたところまで移動して昼べようと思い、Grab(東南アジア版Uber; タクシー配車アプリ)を使って車を待っていた。その車が近辺まで来たので、歩道の限りなく道路よりで歩いていた。ちょうど別件でチャットが来たので返信していたところ、背後からバ

    海外(ベトナム)でiPhoneをひったくられた話(盗難時のロックとか対処法とか保険とか) - 自分を攻略していく記録
    jsstudy
    jsstudy 2019/08/03
    道路よりで歩いていた。背後からバイクに乗った人にiPhoneをひったくられた。隣にいた目撃者によると、「反対側の車線にいたバイクが急にUターンしてこっちにやってきたと思ったらiPhoneを盗んでいったんだよ」とのこと
  • Google Chromeスクショ術 - mottox2 blog

    技術同人誌やブログを書く上で外せないのがスクリーンショットを取ることです。 同人誌を5冊書いていく経験の中で慣れてきたので、自分がスクリーンショットを撮る時に使っている方法を紹介します。 > Commandからスクリーンショットを撮るCommandからスクリーンショットを撮る Chrome DevToolsに慣れている方はご存知かもしれませんが、ChromeにはCommandという概念があります。 Cmd + Option + iでDevToolsを開きCmd + Shift + Pを押してください。 すると次のような入力フォームと項目が出現します。 フォームに文字を入力すると、Commandを絞りこむことができEnterで指定したアクションを実行することが出来ます。 ここにある、「Capture area screenshot」、「Capture full size screenshot

    Google Chromeスクショ術 - mottox2 blog
    jsstudy
    jsstudy 2019/08/03
    DevToolsではスタイルを変更することができるので、widthやheightといったプロパティを変更するとサイズが変更されます。変更した状態で「Capture node screenshot」を選択すると、好みの大きさのスクリーンショットが取得できます
  • Lambda calculus in JS syntax

    jsstudy
    jsstudy 2019/08/03
    ラムダ計算の教材 JavaScriptで読む「ラムダ計算基礎文法最速マスター」 - 貳佰伍拾陸夜日記 https://tarao.hatenablog.com/entry/20100325/1269507050
  • LCI

    LCI is an interpreter for the lambda calculus. It supports many advanced features such as recursion, user-defined operators and multiple evaluation strategies, all based on the pure calculus. It is free software licenced under the GNU General Public Licence (GPL). Try it online LCI can run in a browser via WebAssembly. Try the demo! Features LCI can be considered a small (but powerfull) functional

    jsstudy
    jsstudy 2019/08/03
    ラムダ計算の教材
  • JavaScriptで読む「ラムダ計算基礎文法最速マスター」 - 貳佰伍拾陸夜日記

    以前書いた「ラムダ計算基礎文法最速マスター」(以下「最速マスター」)は, 予想以上に多くの人に興味を持ってもらえたようですが, 同時に難しくてわからなかったという人も多かったようです. 反響から察するに, 構文を見慣れていない(と錯覚してしまう)ことが理解の妨げになっていたように思います. ラムダ計算の構文は, 実際には全く特殊なものではありません. このことがよくわかるように, 「最速マスター」のラムダ計算の簡約の例をすべてJavaScriptの構文で書いてみました. ......という内容になるはずでしたが, 気がついたらラムダ計算のインタプリタをJavaScriptで実装していました! 実際に動かせるものは下記URLにあります. https://tarao.github.io/LambdaJS/#js 動作確認と既知の問題 Firefox 3.6 Google Chrome 4.1

    JavaScriptで読む「ラムダ計算基礎文法最速マスター」 - 貳佰伍拾陸夜日記
    jsstudy
    jsstudy 2019/08/03
    JavaScriptでラムダ計算の仕組みを理解するための教材
  • ラムダ計算基礎文法最速マスター - 貳佰伍拾陸夜日記

    ラムダ計算は, 多くのプログラミング言語, とくに関数型言語の原形になっています. ラムダ計算について理解しておくことは, 多くのプログラミング言語の習得に役立つでしょう. ラムダ計算はチューリング完全で, 計算能力としてはふつうのプログラミング言語と同じです. ラムダ計算で計算を書く訓練をしておくことは, 任意の計算を関数のみを使って(他の制御構文を用いずに)書くときに役立ちます. ふつうに書いたら煩雑な処理を, 関数型言語のやり方で書くとすっきりすることが多々あり, コードを自由自在に書くためには必須の考え方と言えるでしょう. 項 ラムダ計算の式を項(term)と言います. 項は変数, 抽象, 適用のいずれかです. 変数 変数(variable)はふつう1文字で書きます. 変数には関数内の束縛変数(bound variable)か自由変数(free variable)かという区別があり

    ラムダ計算基礎文法最速マスター - 貳佰伍拾陸夜日記
    jsstudy
    jsstudy 2019/08/03
    ラムダ計算の式を項(term)と言います. 項は変数, 抽象, 適用のいずれかです. 関数を作る構文を抽象(abstraction)と言います.  ラムダ計算の式を実行することを簡約(reduction)と言います.
  • 永久無料枠で Google Compute Engine (GCE) インスタンスを立ち上げる : その2 - Corredor

    前回、Google Cloud Platform (GCP) に登録し、その中の Google Compute Engine (GCE) というサービスを使い、完全無料で使える仮想マシン (VM) を立ち上げて SSH 接続までこぎつけた。 今回は、立ち上げた VM をより安全に利用するための設定を紹介する。 課金を通知する予算アラートを設定しておく VM に割り当てられる Public IP を固定する SSH 接続するためのポートを22番から他のポート番号に変更する ポートを変更する前に SELinux を無効化する SSH 接続に使用するポート番号を変更する GCP のファイアウォール設定を変更する 変更後のポート番号で SSH 接続する 以上 課金を通知する予算アラートを設定しておく 前回説明したとおり、GCP には無料枠と1年間の無料クレジットがあるし、有料アカウントに手動で移行

    永久無料枠で Google Compute Engine (GCE) インスタンスを立ち上げる : その2 - Corredor
    jsstudy
    jsstudy 2019/08/03
    GCP には無料枠と1年間の無料クレジットがあるし、有料アカウントに手動で移行するまでは課金されない。VM で自前の Web サーバを立ててみてもよし、別のインスタンスへの踏み台サーバとしてもよし。
  • オーム社電子書籍直販サービス終了に関して:Geekなぺーじ

    オーム社が電子書籍直販サービスを終了するというお知らせがでていました。 同社では、マスタリングTCP/IP RTP編(2004年)、インターネットのカタチ(2011年)、マスタリングTCP/IP OpenFlow編(2013年)の3冊で関わらせていただいたこともあり、今回廃止される電子書籍直販サービスで拙著も販売されていました。 オーム社eBook Storeサービス終了のお知らせ 電子書籍直販サービスが終わるということは、ネット上で話題になっていることで知りましたが、「そのうちこうなるだろうと思っていた」ということが起きました。 10月29日に「運営スタッフ退任のお知らせ」というお知らせが出ており、eBook Store企画運営担当の森田さんが「運営スタッフ退任」とあります。 そのお知らせからは社内異動のようにも読めますが、実際は運営スタッフ退任だけではなく、10月末で退職されたようです

    jsstudy
    jsstudy 2019/08/03
    社内政治で崩壊 / 実際はオーム社ではなく、オーム社開発部の4名によるチームが尖っていたのです。 森田さん、鹿野さん、高尾さんの3人の編集者と、その上司である宇津さんです。 その4名のチームが尖っていたのです。
  • 『プログラミングHaskell 第2版』の発売を開始しました

    ご来店ありがとうございます。 ラムダノートでは、Grahum Hutton氏によるプログラミング言語Haskellの定番教科書、 "Programming in Haskell" の改訂にあたる『プログラミングHaskell 第2版』(山和彦訳)の発売を当直販サイトにて開始いたしました。 『プログラミングHaskell 第2版』(紙書籍+電子書籍)(税別3200円) 『プログラミングHaskell 第2版』(電子書籍のみ)(税別3000円) 「紙書籍+電子書籍」版のお求めでも、「電子書籍のみ」版のお求めでも、いますぐPDFのダウンロードが可能です。紙書籍については、8月22日(木)以降の発送開始を予定しています。書店(オンライン書店を含む)での紙書籍の発売も8月22日以降を予定しております。 なお、直販サイトでのお求めにあたってユーザ登録などは不要です(ただ、ユーザ登録をしていただくと、

    『プログラミングHaskell 第2版』の発売を開始しました
    jsstudy
    jsstudy 2019/08/03
    原書第2版は、この10年に起きたHaskellの大きな変化を意欲的に取り込んでいます。「豊富な例題をとおして関数プログラミングの考え方を学べる」、旧版を上回る量の楽しくて深い内容の例題が満載の一冊になっています。
  • ■ - golden-luckyの日記

    ある出版社が電子書籍の直販サービスを一方的に打ち切るというニュースが今日あり、自分は前にその出版社で編集者をしていて、打ち切られることになった電子書籍の直販サービスにもわりと近いところにいたし、たぶんぼくが作ったいたは、その電子書籍の直販サービスでいまだにとてもよく売れているはずで、それなのにどうやら著者や訳者に一切の連絡もなく打ち切られたらしく、まあ、一カ月前にくだんの直販サービスを立ち上げたぼくの先輩であるフルスタック編集者がやめたことを考えると、遅かれ早かれこうなるのは目に見えていたので、このニュース自体にまったく驚きはなかったんだけど、こうやってその日がくると、あのときの編集チームを社内政治にからめてつぶした人たちにはほんとうにあきれるし、当時のポジティブな気持ちとか、誇らしさとか、楽しさとか、そういうのを思い出してしょっと憤慨するし、でも、こうしてぼくは自分で編集チームをまた持

    ■ - golden-luckyの日記
    jsstudy
    jsstudy 2019/08/03
    これか… オーム社eBook Storeサービス終了のお知らせ - オーム社eBook Storeのブログ http://ohmshaebookstore.hatenablog.com/entry/2017/11/30/105016
  • Haskell 解説本 小史 - golden-luckyの日記

    語圏におけるHaskellの解説には、これまで4回の波がありました。 それを思い出しながら、最後に『プログラミングHaskell 第2版』の紹介をします。 第1波 第2波 第3波 第4波 『プログラミングHaskell』が改訂されます 第2版ではプログラミングにおける型の理解が深まると思う ここで買えます 第1波 Haskell解説の1つめの波は、2006年、『入門Haskell』と『ふつうのHaskell』が出版された頃にありました。 このうち、『入門Haskell』は(おそらく)日初のHaskellです。 『入門Haskell』(2006年) 『ふつうのHaskell』(2006年) 『ふつうのHaskell』は、書名だけを見ると「特殊な言語」であるHaskellを「ふつう」に説明しているであるように思えるのですが、実はそうでもなくて、淡々と部品の説明をしていく感じの内容

    Haskell 解説本 小史 - golden-luckyの日記
    jsstudy
    jsstudy 2019/08/03
    『プログラミングHaskell 第2版』 第2版ではプログラミングにおける型の理解が深まると思う ・データとしての型 ・定義が同じような形をしている関数を、同じ仲間だと思って扱うための道具としての型(型クラス)
  • OCamlで48 Hour Schemeをやってみる その5 (第九、十章) - Arantium Maestum

    Write Yourself a Scheme in 48 Hoursの最後の二章をやっていく。入出力と標準ライブラリ作成。 第九章:入出力 stdin, stdoutやファイルに対する入出力を実装する。 github.com 例によって「Haskellだとモナドが出現していろいろ型を頑張らないといけないけどOCamlだから・・・」という案件。 HaskellではIOモナド型のために新しいIOFunc式を用意したりしているが、OCamlだと普通に今まで通りPrimitiveFuncに放り込んでいける。 type expt = (* 省略 *) | PortIn of in_channel | PortOut of out_channel と入出力用のchannelをラップしたPortIn/PortOut式は用意する。あとはIoモジュールでそれを使う関数を定義し、primitives.mlで

    OCamlで48 Hour Schemeをやってみる その5 (第九、十章) - Arantium Maestum
    jsstudy
    jsstudy 2019/08/03
    「Haskellだとモナドが出現していろいろ型を頑張らないといけないけどOCamlだから・・・」HaskellではIOモナド型のために新しいIOFunc式を用意したりしているが、OCamlだと普通に今まで通りPrimitiveFuncに放り込んでいける。
  • Advanced programming languages

    Students often ask for a recommendation on what language they should learn next. If you're looking for a job in industry, my reply is to learn whatever is hot right now: C++, Java and C#--and probably Python, Ruby, PHP and Perl too. If, on the other hand, you're interested in enlightenment, academic research or a start-up, the criterion by which you should choose your next language is not employab

    jsstudy
    jsstudy 2019/08/03
    Standard ML and OCaml, Haskell uses an extension of Hindley-Milner-style type inference, which means that the programmer doesn't have to write down (most) types, because the compiler can infer them. It has been my experience that it is difficult to get a bug through the Hindley-Milner type system.
  • The Pyret Programming Language

    Pyret is a programming language designed to serve as an outstanding choice for programming education while exploring the confluence of scripting and functional programming. It's under active design and development, and free to use or modify. Examples Why Pyret? Set Sail News & Discussion data BinTree: | leaf | node(value, left, right) end fun tree-sum(t): doc: "Calculate the sum of node values" ca

    The Pyret Programming Language
    jsstudy
    jsstudy 2019/08/03
    Pyret is a programming language designed to serve as an outstanding choice for programming education while exploring the confluence of scripting and functional programming. It's under active design and development, and free to use or modify.
  • Interesting Programming Languages

    Interesting Programming Languages an opinionated collection of programming languages. Created: Feb 19, 2020 by Pradeep Gowda Updated: May 17, 2024 Tagged: programming-language An opinionated collection of programming languages. This is a list of what I consider interesting. Requests to add to this list are welcome, but there is no guarantee I’ll include them. As you can see many mainstream program

    jsstudy
    jsstudy 2019/08/03
    Pyret -- python like language (syntactially) with FP ideas. inbuilt testing emphasis with where: keyword. structured data like OCaml etc., Runs on top of Racket. https://www.pyret.org/