Viewing profile — yiransheng
yiransheng
HN member- Joined
- Sun, Feb 03, 2013, 1:38 AM UTC
- HN karma
- 1,489
- Public activity
- 286 items
- HN profile
- View on Hacker News ↗
About yiransheng
No profile information was provided.
Recent public activity
-
comment
Comment #38743573
Trying to compile Basic is actually a bit trickier than just implementing an interpreter indeed. Like the FOR statement example you mentioned. Another messy situation is non-lexica…
-
comment
Comment #35634576
What you described is called Continuum hypothesis[1]. Surprisingly it cannot be proven to be either true or false from(is independent of) ZFC set theory. [1] https://en.m.wikipedia…
-
comment
Comment #21369532
This number is the result of a "large number duel"[1] between MIT Associate Professor Agustin Rayo (The Mexican Multiplier) and Princeton Associate Professor Adam N. Elga (Dr. Evil…
- story
- story
- story
- story
-
comment
Comment #18863145
I would recommend check out urealms[1]. It is a improv/role playing show running on rules similar (but simplifed) DnD rules. The format is a group of twitch personalities steam the…
-
comment
Comment #18822977
Oh nice. I have been writing a BASIC bytecode interpreter (and a compiler for WebAssembly)[1] in Rust. It's a bit slower to get rolling than Python - especially function value repr…
-
comment
Comment #18671802
Hooks reminds me of tensorflow scopes a little bit, in python: with tf.variable_scope("foo"): with tf.variable_scope("bar"): v = tf.get_variable("v", [1]) assert v.name == "foo/bar…
- story
- story
- story
-
comment
Comment #16733050
In this case, I think Java's lack of tuples adds quite a bit of syntactic noise, a similar version in rust (another language with method chaining based iterators): let generated: V…
-
comment
Comment #16732940
Really impressed! Took a quick look at page source, a couple of observations on why it's fast: 1. Plain, small html - page size is 6.1 kb (request took 700ms for me, I guess the se…
-
comment
Comment #16732881
The list of niceties of lua from the article: > First class functions and closures > A versatile data structure: the table > Vararg expressions > Lexical scoping > Iterators > Coro…
-
comment
Comment #16694920
Interesting mention of create-subscription[1], first time I have heard of such a library/api. Seems it's part of official react repo. Looks like a great piece of utility for interf…
-
comment
Comment #16653853
Finally, `d3.create`[1] - it has been a minor pain pointer in d3 to create a detached selection for quite some time :) [1] https://github.com/d3/d3-selection/blob/master/README.md#…
-
comment
Comment #16550183
Prettier is such an awesome tool! The best part of it is formatting jsx code - being a mixture of xml and js code, formatting it manually is such a pain. Incidentally, the existenc…
-
comment
Comment #16398256
Some personal thoughts: the key for me at least, is a bit like the hammer-nail mentality. An software engineer for example has a (small) mathematical toolkit (a hammer), sometimes …
- story
-
comment
Comment #16137628
In languages like Haskell and Scala that supports `do` / `for` comprehension sugar, this could be done without the nesting: fn :: Maybe Int -> Maybe Int -> Int fn q z = fromMaybe 0…
-
comment
Comment #15289088
In FP world, there's a somewhat advanced solution to this, Free Monad DSL/Interpreter pattern. I first found out about it in this talk: [ https://www.youtube.com/watch?v=fU8eKoakd6…
-
comment
Comment #15100546
ES6+ javaScript in absorbed many great features from python: destructuring vs. tuple unpacking, spread (...) vs *args argument unpacking and generators. Many things I enjoyed in py…
-
comment
Comment #14675651
Inheritance based OOP models tree-like entites well, where hirachy is defined and clear cut. Unfortunately, lots of real life domains are best expressed by graphs - commonly a DAG.…