Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
tonyg
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
28 ms
·
331.
▲
by
tonyg
7y ago
> It _is_ much worse than the two-byte "overhead" of one s-exp node. I don't believe you. Atoms are roughly the same, and compounds, well: [1,2,3] vs (1 2 3) {"a":1,"b":2} vs (("a"1
332.
▲
by
tonyg
7y ago
Relevant: https://apenwarr.ca/log/20101214 . Code: https://github.com/apenwarr/redo . It's excellent!
333.
▲
WebAssembly in Redex
(asumu.xyz)
60 points
by
tonyg
7y ago
|
1 comments
334.
▲
by
tonyg
8y ago
It's exactly unlike a monadic option type. It's much more like null is in Java, C# etc. Every type gets a NULL value here, where in ML/Haskell/etc use of Option/Maybe/etc is explicit.
335.
▲
How to (and how not to) use seL4 IPC
(microkerneldude.wordpress.com)
1 points
by
tonyg
8y ago
|
0 comments
336.
▲
WebAssembly Troubles Part 2: Why Do We Need the Relooper Algorithm, Again?
(troubles.md)
4 points
by
tonyg
8y ago
|
0 comments
337.
▲
by
tonyg
8y ago
> Immutability [...] allows for computation to be divided more easily via referential transparency. Do you mean it allows computation to be parallelized more easily? Compared to what? How does "referential transparency" affect
338.
▲
Google Groups problems
(groups.google.com)
5 points
by
tonyg
8y ago
|
0 comments
339.
▲
by
tonyg
8y ago
Exactly. `Symbol.iteratorDone` would be a kind of "null" value. The existing approach is equivalent to returning Either<a,b> in a language with labelled sums; it carefully distinguishes between the envelope and the payload,
340.
▲
by
tonyg
8y ago
Blood-letting also has benefits in some cases! For example, venesection is a standard treatment for haemochromatosis: http://haemochromatosis.org.uk/haemochromatosis/treatment/
341.
▲
by
tonyg
8y ago
Smalltalk is three things in one. It is a language ; it embodies a language design idea ; and it is an operating system . Learning Smalltalk gives you three things: 1. An understanding of Smalltalk, the language. This is least essential.
342.
▲
Docker and kvm containers (from scratch) – redo: a recursive build system
(redo.readthedocs.io)
2 points
by
tonyg
8y ago
|
0 comments
343.
▲
by
tonyg
8y ago
The analogous would be the Go-style represent-a-sum-badly-as-a-product, struct nonzero_t { int is_negative; unsigned int one_less_than_the_absolute_value; }; which, under interpretation, ranges from -(2^32) to -1 and +1 to
344.
▲
by
tonyg
8y ago
It's perfectly possible in languages with ordinary ADTs. data Nat = Z | S Nat data NonZeroNat = OnePlus Nat data NonZeroInt = Negative NonZeroNat | Positive NonZeroNat
345.
▲
by
tonyg
8y ago
Add (pairs of) digits until it covers a small enough area.
346.
▲
by
tonyg
8y ago
The larger the alphabet, the larger the risk of glyph confusion. Here's the alphabet they chose: // The character set used to encode the values. var CODE_ALPHABET_ = '23456789CFGHJMPQRVWX'; It omits easily-
347.
▲
by
tonyg
8y ago
What's neat about this is its simplicity; its unencumbered nature; and its independence from any particular mapping or ontology beyond "a rectangularish portion of the surface of a sphere". One neat application is for biologi
348.
▲
by
tonyg
8y ago
The SecurityManager is an example of ambient authority, exactly the kind of design that the article is criticizing. There's at most one SecurityManager per application, meaning you can't in general use it for fine-grained confinem
349.
▲
by
tonyg
8y ago
I wrote up some notes on type reconstruction a few years back that you might find helpful: http://www.ccs.neu.edu/home/amal/course/7480-s12/inference-n...
350.
▲
by
tonyg
8y ago
Totally! And this, the idea of conversational implicature , and how we draw meaning from people's variously following or flouting the maxims, is one of the reasons Grice was thinking along these lines to begin with. He introduced the
351.
▲
by
tonyg
8y ago
See also: - https://cr.yp.to/daemontools/tai64n.html and - https://cr.yp.to/daemontools/tai64nlocal.html
352.
▲
by
tonyg
8y ago
It is still a research project, though I am working on a new implementation that brings it up to production standards. Re-frame does look similar, but Syndicate is general in the same way that the Actor model is general; DOM support and oth
353.
▲
by
tonyg
8y ago
Class Actor inherits from class Process, so Squeak's underlying process-switching machinery is in effect, complete with priorities, nonpreemption, any use of semaphores etc. It could in principle work in Pharo, and I did try to port it
354.
▲
by
tonyg
8y ago
(To nitpick: there's a heck of a lot of concurrency , a property of system design, language design, and problem domain, but not much parallelism , a property of the specific VM in use. Smalltalk systems are usually managing interacti
355.
▲
by
tonyg
8y ago
Where is the state? What changes in response to the send? Here, it'd be the cheese, so it'd make sense to have the cheese be the receiver; but a real answer comes from moving further toward the Actor perspective. Given a distribut
356.
▲
by
tonyg
8y ago
The performance tradeoffs are quite different, because this library uses the unmodified Smalltalk virtual machine that underlies Squeak. I would guess spawning is quite fast, because it is more-or-less just a few object allocations (plus
357.
▲
Actors for Squeak Smalltalk
(tonyg.github.io)
81 points
by
tonyg
8y ago
|
26 comments
358.
▲
by
tonyg
8y ago
Yes, exactly; also, there's an acknowledgement of the influence of "SMALL TALK" at the end of Hewitt, Bishop & Steiger's original 1973 IJCAI paper as it appeared in print ( https://eighty-twenty.org/20
359.
▲
by
tonyg
8y ago
Thanks for the pointers. Is LispWorks the only currently-available IDE you'd recommend? The example you've given runs very quickly in Racket; it completes in some vanishingly small fraction of a second. Perhaps you were running it
360.
▲
by
tonyg
8y ago
I'd be delighted to discover new (as in new-to-me), high-quality IDEs and GUI toolkits, especially those drawing on Smalltalk or CLIM heritage, if you have any recommendations. Which Lisp IDEs do you enjoy using?
More ›