This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2019-11-22
Channels
- # announcements (2)
- # babashka (64)
- # beginners (41)
- # calva (4)
- # cider (1)
- # clj-kondo (78)
- # cljdoc (31)
- # cljsrn (4)
- # clojars (2)
- # clojure (109)
- # clojure-germany (1)
- # clojure-italy (8)
- # clojure-nl (2)
- # clojure-spec (8)
- # clojure-uk (28)
- # clojurescript (61)
- # code-reviews (2)
- # cryogen (2)
- # cursive (23)
- # datomic (21)
- # duct (15)
- # fulcro (37)
- # graalvm (17)
- # graphql (3)
- # jackdaw (3)
- # joker (11)
- # lein-figwheel (4)
- # malli (42)
- # off-topic (97)
- # pathom (4)
- # pedestal (1)
- # portkey (3)
- # re-frame (7)
- # reagent (13)
- # reitit (2)
- # shadow-cljs (54)
- # spacemacs (1)
I've been wondering whether space-time is continuous, and from whatever little research is done, it seems like the science hasn't settled yet, but evidence points towards it being continuous.
wondered similarly off and on. no resolution, but fun thoughts come about. e.g. perhaps continuity is actually an approximation method that happens to work well when things are actually discrete, but the numbers involved are vast.
What does that do to the epochal time model?
Is the epochal time model then saying, regardless of whatever the physical nature of space-time might be, us humans can only work on epochs and so it makes sense to model time in our programs this way?
Small enough epochs are effectively continuous. Regardless of the actual nature of things, itβs probably going to be keep being fine to model time as epochal.
Yup. That's what I was thinking. Epochal model is good more because humans work that way than reality being that way.
It is contended point though: https://www.youtube.com/watch?v=j3Q32brCUAI
After watching the conj talk about piggy
, I now see some of what Rich Hickey meant in questioning the way spec does function specification. Lemme explain using the same example as in the talk:
Let's say we are writing +
, and have said, "give me some integers and I'll give you an integer back", and then later wanted our function to also work with floats, saying "give me some numbers and I'll give you a number back", despite being accretion, cannot be proven so because we weakened our promise of returning an integer to now returning a number. Spec-checking code cannot understand the fact that, if I call + with integers, I will get back an integer.
Parameterized types will make this easier, but won't account for mixed types. We want to be able to say "the input is a sequence of numbers" but also say, "if you give me only integers, then I'll give you an integer, but if there is one of more floats in the arguments, then you'll get a float back". This becomes even more complicated with ratios involved.
I have no idea what the answer is.
I also remember Rich saying something like: "So do not go crazy if you cannot completely spec the entire nature of your inner algorithm, because sometimes it is challenging." Maybe I am going too far and hoping spec will become some sort of compatibility-proving system. What do y'all think?
Sorry for being this verbose. I couldn't put it any better.
I am not sure what you mean by "despite being accretion, cannot be proven". If you mean, "cannot be proven automatically by a proof tool that exists today", then agreed. If you mean "cannot be proven in any way at all, in principle", then I don't see why you say that.
Yes. Automatic was what I meant. I was thinking if a specification system that can, given two spec'ced fns, old and new, guarantee that new won't break old. But after some more thinking, I feel "guarantee" is a strong word, and will come down to the halting problem.
If a spec does not use user-defined functions, then I am pretty sure it is a decidable problem. Rich Hickey mentioned the decidability of the problem "is regular expression A a subset of regular expression B?" in early talks on Clojure spec as a reason for using regular expressions in spec.
Granted that lots of interesting specs do use user-defined functions, and then things get undecidable very easily.
They certainly get much much more difficult to recognize the decidable ones in an automated proof tool.
you picked a well known problem involving extension of the category of integers to reals. With a conversion function βcβ from reals to integers and the natural transformation c(r1) + c(r2) = c(r1 + r2) we have the essentials for our proof.
It seems that someone who knew the implementation of + well enough could prove that if you give it only integers, it returns an integer (or bigint).
It also seems that if you did want to go crazy writing precise function specs, you could spec + to return a value satisfying int? if all of its arguments satisfied int?, else if there was at least one ratio in the args, then return ratio, else if there was at least one double in the args, return double, etc.
Off topic. What I noted: there usually was some Twitter Clojure drama just a few weeks before the conj a few years in a row. This year I didn't notice such a thing (which is good of course). I wonder if something has changed. Maybe the people who were dissatisfied have now left, or more transparancy through Alex's blogs have helped give more insight in what Cognitect is doing at the moment and where their priorities are.
Or the timing of the drama was coincidental?
Maybe Autumn/Winter also makes people more vulnerable to moodiness and Twitter drama
Well the cold makes them stay indoors more, and reduced social interaction plus more time on a computer will increase the chances of being on twitter in a not so great mood.
I want to see if this idea holds true statistically for all things on twitter.. :thinking_face:
Does anyone has a nice setup for this? You have a PC at home (linux, or Windows) and want remote desktop access on your laptop (in my case Macbook) no matter where you are (so has to work outside of home). What software do you use for this?
I could maybe use https://www.zerotier.com/ for this, no idea if it's fast enough for remote desktop type of work
too paranoid to try these things π i think another direction is to put stuff remotely to begin with.
iiuc, you want access to certain computing facilities no matter where you are. for some situations, putting those facilities in a data-center (or equivalent, e.g. linode, paperspace, etc.) to begin with means you don't put your home network at as much risk. may be it doesn't work for your situation though.
Do you want Remote Desktop or just shell access?
Self-hostable Remote Desktop tooling https://guacamole.apache.org/
let us know if you find anything that works for you @U04V15CAJ! The only remote desktop I use these days is TeamViewer to support my parentsβ mac (free for non commercial use).
I also use that for my parents π. I haven't actually bought a PC yet, but I'm just looking for options
@U04V15CAJ zerotier ftw! I use it extensively I also use wireguard too
@U11EL3P9U Is zerotier fast enough for a remote desktop connection over the internets?
I've used it for VNC into my mac (when I need it) - without any discernable difference
But, I would lean towards wireguard - I have absolutely no metrics or emperical evidence to support this, but wireguard feels a bit quicker.
It's been a while 'tho since I need my mac for anything, since all my dev and day-to-day stuff happens on Linux π
I've used ZeroTier before and it worked well, but I haven't used it with loads of data
of course, but let's assume the wifi I'm at is fast and my home's internet connection is also fast (500 mbit up/down)
i guess if things involved don't use any 3rd party one should be able to compare the speeds directly
@U11EL3P9U thanks for mentioning wireguard, hadn't heard of it π
ssh / shell access is probably a lot gentler on data usage, so that may be the first approach
+1 for Wireguard. I run my own VPN servers on Digital Ocean and itβs speedy. As far as hosting a Wireguard server at home: I already use Home Assistant and Wireguard is available as an add-on in http://hass.io https://community.home-assistant.io/t/community-hass-io-add-on-wireguard/134662
@U04V15CAJ, the last time I tried to remote desktop to a mac for work was a few years ago. I did not have a speedy internet connection like you do. I found VNC based solutions too sluggish and at the time hunted around for an RDP solution, and (I think) I settled on iRAAP (now out of business). If you want to try an RDP host solution you might dig into https://www.nuords.com (note that I've not tried this one).
it's still hypothetical, but some of the work in the company I work for is very RAM hungry
i agree with lread that the remote stuff (for desktop access) tends to be better for windows these days -- mac has not steadily improved here in my experience. i use xfreerdp to access a windows box from *nix.
I think Microsoft has an RDP client for macOS... if you are connecting from mac to windows.
Contemplating trying out https://shadow.tech/usen/ for remote windows gaming from my mac. They offer iOS, Android, and Desktop apps to access machines and it is access to a decked out windows machine.
iiuc, there is a gaming option, but there is (or used to be) an option to just connect to a box which you can do other things with
for reference, i started hearing about these things on http://fast.ai as folks there care about access to a gpu
when you go with the hosted option, you don't control the fine details of hardware, but may get upgrades down the line and can pay for more or less sometimes as your needs change. you don't have to worry as much about hardware obsolence, security, etc. i think it really depends.
@U04V15CAJ It's a full windows box so you could do gaming, which is probably the broadest market to appeal to but I've heard accounts of people using it for CPU intensive tasks like video editing. I find the price compelling as you get a pretty decent machine for less than the initial build cost and it gets upgraded over time. However, I haven't pulled the trigger yet.