並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 741件

新着順 人気順

LISPの検索結果241 - 280 件 / 741件

  • Playdate の開発を通じて開発環境を自ら拡張する - Nature Engineering Blog

    Nature で iOS/Android あと Firmware チョットデキル亀田 @Gemmbu です。 これは Nature Engineering Blog祭 の一日目の記事です。 祭り モバイルエンジニアにとっては Google I/O 2022 や WWDC22 も終わり、アプリ対応スケジュールをもやもやと考えているころかと思います。 が、そろそろ日本にも Playdate の発送が始まるころだと思います。みなさんモバイルエンジニアとしてもちろんあの厳しい予約戦争を勝ち取りましたよね? Playdate Playdate をご存知だとは思いますが、軽く説明しますと。初代ゲームボーイを横長にして薄くして、ビビットイエローに塗って、何故か釣りコンが悪魔合体した素敵なデバイスです。 この説明だとあれなので公式へのリンクを貼っておきます。 play.date おもしろいのが 2 週間毎

      Playdate の開発を通じて開発環境を自ら拡張する - Nature Engineering Blog
    • Gamedev in Lisp. Part 2: Dungeons and Interfaces · Wiki · Andrew Kravchuk / cl-fast-ecs · GitLab

      Blazingly fast Entity-Component-System microframework ⚡📦 https://awkravchuk.itch.io/cl-fast-ecs

        Gamedev in Lisp. Part 2: Dungeons and Interfaces · Wiki · Andrew Kravchuk / cl-fast-ecs · GitLab
      • Ruby Style Guide

        Ruby Style Guide Ruby is the main language at Shopify. We are primarily a Ruby shop and we are probably one of the largest out there. Ruby is the go-to language for new web projects and scripting. We expect all developers at Shopify to have at least a passing understanding of Ruby. It's a great language. It will make you a better developer no matter what you work in day to day. What follows is a l

        • Little Languages Are The Future Of Programming

          I’ve become convinced that “little languages”—small languages designed to solve very specific problems—are the future of programming, particularly after reading Gabriella Gonzalez’s The end of history for programming and watching Alan Kay’s Programming and Scaling talk. You should go check them out because they’re both excellent, but if you stick around I’ll explain just what I mean by “little lan

            Little Languages Are The Future Of Programming
          • Weird Languages

            August 2021 When people say that in their experience all programming languages are basically equivalent, they're making a statement not about languages but about the kind of programming they've done. 99.5% of programming consists of gluing together calls to library functions. All popular languages are equally good at this. So one can easily spend one's whole career operating in the intersection of

            • Glispの展望と悩ましいこと(誰か助けてください) | 麦 Baku

              Glispを開発している中で、このエントリにも上げたような問題があったので言語処理系自体を、一般的なLisp評価器とは異なった、よりGUIやデザインとの親和性の高いものへとアップデートしようとしています。しかしまた色々行き詰まった所が出てきたので、言語化も兼ねて今一度悩んでいるところを書き出しておきます。 言い訳までに、僕はただの映像専攻の美大中退者でして、言語処理系に関して何の専門教育を受けたこともないので、車輪の再発明をしているような予感もありますし、以下の考察も適切ではないかもしれません。もし、この辺勉強するとスッキリするよ~とか、こういう概念があるんよ~みたいなアドバイスがあれば、断片的にでも構わないので教えてくださるととても嬉しいです。 Lispの何が問題だったか? そのシンボルが指し示す値、関数の実体、そして型が、評価されるまで分からない(Lispは動的型付けなので)その関数の

                Glispの展望と悩ましいこと(誰か助けてください) | 麦 Baku
              • Parsing Protobuf at 2+GB/s: How I Learned To Love Tail Calls in C

                An exciting feature just landed in the main branch of the Clang compiler. Using the [[clang::musttail]] or __attribute__((musttail)) statement attributes, you can now get guaranteed tail calls in C, C++, and Objective-C. While tail calls are usually associated with a functional programming style, I am interested in them purely for performance reasons. It turns out that in some cases we can use tai

                • Emacsを世界最速級で起動する方法

                  Emacs Advent Calendar 2022 19日目です。 Vim Advent Calendar 2022 3日目の 爆速で起動する Neovim を作る に触発されて、「自分もEmacs版を書くぞ!」ということで書いていきます。 なお、VimとEmacsの比較をし易くするためになるべく文章の構成を寄せて書くことをご了承ください。 はじめに 「Emacsを高速に起動する」ということに対して、多くのEmacsユーザは興味がありません。 本来Emacsというのは常に起動し続けるものであり、必要に応じてEmacs Lispを適用し、テキストエディタをカスタマイズしていくものです。 現に「Emacs, 起動, 高速化」と検索すると、「4000msを1000msにした」のような秒単位での高速化の記事ばかりみつかります。 もし貴方が設定を変えずに手軽に高速に起動したい場合は emacs -

                    Emacsを世界最速級で起動する方法
                  • Lispの面白いサイトまとめ - Qiita

                    前書き もともとは以下の記事の最後のほうに書いていたが、どうせ誰も読まないので該当箇所をこの記事に写した。 面白いサイトまとめ Lispの真実 Lisp: 良い知らせ、悪い知らせ、大成功への提言 A Road to Common Lisp (Common Lisp への道) Lisp:よくある誤解 Lisp:よくある正解 The Lisp Curse(Lispの呪い) コードウォッチ:関数型プログラミングの自惚れ問題 デザインの「悪い方がよい」原則 Lispがそんなにすごいなら ---If Lisp Is So Great--- PythonとLispの関係について 人気の言語を作るには ---Being Popular--- 技術野郎の復讐---Revenge of the Nerds--- 普通のやつらの上を行け ---Beating the Averages--- 「技術野郎の復讐-

                      Lispの面白いサイトまとめ - Qiita
                    • 関数型言語初心者にこそおすすめしたい"OCaml"の特徴

                      2019年7月29日、Opt Technologiesが主催するイベント「Fun Fun Functional (2) 関数型言語Lightning Talks!!」が開催されました。関数型プログラミングについて楽しく学び、知見を共有することを目的に開催されている本勉強会。今回は6名のエンジニアが、関数型プログラミング言語にまつわるユニークな発表を行いました。プレゼンテーション「関数型初心者にこそおすすめしたい言語 "OCaml" 」に登壇したのは、cedretaber氏。講演資料はこちら 関数型初心者にこそおすすめしたい言語 "OCaml" cedretaber氏(以下、cedretaber):「関数型初心者にこそおすすめしたい言語 "OCaml"」ということで、またOCamlの話だということになってしまうんですが。 自己紹介、cedretaberと申します。 「ドワンゴから来ました」っ

                        関数型言語初心者にこそおすすめしたい"OCaml"の特徴
                      • Emacs is very special regarding UIs

                        Hi. To me, there is one thing that Emacs implements that no other program I know of manages to do. I seldomly hear this property mentioned by anyone else, so even if it scratches OT-ness, I wanted to get this out to people to ponder over, or even be proud of. Emacs is the only serious program I know which manages to be truely user interface independent, in addition to being platform-independent. E

                        • Node.jsの設計をつらつらと概観する - Qiita

                          株式会社Global Mobility ServiceでソフトウェアエンジニアのインターンをさせてもらっているShirubaです。グローバルな環境で利用されている社会的サービスの開発の一端を担いたい志ある方は、ぜひ緩くお話ししましょう〜。バックエンドはNode.jsを使っています。🙋‍♂️→ 採用ページ Node.jsについて色々資料を読んでメモをとったりしていたので、一度まとめておきたくて、この記事を書くことにしました。V8やLibuvなど低レイヤ技術の設計をベースにNode.jsを概観していきます。 Node.jsとは Node.js公式によるNode.jsの定義は以下です。 Node.js はスケーラブルなネットワークアプリケーションを構築するために設計された非同期型のイベント駆動の JavaScript 環境です。 https://nodejs.org/ja/about/ Nod

                            Node.jsの設計をつらつらと概観する - Qiita
                          • サービス間連携のためのGraphQL APIをClojureで開発している話 - Opt Technologies Magazine

                            社内共有のマスタデータ基盤としてのGraphQL APIをプログラミング言語Clojureで開発している事例をご紹介します。 あいさつ 新規API開発の背景 現行システムの問題点: 共有データベース 解決策: データベースをラップするサービス 技術選定の経緯 API方式: GraphQL メイン開発言語: Clojure アプリケーションのアーキテクチャ設計 The Clean Architecture コードの全体像 resolver use case entity boundary 主な要素技術 アプリケーション構成の整理とライフサイクル管理: Duct GraphQL APIサーバ: Lacinia + Pedestal 入力バリデーション: malli DBアクセス: clojure.java.jdbc + Honey SQL テストとカバレッジ計測: clojure.test +

                              サービス間連携のためのGraphQL APIをClojureで開発している話 - Opt Technologies Magazine
                            • GitHub - Robert-van-Engelen/tinylisp: Lisp in 99 lines of C and how to write one yourself. Includes 20 Lisp primitives, garbage collection and REPL. Includes tail-call optimized versions for speed and reduced memory use.

                              In honor of the contributions made by Church and McCarthy, I wrote this project and the accompanying article to show how anyone can write a tiny Lisp interpreter in a few lines of C or in any "C-like" programming language for that matter. I attempted to preserve the original meaning and flavor of Lisp as much as possible. As a result, the C code in this project is strongly Lisp-like in compact for

                                GitHub - Robert-van-Engelen/tinylisp: Lisp in 99 lines of C and how to write one yourself. Includes 20 Lisp primitives, garbage collection and REPL. Includes tail-call optimized versions for speed and reduced memory use.
                              • 「20年後、日本の国力が豊かになるように今種を蒔いている」 竹内郁雄×登大遊が語る、おもしろインチキへの入り口

                                未踏クリエータがもたらす新たな可能性を間近で体感できる場、「未踏会議」。未踏修了生たちが、未踏事業でのプロジェクトや、新たな技術への展望などについて話しました。未踏会議に向け、竹内郁雄未踏統括PMと登大遊氏の事前対談が実現。未踏会議のテーマ「好きなことをしていたら世の中を変えていた」について語りました。 世の中の常識を覆す登大遊氏 竹内郁雄氏(以下、竹内):登くんと対談するのは、初めてのような気がするんですが、私が登くんの提案を初めて見た時、頭の中に?マークが3つくらいついたんですよね。 TCP/IPの上に、イーサケーブルをシミュレーションのように乗っけるという提案だったので、そんなのスピード出るわけがないと思っていて、こんなの本当にできるのかなぁと思っていたのが、未踏のブースト会議でした。 これは、自分のやりたいことをみんなが発表して、意見をもらって開発をブーストするという会議なんですが

                                  「20年後、日本の国力が豊かになるように今種を蒔いている」 竹内郁雄×登大遊が語る、おもしろインチキへの入り口
                                • はてなエンジニア Advent Calendar 2023往復しました! - Hatena Developer Blog

                                  これははてなエンジニア Advent Calendar 2023 - Hatena Developer Blog 50日目の記事です。 昨日は id:kouki_dan の iOSアプリ開発での写真ライブラリのアクセス方法と設定 - Lento con forza でした。 id:yutailang0119 です、誕生日のお祝いありがとうございます! はてなエンジニア Advent Calendar 2023は、去年に引き続き、期間を通常のアドベントカレンダーの2倍の50日として、開催しました。 本日が最終日です。 これまでのまとめ はてなエンジニア Advent Calendar 2022往復しました! - Hatena Developer Blog はてなエンジニア Advent Calendar 2021完走しました! - Hatena Developer Blog はてなエンジニア

                                    はてなエンジニア Advent Calendar 2023往復しました! - Hatena Developer Blog
                                  • Epigrams in Programming | Computer Science

                                    1. One man’s constant is another man’s variable. 2. Functions delay binding; data structures induce binding. Moral: Structure data late in the programming process. 3. Syntactic sugar causes cancer of the semicolon. 4. Every program is a part of some other program and rarely fits. 5. If a program manipulates a large amount of data, it does so in a small number of ways. 6. Symmetry is a complexity-r

                                    • building-software.md

                                      building-software.md Some thoughts on building software Lately I have been busy reading some new books on Domain Driven Design (DDD) and software architecture -- including a short yet eye-opening one in Python and a great one in F#. At the same time, it seems that more people in the Functional Programming world are looking at more formal approaches to modelling -- some examples here. This has brou

                                        building-software.md
                                      • 出版社を作って4年が経ちました - golden-luckyの日記

                                        ラムダノートという出版社を作って4年が経ちました。 www.lambdanote.com 去年に引き続き、今年もちょっとふりかえりをしてみます。 この記事はラムダノートの技術 Advent Calendar 2019の25日めのエントリーです。 第4期(2018年12月~2019年11月)のふりかえり 『n月刊ラムダノート』はじめました 今年は『n月刊ラムダノート』という不定期刊行誌を3月に発行し始めました。 去年のふりかえりで第4期の目標として掲げていた「単発の本じゃない形で濃い技術情報をお届けする新企画」は、これのことです。 ぶっちゃけ、技術書、読むの大変じゃないですか? 正直なところ、作るほうもかなり大変です。 技術書に限らず、いま出版社が次々に新刊を出しているのは、半ば商売を維持するためという構造的な側面があります(それだけが理由ではないです)。 読む人も作る人もさまざまな無理感を

                                          出版社を作って4年が経ちました - golden-luckyの日記
                                        • Emacs Timeline

                                          Forked from JWZ to add new releases beyond 2007. Sources: - GNU Emacs releases - XEmacs releases - SXEmacs releases 1976 TECMAC and TMACS a pair of "TECO-macro realtime editors." by Guy Steele, Dave Moon, Richard Greenblatt, Charles Frankston, et al. | | 1976 EMACS by Richard Stallman, Guy Steele, EINE (EINE Is Not EMACS) and Dave Moon. by Dan Weinreb. Merger of TECMAC and TMACS, plus for MIT Lisp

                                          • Emacsと暦 - Qiita

                                            はじめに 本記事は、Emacs のカレンダー機能・天文計算ツールの簡単な紹介、Emacsでサポートされている世界の暦、また本フレームワークを使った、和暦の実装を試みと、その際に気づいた注意点を紹介します。また「またアジア各国の旧暦に関する雑学」についても触れています。 世界の暦 世界には様々な暦が存在します。 人類が月の満ち欠けを意識し、農耕・牧畜、そして宗教祭礼を始めた頃から、一年のうち、どの時期に何をするかを記録することは、社会生活を営む上で重要となり、そこから暦の概念は始まったと考えられます。 その中でもグレゴリオ暦は、世界的に共通の暦として使われ、日本でも多くの年中行事の基準となっています。 しかし、欧米を除いて単一の暦を使っている国はあまり多くはなく、ほとんどの国が、ローカルな暦とグレゴリオ暦を併用しています。グレゴリオ暦のみを使っている日本は、欧米以外では数少ない例外です。 た

                                              Emacsと暦 - Qiita
                                            • ありそうでなかった!Power Appsから直接SharePointのドキュメントライブラリにアップロードするコンポーネントを作成する - Qiita

                                              Table( { FileType: "accdb", Extention: "accdb" }, { FileType: "accdb", Extention: "mdb" }, { FileType: "archive", Extention: "7z" }, { FileType: "archive", Extention: "ace" }, { FileType: "archive", Extention: "arc" }, { FileType: "archive", Extention: "arj" }, { FileType: "archive", Extention: "dmg" }, { FileType: "archive", Extention: "gz" }, { FileType: "archive", Extention: "iso" }, { FileType

                                                ありそうでなかった!Power Appsから直接SharePointのドキュメントライブラリにアップロードするコンポーネントを作成する - Qiita
                                              • 1から始める Juliaプログラミング | コロナ社

                                                「Pythonのように書けて,Cのように動く」新しいプログラミング言語Juliaの基本的な文法や使い方から,実践的な内容として,標準ライブラリには含まれない数値計算やデータの可視化などのパッケージの活用まで解説する。 ◆対象者◆ * Juliaに興味を持ち,初めて触れるプログラミング学習者 * 科学技術計算を高速かつ手軽に行いたい学生や研究者 ◆書籍の特徴◆ Juliaは2012年に開発版が公開され,2018年に安定版のバージョン1.0がリリースされた新しいプログラミング言語である。JuliaはPythonやRなどのスクリプト言語のように手軽に使用できながら,Cなどの高速なプログラミング言語にも匹敵する実行速度をもち,科学技術計算分野を中心に大きな注目を集めている。2019年には,米国の工業・応用数学に関する学会であるSIAM(Society for Industrial and Appl

                                                  1から始める Juliaプログラミング | コロナ社
                                                • XMLをLisp評価器で実行する - golden-luckyの日記

                                                  昨日は、ドキュメントとは木であり、その木はXML、さらにいうとXMLアプリケーションとして形作られる、という話をしました。 一般にドキュメントは、生のままの構造として読み手に与えられるものではありません。 ドキュメントの構造が何らかのXMLアプリケーションであれば、本来はそのスキーマに従って解釈し、しかるべきスタイルを適用することになります。 ここで、しばしば厄介になるのは、XMLアプリケーションのスキーマを正しく扱うのはなかなか大変だということです。 そもそも、プロプラなXMLアプリケーションだと、スキーマの定義が手に入らない場合もあります。 そういった「野良XMLをどうやって扱うか」が今日からの話題です。 でもその前に、昨日の記事の最後で紹介したSXMLについて雑に補足しておきます。 XMLをSXMLに引き写すことで見える景色 さて、昨日はSXMLという技術を紹介しました。 SXMLの

                                                    XMLをLisp評価器で実行する - golden-luckyの日記
                                                  • 日本政府発のJavaScriptライブラリを勝手にweb標準化するプロジェクト、全角-半角統一コンポーネントのESモジュール/Deno対応版公開

                                                    全角半角という言葉は、パソコン普及前夜のワープロ時代の遺物。「住所を全角で入れてください」など、優しくないお願いは排除し、必要な処理はプログラムでしましょう。 日本政府、経済産業省(経産省)から「IMI 情報共有基盤 コンポーネントツール」が発表されました。 5つ星オープンデータの語彙を定める「共通語彙基盤IMI」に関連したオープンソースなJavaScriptで作られたツール群です。 Node.js を前提に作られていますが、ブラウザや Deno で動かしたいので、ひとまず簡単そうな「全角-半角統一コンポーネント」を移植。インストール不要で下記のようにすっきり使えるものができました!(src on GitHub) $ cat > main.mjs import IMIMojiConverter from "https://code4sabae.github.io/imi-moji-conv

                                                      日本政府発のJavaScriptライブラリを勝手にweb標準化するプロジェクト、全角-半角統一コンポーネントのESモジュール/Deno対応版公開
                                                    • プログラミング言語を一つ学んだら別の言語も簡単に習得できるという考えは正しいのか? | スラド デベロッパー

                                                      ミシガン大学教授のMark Guzdial氏は、同業のコンピューターサイエンス(CS)の教育者二人から、最初のコースでプログラミング言語を気にする必要はない。学生が概念をしっかり学んでいれば、次に学ぶ言語では最初に学習した言語の知識を応用できるとする意見を聞いたという。しかし、Mark Guzdial氏本人は、過去の経験などから二つ目の言語習得はそう簡単ではないとして、先の二人とは異なる考えを持っている(Mark Guzdial氏のブログ、GIGAZINE)。 LISPやMICRO-PLANNERのように、基本的な概念が全く異なる第二言語の学習は、第一言語の学習と同等かそれ以上に難しい可能性が高い。学生がデータサイエンティストになりたいのであれば、C言語を学ぶよりもRやPythonを学ぶ方が合理的だ。こうしたことから、Mark Guzdial氏は、「なぜ最初に学ぶプログラミング言語は重要で

                                                      • ポエム(短歌)でWebAssembyの低レイヤーに入門 - Qiita

                                                        WebAssembly(WASM)のバイトコードやスタックマシンに対する解説が少なかったので、一つガツンと低レイヤーの入門記事を書こうかなと思いました!3句ほど詠んでマニアックなWASMの世界に最速で旅立ちましょう。 WebAssembly自体の楽しみな展望や意義については末尾に書かせてもらいますので、そっちから読んでもらっても構いません! まず、WASMには3つの形態があります。 ①WAT(.wat) これはLispっぽい感じの人が読み書きできるWASMの形で、WASMの高級言語版です。 ②WAST(.wast) これはほぼ機械語のWASMの表記です。アセンブリ言語っぽいのはこちらで、WATはこれにシンタックスシュガーを加えた形になります。 ③WASM(.wasm) これがWASMの機械語バイナリです。コンパイル後の形であり、C言語、Rust、Go言語、WATなどからコンパイルでき、ブラ

                                                          ポエム(短歌)でWebAssembyの低レイヤーに入門 - Qiita
                                                        • VContainer v0.0.1 - Unity用の速くて軽いDIライブラリをリリースしました - @hadashiA

                                                          github.com Unity (ゲームエンジン) で動作する自作DIライブラリを公開しました。 特徴は、 速くて薄くて軽い GCゴミがとても少ない コードファーストでスコープを切れる機能 (Autofac の影響) MonoBehaviourに依存しないカスタムクラスをUnityのライフサイクルに割り込ませる (Zenjectの影響甚大) 独自の PlayerLoopSystem のサブシステムを利用しているので、不特定タイミングでつくったスコープの IInitializable とかも動作する。 コンテナがイミュータブル なのです。 Zenject と比較すると、メソッドチェインをつなげるとなんでも宣言できる(Fluent API) は最低限に、使い方の迷いようがなく透明度の高いAPI を心掛けています。 APIの比較表をつくりました Scopeの親子関係はある程度(ていうかかなり)

                                                            VContainer v0.0.1 - Unity用の速くて軽いDIライブラリをリリースしました - @hadashiA
                                                          • useStateはなぜ値を保持できるのかもう1回考える - Qiita

                                                            はじめに こんにちは。 株式会社HRBrainでフロントエンジニアをしている塚本です。 この記事はHRBrain Advent Calendar 2023の3日目の記事です。 useStateってずっと使っていて、なんとなく使えてしまっているが、 改めて考えるとどのような原理で動いているフックなのかよくわかっていないな〜と思ったので調べてみました。 この記事で書くこと レキシカルスコープとダイナミックスコープ クロージャー ガベージコレクション Reactのhooksの実装の簡単な内容 この記事で書かないこと fiberなどを始めとする、Reactの詳細な実装内容 公式のドキュメントに書いてあること まずは公式のドキュメントを見てみましょう。 公式ではuseStateをどのように説明しているのでしょうか? useState は、コンポーネントに state 変数 を追加するための Reac

                                                              useStateはなぜ値を保持できるのかもう1回考える - Qiita
                                                            • Haskellライクな構文をEgisonに実装している話 - momologue

                                                              これは言語実装Advent Calendar 2019の2日目の記事です。 私は少し前から、楽天技術研究所でEgisonの開発アルバイトをしています。入社してから初めての大きなプロジェクトとしてEgisonの構文を新しくするというのを担当しているので、その紹介と、設計/実装で悩んだ(でいる)ことなどを書こうと思います。 Egisonとは Egisonについて聞いたことがないという人はとりあえず公式サイトを見てほしいのですが、概要としては 表現力豊かなパターンマッチ(非線形パターン*1など) (上のパターンマッチを利用して実装された)数式処理システム を強みとし、プログラムや数式を簡潔に記述できることに重きを置いているプログラミング言語です。 これまでEgisonはS式(Lispのようなカッコが多い文法)の構文を持っていましたが、Lispに習熟している人を除く大抵の人にとってはS式はあまり読

                                                                Haskellライクな構文をEgisonに実装している話 - momologue
                                                              • 私が取り組んだこと(原文:<a href="http://www.paulgraham.com/worked.html">What I Worked On</a>)

                                                                私が取り組んだこと(原文:What I Worked On) 2021年2月 大学に入る前は、学校以外でやっていたことといえば、文章を書くこととプログラミングでした。エッセイは書きませんでした。当時も、そしておそらく今でも、書き始めの作家が書くことになっているものといえば短編小説です。私はそれを書いていました。私の物語はひどいものでした。筋書きはほとんどなく、ただ強い感情を持った登場人物がいるだけで、それが物語に深みを持たせていると想像していました。 私が最初に書こうとしたプログラムは、学区が当時「データ処理」と呼ばれていたことに使っていたIBM 1401のものでした。それは9年生のときですから、私は13歳か14歳でした。学区の1401はたまたま中学校の地下にあり、友人のリッチ・ドレイブスと私はそれを使う許可を得ました。そこはまるでボンドの悪役の隠れ家のようで、CPU、ディスクドライブ、プ

                                                                • Going REPLing with Haskeline

                                                                  October 31, 2024 A twenty-six minute read 11 💬 3 🗣️ ❤️ 14 🔁 Tags: programmingprogramming-languagesinterpretershaskell So you went ahead and created a new programming language, with an AST, a parser, and an interpreter. And now you hate how you have to write the programs in your new language in files to run them? You need a REPL! In this post, we’ll create a shiny REPL with lots of nice features

                                                                    Going REPLing with Haskeline
                                                                  • Clojure: the Lisp that wants to spread — Simon Gray's blog

                                                                    NOTE: this blog post was originally published on my Github pages. At the time, it generated a lot of discussion on Hacker News. From its humble beginnings, Clojure was always meant to be a “hosted” language. It is important to note that while the Clojure of today is definitely a tightly integrated JVM (Java Virtual Machine) language, there were always multiple implementations of Clojure. The langu

                                                                    • (glisp)

                                                                      A Lisp-based Design Tool Bridging Graphic Design and Computational Arts

                                                                        (glisp)
                                                                      • Lispはなぜ神の言語と呼ばれるのか - SEむううみんのプログラミングパラダイス

                                                                        古から存在するプログラミング言語Lisp。その通り名の一つに「神の言語」というものがある。 なんという甘美な響きだろうか。この名前だけで男子中学生は全員習得することを決心するだろう。そのくらいインパクトのある名前である。文部科学省はプログラミング教育を推進するにあたって、この通り名を公式に採用することを真剣に検討されると良いと思う。 さて、「神の言語」の勉強を始めてみて驚くだろう。どのあたりが神なのかよくわからないのだ。たしかに丸括弧は多い。多いが、それと神との関連性はよくわからない。 何か土着の信仰の話なのだろうか?あなたがそう戸惑うのも無理からぬことだ。 私自身、前からこのフレーズは聞いたことがあったが、あまり理解していなかった。そこで今回改めて調べてみたので共有しようと思う。 「神の言語」の由来 そもそも、Lispは神の言語だと誰が言い出したのか?どうやら海外でそのような歌が作られた

                                                                        • 【プログラミング言語速度比較】Collatz数列ベンチマークを言語別比較しよー! - 競プロメモ

                                                                          Collatz ベンチマーク 目次 Collatz ベンチマーク 目次 追記(2021/02/23) Collatz 数列とは やること 計測方法 ベンチマーク結果 結果表 編集履歴 感想 基本的に最速クラス 癖がある最速クラス 準最速クラス まぁまぁ早いクラス 普通クラス やや遅いクラス ビリ う 笑 言語別実装 Rust メモ化版 Rust C++ 編集前 編集後 Java Kotlin Scala Haskell CSharp Python & PyPy Crystal Golang JavaScript Fortran Ruby D 言語 Bash Swift Objective-C C 通常版 アセンブリ修正版 Bc Perl Php Vim Awk Lua Pascal Visual Basic Raku(Perl6) dc Nim Nim(uint) Cython Cytho

                                                                            【プログラミング言語速度比較】Collatz数列ベンチマークを言語別比較しよー! - 競プロメモ
                                                                          • Org modeでレポートを書こう

                                                                            みなさんおはようございます。Fourmsushiです。 Markdownでレポート書いてPandocで変換してるそこのお前! LaTeX直書きで疲弊してるそこのお前! Wordで特に不自由してないそこのお前! Org modeをつかってみようぜ!! Org modeって何だよスパゲッティか? スパゲッティではない。 Org modeはEmacsの拡張のひとつで、文書作成からTODOリストから簡単な表計算までこなせるすごいやつです。 また、公式サイトにはこのように書かれています。 Org-mode は、ノートの保存、TODOリストの管理、プロジェクト計画、文書編集のためのモードです。 高速で効率的なプレーンテキストのシステムを使ってファイルを編集します。 適当に言ってしまえばMarkdownのようなやつということになります。 驚くべきことに、iCalendar、HTML、LaTeX、PDF、

                                                                              Org modeでレポートを書こう
                                                                            • Unix/Linux シェル考古学 ~シェルスクリプトが本物のプログラミング言語である理由~ - Qiita

                                                                              はじめに タイトルは「Unix考古学」のパクリですがこの記事と直接の関係はありません。Unix 誕生時点のシェルから POSIX シェルが策定されるまでのシェルの歴史を調べてみました。サブタイトルが微妙にタイトルとずれてる感じがするかもしれませんが、この記事はもともとシェルスクリプトは何を目指して設計された言語なのか疑問になって調べ始めたものだからです。時々「シェルスクリプトじゃなくて本物のプログラミング言語で書くべきだ」というような話を目にしますが、実際はシェルスクリプトはプログラミング言語なのか?そうではないのか?なので、むしろサブタイトルのほうが本題です。 ソースは wikipedia(日本語版は情報が古いので主に英語版)およびそこからの外部リンクなどを適当に調べてまとめたものです。内容に疑問に感じる場合は独自で調べるのをおすすめします。ちなみに ~sven_mascheck/ はお

                                                                                Unix/Linux シェル考古学 ~シェルスクリプトが本物のプログラミング言語である理由~ - Qiita
                                                                              • A Lisp Interpreter Implemented in Conway’s Game of Life

                                                                                Lisp in Life is a Lisp interpreter implemented in Conway’s Game of Life. The entire pattern is viewable on the browser here. To the best of my knowledge, this is the first time a high-level programming language was interpreted in Conway’s Game of Life. Running Lisp on the Game of Life Lisp is a language with a simple and elegant design, having an extensive ability to express sophisticated ideas as

                                                                                  A Lisp Interpreter Implemented in Conway’s Game of Life
                                                                                • プログラミング言語における再帰の初出はLISPではなかった - Arantium Maestum

                                                                                  ポール・グレハムの記事の一つにWhat Makes Lisp Different?というものがある: www.paulgraham.com ポール・グレハムらしくよく書かれていて、C言語などと比較した場合のLispの特徴をうまく捉えているように思う。 その中の一つが Recursion. Recursion existed as a mathematical concept before Lisp of course, but Lisp was the first programming language to support it. (It's arguably implicit in making functions first class objects.) こうある通り、私も今まで深く考えたこともなく「プログラミングにおける再帰はLispが由来」と考えていたのだが、前回の記事を書く

                                                                                    プログラミング言語における再帰の初出はLISPではなかった - Arantium Maestum