6 ms·
I don't want my programming language to "implement" task queues and charge me for it. What is this edit: people seem to be getting hung up on the "runtime" v "
by catlover76 3y ago
I don't want my programming language to "implement" task queues and charge me for it. What is this
edit: people seem to be getting hung up on the "runtime" v "programming language" distinction. I'm not sure why--it's weird to me that this is "part of the language + runtime" at all. Clearly, reasonable people can disagree about that, but hopefully on points more substantive than pedantic
If tomorrow, someone started a for-profit company making a faster Python runtime and introduced features like this, it would be weird, and it would feel as pointless to me as Deno is
- snapetom 3y agoIt's an ad.
- vorticalbox 3y agoYou're getting charged for the replication of deno kv across all regions when you use deno.deploy. KV is free to use locally as I assume this will be too.
- shafyy 3y agoSure, but genuine question: How easy it is to run my own infrastructure for Deno Queue, and, crucially, how can I know that it will still be as easy and transparent in 5 years from now when the VCs want to see some $$$. That the company developing Deno and the services that monetize Deno is the same is a major conflict of interest. And if history is of any guide, in the end economic incentives always win, no matter how good-hearted people are.
- LostLocalMan 3y agoIf Deno doesn't get adequate funding, the company developing Deno will not exist 5 years from now.
- skybrian 3y agoWhen imagining future scenarios, maybe don't get too fixated on one? Another possibility is that competitive service providers will implement the same services. (It didn't really happen with App Engine, but this seems like a cleaner API?)
- skybrian 3y agoI guess I remembered it incorrectly? This looks pretty good: > Deno KV databases are replicated across at least 6 data centers, spanning 3 regions (US, Europe, and Asia). Once a write operation is committed, its mutations are persistently stored in a minimum of two data centers within the primary region. Asynchronous replication typically transfers these mutations to the other two regions in under 10 seconds. https://docs.deno.com/kv/manual/on_deploy https://docs.deno.com/kv/manual/on_deploy
- deleted 3y ago[deleted]
- norman784 3y agoLast time I checked deno was a runtime not a programming language
- 015a 3y ago'.deno' files are not drop-in compatible with any other typescript-esque runtime, which I think is a reasonable enough bar to say that its a different programming language. And not just because of the standard library; Deno supports e.g. URL-based import paths, which have very low support in other ECMAScript-ish languages like Node. Generally: the terms "programming language" and "runtime" are synonymous. There are a few examples where this is not the case (Javascript is definitely the best one; Java/JDK; python). There are hobbyist runtime re-implementations of some languages. But generally: Only academics worry about differentiating them.
- Exoristos 3y agoNode is not a language.
- herpdyderp 3y agoand browsers, the other main JS runtime, is certainly not a language either.
- 015a 3y agoSince you're going to be pedantic, I will be too. Language is more than syntax. Language is the combination of Syntax and Meaning; its a system of communication. The word "Fooloofol" is syntactically correct English, but meaningless within the English language; and thus is not English. The english word "bark" is syntactically identical across more than one meaning; a dog barks next to the tree bark. Language isn't just syntax; its the entire system of understanding. The statement "fetch("https://example.com https://example.com")" is syntactically valid in any ECMAScript-compatible language. Its also syntactically correct Python, Go, Rust, and probably a few other languages as well. But: it is not meaningfully correct code in many of the runtimes which implement that language. It was only valid in NodeJS after version 18, after all. What you're really asserting is: Node is not a syntax. That's more accurate; but still inaccurate. Node does have its own syntax. For example; if you were to execute "await myFunc()" in NodeJS v6, you would get a syntax error. So, if Node isn't a syntax; what syntax does it use? JavaScript? By what definition? ECMAScript? Certainly a subset of the global standard, or a version of the standard released in the past. They're quite bad at keeping up. 99% syntactic compatibility with another syntax is still a different syntax; and thus it has its own syntax. The old "you're writing HTML and CSS, that's not programming" runs in a similar vein. It is programming, by any reasonable definition of programming. You're instructing a computer to do something. The real assertion is that its not procedural programming; which seems like a pretty dumb differentiation to lose sleep over to me.
- local_crmdgeon 3y agoThat's great, because JS (and TS, for Deno) doesn't do that. This is just a runtime feature of the engine.
- paxys 3y agoYou don't have to use their hosted service.
- 015a 3y agoThey actually have zero documentation I can find for using DenoKV outside of the Deno Deploy environment. It may be possible, or you can always use Deno without using DenoKV, but I think the statement "you have to use their hosted service" isn't inaccurate.
- paxys 3y agoLiterally on the home page (https://deno.com/kv https://deno.com/kv). > Don't want to use Deno Deploy? Deno KV works on any VPS, so you can deploy to your favorite cloud hosting service.
- 015a 3y agoMarketing sites are not documentation.
- samjmck 3y agoThe first page of their documentation [0] mentions this: > Opening a database > In your Deno program, you can get a reference to a KV database using Deno.openKv(). You may pass in an optional file system path to where you'd like to store your database, otherwise one will be created for you based on the current working directory of your script. In fact, only the last page in the documentation speaks about KV on Deno Deploy. [1] https://docs.deno.com/kv/manual#opening-a-database https://docs.deno.com/kv/manual#opening-a-database
- 015a 3y agoPassing a path to the local filesystem for the SQLite database only applies to local development; it does not speak to how to connect to e.g. a remote-hosted FoundationDB cluster. But, I think this section hints at how it could be done [1]. Its phrased in the context of connecting to the DenoKV-hosted database from outside Deno Deploy, but it seems like the reverse could also be accomplished with the same API. [1] https://docs.deno.com/kv/manual/on_deploy#connect-to-managed-databases-from-outside-of-deno-deploy https://docs.deno.com/kv/manual/on_deploy#connect-to-managed...
- robertlagrant 3y ago> If tomorrow, someone started a for-profit company making a faster Python runtime and introduced features like this, it would be weird, and it would feel as pointless to me as Deno is That's not really what Deno is. It's more vertical than purely a Python runtime-equivalent. Having said that, the CPython runtime includes SQLite, so it's not far off anyway.
- catlover76 3y ago> That's not really what Deno is. It's more vertical than purely a Python runtime-equivalent. Can you explain further? Thanks
- robertlagrant 3y agoSure - e.g. it comes with a web server built in, ready to make web apps with a quick Deno.serve. It's seems oriented in a certain direction.