・
はじめに 2017年の終わりごろ、にわかに人々の耳目を驚かし、少しづつ人口に膾炙しはじめたバーチャルユーチューバ(VTuber)というものたちがいる。動画では、3Dあるいは2Dモデルのキャラクタが動き、企画やトークを行なっている。それらは、あらかじめ決められた演技を行うような3Dアニメーションとはあるていど異なっている。というのも、それらのキャラクタの動きは、演者の意図した動きから、不随意な動きまでもトラッキングすることで生成され、たとえば、ライブ放送においては、演者とキャラクタの動きのリアルタイムな同期が行われているからだ。それらはアニメーションにおけるフィクショナルキャラクタのようでもあり、また、Twitterやライブ放送でのオーディエンスと双方向的なコミュニケーションを行う様子からすると実在の人物のようでもある。 バーチャルということばにこと寄せて、実在しないが実質的に存在するような
何の話かというと 先日、 www.jst.go.jp ・・・というプレスリリースのタイトルを見て、 本当に 1qbit だけで動作する(有意な)計算モデルがあるのか!? と一瞬驚愕したのですが、よくよく論文を読んでみると、「初期状態を 0 に設定できるのが 1qbit だけで、その他の n qbit はランダムに初期化される」という量子計算モデル(DQC-1)についての話だと分かりました。 (参考)Impossibility of Classically Simulating One-Clean-Qubit Computation というわけで、冒頭のタイトルは私の中で、「(1量子ビットを除いて)ランダムに初期化される量子ビットを用いて(古典コンピューターではシミュレーションが困難と考えられる)有意な量子計算を実行するテクニックが考案された」というタイトルに脳内変換されて納得したわけですが
磁石の性質がある曲がった金属に、電気を流すだけで温度が上がったり下がったりする現象を世界で初めて観測したと、日本の物質・材料研究機構などのグループが発表し、コンピューターの新しい冷却技術などにつながる可能性があると注目されています。 その結果、金属の曲がっている部分で、温度がわずかに上がったり、下がったりして、電流が増えるほどその度合いが増す現象を世界で初めて観測しました。 グループによりますと、この現象は50年以上前に存在が予測されていましたが、これまで観測された例はなく、電気を熱に変える研究の進展やコンピューターの新しい冷却技術などにつながる可能性があると注目されています。 物質・材料研究機構の内田健一グループリーダーは「ニッケルという身近な材料にも、まだ、新しい物理現象が眠っているんだと驚きました。電気を流すだけで、振動も騒音もなく小さいところに組み込めるので、新しい熱制御の原理につ
Linear Logic for Constructive Mathematics Posted by Mike Shulman Intuitionistic logic, i.e. logic without the principle of excluded middle (P∨¬PP \vee \neg P), is important for many reasons. One is that it arises naturally as the internal logic of toposes and more general categories. Another is that it is the logic traditionally used by constructive mathematicians — mathematicians following Brouwe
Free Monoidal Functors, Categorically! Posted by Bartosz Milewski under Category Theory [14] Comments Functors from a monoidal category C to Set form a monoidal category with Day convolution as product. A monoid in this category is a lax monoidal functor. We define an initial algebra using a higher order functor and show that it corresponds to a free lax monoidal functor. Recently I’ve been obsess
Account Suspended This Account has been suspended. Contact your hosting provider for more information.
the morning paper a random walk through Computer Science research, by Adrian Colyer Made delightfully fast by strattic Semantics and complexity of GraphQL Hartig & Pérez, WWW’18 (If you don’t have ACM Digital Library access, the paper can be accessed either by following the link above directly from The Morning Paper blog site, or from the WWW 2018 proceedings page). GraphQL has been gathering good
Is F* ready for its first F* vs ‘pick your favourite language or proof assistant’ flame war? Can it take on heavyweights such as Haskell and Coq? Its list of supported features is full of imaginative PL jargon such as polymorphism, dependent types, user-defined monadic effects, refinement types, weakest precondition calculus, predicative hierarchy of universes with universe polymorphism, rich type
Previously this week, the awesome “Matt Of Lambda” published a blog post about the benefits of using ghcid to develop Haskell applications; if you haven’t checked it out, it is an excellent read on how to get started with something like REPL driven development Personally, I’ve always have used GHCi for development, from trivial tasks like checking my types and experiment with code to running my te
Let's teach about our passion I'm building books. But, by teaching, I'm also building a community. Teaching is building. - Julie Moronuki, co-author of Haskell Programming from first principles One day, all Haskell programmers outgrow tutorials. Haddock is more than enough, right? Haskell is awesome enough to have some very expressive types that tell you how to work your way through the library th
Introduction This blog started off life as a blog post on how I use nix but somehow transformed itself into a “how I do data visualisation” blog post. The nix is still here though quietly doing its work in the background. Suppose you want to analyze your local election results and visualize them using a choropleth but you’d like to use Haskell. You could try using the shapefile package but you wil
Rubyコミッター・Yuguiに学ぶ、コードに書くべき「適切なコメント」と「適切な場所」 Rubyコミッター・園田裕貴(Yugui)さんが、長年の経験で体得したソースコードに書くべき「コメントの技法」を教えてくれました。 プログラミングにおいて、どんな初心者でも書けるけれど、適切に書くのは上級者でないと難しいもの。それがコメント(=ソースコードに書かれている注釈やメモ)です。 不適切なコメントをつけても、プログラムの動作には影響しません。しかし、書き方の巧拙によって、コードの可読性や理解のしやすさには雲泥の差が出ます。良質なコメントが良質なコードをつくるのです。 今回はRubyコミッターでありgrpc-gatewayの開発者でもあるSupership株式会社の園田裕貴(Yugui)さんに、優れたエンジニアがどんな観点を持ち、どんなコメントを書いているのかを聞きました。 園田 裕貴(そのだ・
Selected example programs are available as showcases. An overview of all videos is available at: https://www.metalevel.at/prolog/videos/ For offline access, you can download this book from a public git repository: https://github.com/triska/the-power-of-prolog If you have any comments, suggestions or questions, you can also file them as issues in that repository. Recursion Main page
May 18, 2018 Compile Time Prevention of SQL-Injections in Rust SQL injection vulnerabilities have been a plague ever since such databases have been combined with user facing applications. Such vulnerabilities arise when a SQL query string is naively combined with data that is controlled by an attacker. To mitigate, people should make use of placeholders and prepared statements provided by SQL clie
Supercharge your Haskell development experience with ghcid! ghcid is – at the current moment – the most important tool for Haskell development environments. It is fast, reliable, works on all kinds of projects, and is remarkably versatile. You can use it with any editor workflow, primarily by not integrating your editor! (though there are integrations available if you’re brave) For these reasons,
n番煎じのよく使うGHC拡張の紹介Posted by mizunashi_mana on May 15, 2018Tags: GHC, Language Extensions Haskell1では各処理系で言語拡張を提供し,LANGUAGEプラグマというものを利用することで,言語拡張を利用することが許容されています.Haskellのデファクト標準的な処理系GHCも多くの言語拡張を提供しており,その拡張はGHC拡張と呼ばれています. 今回は,このGHC拡張の簡単な紹介と,個人的に良く使う拡張についての簡単な紹介を,全3回に分けて行いたいと思います.対象としては,GHCでHaskellプログラミングをしたことがあり,通常のHaskellの構文や動作方法が分かっている人を考えています.また,この記事はあくまで簡単な紹介に留めるもので,付随する留意点や詳細な機能説明は,大事な箇所は漏らさないよう注
A generational copying garbage collector, in its most basic form, is quite simple. However, as we’ll see, not all objects can be copied, and some objects require more bookkeeping by the RTS. In this post we’re going to look at these type of objects that require special treatment from the garbage collector (GC in short). For each type of object we’ll look at how they’re allocated and collected. Eac
#define __is_constexpr(x) \ (sizeof(int) == sizeof(*(8 ? ((void *)((long)(x) * 0l)) : (int *)8))) #include<stdio.h> #define Def 10 #define __is_constexpr(x) \ (sizeof(int) == sizeof(*(8 ? ((void *)((long)(x) * 0l)) : (int *)8))) enum test{Enum}; int main(){ int Val = 10; const int Const_val = 10; int a = __is_constexpr(Val); int b = __is_constexpr(Const_val); int c = __is_constexpr(10); int d = __
Let’s look at the unnecessary headers and see why we don’t need them, and what we can do about it. Vanity (server, x-powered-by, via) You may be very proud of your choice of server software, but most people couldn’t care less. At worst, these headers might be divulging sensitive data that makes your site easier to attack. Server: apache X-Powered-By: PHP/5.1.1 Via: 1.1 varnish, 1.1 squid RFC7231 a
May 14, 2018 Volume 16, issue 2 PDF Algorithms Behind Modern Storage Systems Different uses for read-optimized B-trees and write-optimized LSM-trees Alex Petrov The amounts of data processed by applications are constantly growing. With this growth, scaling storage becomes more challenging. Every database system has its own tradeoffs. Understanding them is crucial, as it helps in selecting the righ
TL;DR: The Rust compiler has gotten 1.06x–4x faster over the past month. As changes are made to the Rust compiler, a suite of benchmarks measuring compile time is run regularly on the development version. The data is viewable at http://perf.rust-lang.org. The default view is graphical, showing data from the past month. The screenshot above shows the graphs for a single benchmark called “html5ever”
This post summarizes the rough heuristics that I use for evaluating Haskell packages. Usually I use these rules of thumb when: choosing between multiple similar packages deciding whether to depend on a package at all Some of these guidelines work for other programming languages, too, but some of them are unique to Haskell. Even if you are a veteran programmer in another language you still might fi
五十嵐 淳 (京都大学大学院情報学研究科 通信情報システム専攻) 2017年11月17日 モジュールと実装の隠蔽 階層的名前空間の提供 実装の隠蔽 分割コンパイル (ocaml/bstModule2) 講義範囲を越えて [ 前の資料 | 講義ホームページ・トップ | 次の資料 ] モジュールと実装の隠蔽 モジュール(module) とは,工業製品などにおける規格化された構成単位を指すための用語である.要するに部品のことなのだが,この「規格化」というのは重要な点で,これによって例えば様々な会社が製造した部品を集めてひとつの大きな製品を作ることができるし.一部が故障しても簡単に交換することが可能になる.ソフトウェアにおいても,モジュールという用語はプログラム部品の構成単位を指していて,多くのプログラミング言語が,プログラムをモジュールの集まりとして構成するための支援機構を用意している.工業製品
Migrating to Actix Web from Rocket for Stability Published on: May 21, 2018 I previously wrote an article back in November 2017: Replacing Elasticsearch with Rust and SQLite. In it, I needed to create a few HTTP endpoints that ingested JSON, perform a database lookup, and return JSON. Very simple. No query / path parameters, authentication, authorization, H2, or TLS. Any v0.1 microframework would
I’ve been interested in SAT solvers for quite some time. These are programs that take a boolean formula and either find a variable assignment that makes the formula true or find a proof that this is impossible. As many difficult problems can be rephrased as the satisfiability of a suitable boolean formula, SAT solvers are incredibly versatile und useful. I’ve recently finished and now released a f
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く