$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Serialisp
Search
Niyarin
October 09, 2020
Programming
1
680
Serialisp
Serialize特化言語
Niyarin
October 09, 2020
Tweet
Share
More Decks by Niyarin
See All by Niyarin
Scheme用nREPLの開発(エラー出力の改善)
niyarin
0
160
bel lispの紹介
niyarin
0
760
nanopass-compiler-frameworkを使ってみました
niyarin
0
450
Gorgos-parser-combinator-written-in-scheme
niyarin
0
400
outputting-beautiful-s-expression
niyarin
0
400
Mongo DBとS式検索
niyarin
0
340
goodbye-python-repl
niyarin
0
380
SchemeのEphemeronとWeak Pairの説明
niyarin
0
1.1k
red-paren-scheme-rev-macro.pdf
niyarin
0
430
Other Decks in Programming
See All in Programming
ゲームの物理 剛体編
fadis
0
370
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
570
[AtCoder Conference 2025] LLMを使った業務AHCの上⼿な解き⽅
terryu16
3
520
Claude Codeの「Compacting Conversation」を体感50%減! CLAUDE.md + 8 Skills で挑むコンテキスト管理術
kmurahama
1
620
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
8
3.3k
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
340
大規模Cloud Native環境におけるFalcoの運用
owlinux1000
0
190
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
7
2.3k
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
izumin5210
3
850
Rediscover the Console - SymfonyCon Amsterdam 2025
chalasr
2
190
Graviton と Nitro と私
maroon1st
0
130
エディターってAIで操作できるんだぜ
kis9a
0
750
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
400
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
We Have a Design System, Now What?
morganepeng
54
7.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Speed Design
sergeychernyshev
33
1.4k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
190
We Are The Robots
honzajavorek
0
120
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
340
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
140
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Transcript
Serializeに特化した言語 「Serialisp」 Niyarin
Serialisp(未完成)の前提 JSONで表現される [“list”, 1, 2, 3] ・ClojureのCheshireを用いて書きやすくした ・常に変更時にコピーして(COW)オブジェクトを共有しない オブジェクトの比較もequal?なものだけ 循環参照もできない
closureもJSONで表現される {“args”:[x], “code”:x, “bindings”:{}} ・ローカル変数の変更は許容しない
Continuation in Serialisp Serialispは継続のシリアライズができる ・CPS(継続渡しスタイル) + closureのシリアライズ ・”強い”Scheme処理系に搭載されるような機能 Gambitとか ・活用する場面
継続ベースのアプリケーション(Kahua)とか ※ 継続を動かすためには環境情報を一部送る必要がある
Serialize copy GC 1.グローバルと現在の継続をJSONにして 好きな記憶領域に置く 2.システムを落とす & 再起動 3.記憶領域からJSONを読み込む Serialispはゴミ集めが楽
Serialispと永続性 記憶領域をMongoDBにする ・PCが落ちても容易に再開できる ・適宜再起動すればゴミ集め完了 ・DBと連動するアプリケーションもDBを意識せずかける ・緩和してRAMとハイブリットなモデルにする予定
Serialispを活用しよう? せっかく作った(ている)ので、実用したい Serialispは汎用向けではない (FFIと相性が悪いので) 私の妄想 ・JSON系 NOSQLクエリ言語 関数定義もDBに入っていて自由に定義できると良い ・汎用言語に組み込む JSONなので、組み込みやすい
永続性や継続を使える ・IPLD等を使って、ブロックチェーンとしてキャッシュを持つ 人に話したら返ってきたコメントなので詳しくは知らない