サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
ドラクエ3
chrisseaton.com
Someone on Reddit asked if it was possible to turn off overflow checking on integer arithmetic in Ruby. They said that they could guarantee that their arithmetic would not overflow, and therefore they’d like to not pay the cost for a pointless check. As several people said in the thread, this isn’t possible in the standard implementation of Ruby, MRI, but it is possible and safe in TruffleRuby. An
These are the notes for a talk I gave at RubyKaigi 2021, which is why they’re written as if we were talking and going through some slides and code together. Hello I’m Chris Seaton. I’m a Senior Staff Engineer at Shopify where I’m working on Ruby performance. I’m the founder of TruffleRuby, which is a very highly optimizing implementation of Ruby. I also maintain The Ruby Bibliography at rubybib.or
There’s a proposal to add Software Transactional Memory, or STM, to the Ruby programming language. This is part of a wider effort to add better support for concurrency and parallelism in Ruby, and in particular the idea of ractors. A concept has been proposed and implemented by Koichi Sasada. An animation of the algorithm we're going to use as an example of STM - we'll explain this later on This a
A few weeks ago, Takashi Kokubun, one of the people working on the new just-in-time compilers being developed for Ruby, asked me about how TruffleRuby was able to detect if optimised code that is already running was no longer valid without any branching. This blog post explains what he is asking about, how Ruby implementations currently solve the problem, the technique TruffleRuby uses to solve th
These are the notes for a talk I gave at JokerConf 2017, which is why they’re written as if we were talking and going through some slides together. One of the reasons that I’m a programming language researcher is that almost everyone I meet in the the wider computer technology community uses programming languages and many of them are interested in how they work. When I was first introduced to prog
Informal Abstract People who write Ruby programs want to use metaprogramming. It’s part of what makes the language what it is. But in existing implementations of Ruby, metaprogramming is slow. My work focused on making it fast, providing fast tooling for Ruby programmers, and fast support for legacy C extensions. The techniques had a very significant impact on synthetic benchmarks and real-world c
Introduction Most of us would like to have a faster implementation of Ruby. As a language it generally sits at the bottom of performance tables, and although some people claim that this doesn’t matter because their Ruby code is IO bound and they write performance critical parts in other languages such as C or Java, wouldn’t it be nice if you didn’t have to do that and Ruby could be both high perfo
TruffleRuby started as my internship project at Oracle Labs in early 2013. It is an implementation of the Ruby programming language on the JVM, using the Graal dynamic compiler and the Truffle AST interpreter framework. TruffleRuby can achieve peak performance well beyond that possible in JRuby at the same time as being a significantly simpler system. In early 2014 it was open sourced and integrat
Katahdin is a programming language where the syntax and semantics are mutable at runtime. It was the 2007 master’s project of Chris Seaton at the University of Bristol Department of Computer Science, under the supervision of Dr Henk Muller. Katahdin employs the theory of parsing expression grammars and packrat parsing. Unlike other contemporary work, Katahdin applies these techniques at runtime to
このページを最初にブックマークしてみませんか?
『chrisseaton.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く