並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 10 件 / 10件

新着順 人気順

Prologの検索結果1 - 10 件 / 10件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

Prologに関するエントリは10件あります。 プログラミングブラウザネタ などが関連タグです。 人気エントリには 『Prolog で SPA を書く - Qiita』などがあります。
  • Prolog で SPA を書く - Qiita

    "Prolog" を知っていますか? "Prolog" (プロログ) というのは、古くからあるプログラミング言語のひとつで、1972 年に開発されました。 Prolog はオブジェクト指向や関数型とも違う、"論理プログラミング言語"という枠に分類されています。 面白いことに、Prolog プログラミングにおいては、手続き型言語のように、コンピュータに動作の手順を教えるのとは違うやり方をします。 Prolog コードとして、"事実 (fact)"と"規則 (rule)"を記述するのです (下記例)。 % [事実 (fact)] ソクラテスは人である。 human(socrates). % [規則 (rule)] 人は死ぬ。 mortal(X) :- human(X). こうして記述された Prolog プログラムコードを、Prolog の処理系が読み込んだのち、ユーザーは処理系に対して "問

      Prolog で SPA を書く - Qiita
    • PHP: Prolog Home Page

      PHP: Web Framework Of The Future powered by trealla prolog "php: a fractal of good design" PHP stands for Prolog Home Page. PHP is Prolog implemented in C, compiled to Wasm, speaking CGI Wasm components, executed by a Rust runtime, interpreting PHP-style templates open source: github.com/guregu/php examples Trealla Prolog playground ✨ Run Trealla straight from your browser! USER TESTIMONIALS "Dear

      • GitHub - ichiban/prolog: The only reasonable scripting engine for Go.

        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

          GitHub - ichiban/prolog: The only reasonable scripting engine for Go.
        • AtCoder に登録したら解くべき精選過去問 10 問を Prolog で解いてみた - Qiita

          プロローグ @drken さんの記事 AtCoder に登録したら次にやること ~ これだけ解けば十分闘える!過去問精選 10 問 ~ にて紹介されている過去問精選 10 問を、論理型プログラミング言語 Prolog で解いてみました。 問題はこちらから見られます。 AtCoder Beginners Selection さらに、AtCoder Beginners Selection、通称 ABS は有志たちによって既に 40 以上の言語で解かれており、そちらを見ても楽しめると思います。 百花繚乱!なないろ言語で競技プログラミングをする資料まとめ 注意点 2019 年 2 月現在、Prolog は AtCoder の使用可能言語に含まれていません。 ファイル一つにまとまったインタプリタも見つからなかったので、提出によるテストはしておらず、サンプルケースをこちら側で試すだけとなっています。

            AtCoder に登録したら解くべき精選過去問 10 問を Prolog で解いてみた - Qiita
          • Prolog で実装するモデル検査器の心臓部 - Qiita

            この記事では Prolog を使ったモデル検査器の実装を紹介します。 モデル検査器は、プログラムやアルゴリズムについて主に次の2つの性質の検証を目的としています: 望ましい状態にいつかなる たとえば、いつかロックを獲得できる、いつか全ノードの状態が一致する、… 望ましくない状態に陥らない たとえば、デッドロックにならない、結果が不定にならない、… 上記の性質の検証はいずれも従来のテストでは難しく、ここにモデル検査が活躍できる余地があります。このうち、今回はデッドロックを検知するプログラムを実装します。 このプログラムでは、検査対象のプログラムやアルゴリズムの取りうる状態を洗い出し、ここにまずいものが含まれていないことを検査します。まずは状態の洗い出しから説明します。 状態の洗い出し 今回の実装ではプログラムの状態を変数と実行位置の2つに絞り、これらの変化を調べていきます。 たとえば、以下の

              Prolog で実装するモデル検査器の心臓部 - Qiita
            • Portable PrologをCommon Lispで動かした

              Portable PrologをCommon Lispで動かした bit 1982年05月号『Prolog入門(2)』に Portable PrologというLISPで書かれた小さなProlog処理系が載っている。 “Portable” という名前の通り色々な環境で動かすことを前提としており、 ほぼLISP 1.5の機能のみで書かれているため移植が簡単にできるようになっている。 これを少し書き換えてCommon Lispで動かした。 移植の方針 今回は「もとのプログラムを極力書き換えない」という方針で移植することにした。 コードを読んでいると prog を let に書き換えたり、 cond を when に書き換えたりしたくなるような箇所が多々あるが、 そういった気持ちをぐっとこらえ、最小限の変更のみを行った。 実際に変更した箇所 もとのコードが150行ほど。 これに対して変更したのが1

              • Goのスクリプト言語としてPrologを使う

                2021/02/27に公開したものを使用ライブラリのバージョンアップに追従する形で更新した はじめに Goのスクリプト言語としてPrologを使えるようにする ichiban/prolog を作ったので実際にGoのプログラムに埋め込む例を示す 埋め込みの例(kagome) KagomeはGoのみで書かれた形態素解析器で、かんたんに日本語文を形態素に分割するものだが、これをPrologにする例を通して ichiban/prolog の使い方を説明する この例での go.mod は以下のとおり module github.com/ichiban/kagomelog go 1.15 require ( github.com/ichiban/prolog v0.3.0 github.com/ikawaha/kagome-dict/ipa v1.0.4 github.com/ikawaha/kago

                  Goのスクリプト言語としてPrologを使う
                • python 3.8.2でprologを動かしてみた - Qiita

                  「pyswip便利なんだけどpython 3に対応してないからな~泣」という声をネットのどこかで見かけたので、 「python3.8.2でもpyswipちゃんと動いたよ」という報告をしようと思い、この記事を書いた。 蛇足だが、予言者でもない限り、「python3でも動く」とは確かに言えない。python3.8.2で動いても、python3.8.3以降で動く論理的な保証はどこにもないからだ。 1. pip install pyswip 2. 次のコードを実行 from pyswip import Prolog p = Prolog() p.assertz("father(michael, john)") p.assertz("father(michael, gina)") for s in p.query("father(X,Y)"): print(s["X"], "is the fathe

                    python 3.8.2でprologを動かしてみた - Qiita
                  • アフィン型をPrologで実装してみた - Qiita

                    この記事は言語実装 Advent Calendar 2020の16日目の記事です。 Prologに慣れていない人のためにPrologでの単相の型システムを示し、線形型システムであるSystem-Fo(Fポップ)およびアフィン型システムSystem-Fa(Fアフィン)を実装例を示します。 アフィン型システムというとRustのオーナーシップの型システムが近いのですが、Rustのような型システムの本質的部分を取り出して実装したものがアフィン型システムです。難解な型システムの数式は嫌がらせのように感じるかもしれませんが、Prologを使えば実際に動かせるのでより理解しやすいものになっているはずです。 1. 単相型システムとlet多相型システム まずは、Prologで単純な型推論を作ってみます: % simple.pl :- op(500,yfx,$),op(600,xfy,:),op(600,xf

                      アフィン型をPrologで実装してみた - Qiita
                    • Prolog入門

                      Prologとは Prologは「事物(Object)」と事物間の「関係(relation)」に関する 問題を解くために使われるプログラミング言語。 プログラムを「宣言的に」表現できる。他の言語では「手続き的に」表現している。 自然言語解析や、理解、推論などの人工知能の分野で有効。 PROgramming in LOGics が名前の由来 一階述語論理に基づいている。 1970年頃、フランスの Alain Colmerauer (アラン・コルメロエ)によって 開発された。(自然言語の解析をするQ-Systemが基となった。) Prologプログラム Prologのプログラムは次の3つの要素から成る。 事実: 事物とその関係についていくつかの事実を宣言すること。 規則: 事物とその関係についての規則を定義すること。 質問: 事物とその関係について質問すること。 事実 「taro likes

                      1

                      新着記事