[ANN] Convex - A Clojure-inspired Lisp for the Internet of Value
Convex is an open, decentralised platform for the Internet of Value - you can use it to create secure digital assets and implement applications involving secure value exchange using smart contracts. You can test it out with the live REPL, documentation and sandbox at our developer site: https://convex.world The native smart contract language is Convex Lisp - a new language heavily inspired by Clojure but built from the ground up to support decentralised applications and interactive online development. Some notable features: - Immutable, persistent data structures throughout. In fact - the entire global state of the Convex Virtual Machine (CVM) is a single persistent data structure. - Every user account gets its own independent namespace with REPL control (access secured with Ed25519 digital signatures) - Fully autonomous Actors executing smart contracts (can be used to implement digital assets, or potentially entire decentralised autonomous organisations) - Fully online development environment including runtime, libraries and compiler built into the decentralised network - no extra toolchains required! - All the usual power of Lisp: macros, functional programming etc. - Syntax and language idioms heavily inspired by Clojure Currently this is a public alpha release - we would love to get feedback and ideas from the Clojure community as we develop towards our production launch. We run a public discord server for those interested in joining the discussions or getting more involved: https://discord.gg/vBeh2S8 Convex is backed by the non-profit Convex Foundation, dedicated to creating a powerful open network for the Internet of Value. If you are interested in creating an open, fair, sustainable and equitable solution for value exchange in the digital economy of tomorrow we would welcome your support. Best regards, Mike and the Convex Team -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/clojure/c29019df-b199-4b90-9920-0856c66c5ad2n%40googlegroups.com.
Re: clojure.edn/read isn't spec compliant
On Wednesday, 21 October 2020 at 00:42:32 UTC+1 EuAndreh wrote: > But that doesn't apply to clojure.edn: it is code for a format with an > specification, and it goes against the specification. > Where in the specification does it say that the edn reader should throw exceptions on errors? -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/clojure/51bf5b5c-99b1-4c57-8969-b50a1bb1b5a2n%40googlegroups.com.
Re: clojure.edn/read isn't spec compliant
As someone who has spent a lot of time around standardization committees (eight years on ANSI X3J16 C++ and some time around the ANSI C work before that, as well as years of BSI work as well), here's how I view the EDN specification: it states what is valid or invalid, a compliant reader should parse valid input correctly, what a compliant reader does with invalid input is either not specified or it is undefined. This is very common in standards and specifications. C and C++ have undefined behavior (where the standard places no restrictions on what the system can do -- and does not require it be documented either!), implementation-defined behavior (where the standard allows systems to do what they want but it must be documented), and unspecified behavior (where the standard provides some guidelines but otherwise does not specify what a system should do, not is it necessarily required to be documented, but it is "defined" behavior somehow, e.g., order of evaluation of arguments). Undefined behavior is deliberately very broad: a system can silently accept erroneous input with any outcome it chooses or it can dump core or launch missiles. It's generally the user's responsibility to ensure they do not provide erroneous input. In the case of Clojure's EDN implementation, it makes sense to match the Clojure reader's behavior in cases where the EDN is "not valid" (i.e., does not have a defined meaning). In other EDN implementations, it might make more sense for EDN that has an undefined meaning to be rejected. If you find valid EDN that a particular EDN reader fails to process correctly, that's a bug. If you feed it invalid EDN, well, you may or may not get an error or a value or... On Tue, Oct 20, 2020 at 4:42 PM 'EuAndreh' via Clojure < clojure@googlegroups.com> wrote: > The speed over validation is only valid for Clojure's LispReader, not to > clojure.edn. I'm completely fine with Clojure's reader keeping all of > those weird behaviours, and many other more. > > But that doesn't apply to clojure.edn: it is code for a format with an > specification, and it goes against the specification. Having it be > faster or slower is less relevant in face of it not being correct, where > correct means "matches the specification". > > -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with > your first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en > --- > You received this message because you are subscribed to the Google Groups > "Clojure" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojure+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/clojure/87362bel34.fsf%40euandre.org. > -- Sean A Corfield -- (904) 302-SEAN An Architect's View -- https://corfield.org/ World Singles Networks, LLC. -- https://worldsinglesnetworks.com/ "Perfection is the enemy of the good." -- Gustave Flaubert, French realist novelist (1821-1880) -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/clojure/CAD4thx83wK_UcVv_jq7aGqiLFzRwi0PR0J-_M3Pf5eNzerSDPw%40mail.gmail.com.
Re: clojure.edn/read isn't spec compliant
The speed over validation is only valid for Clojure's LispReader, not to clojure.edn. I'm completely fine with Clojure's reader keeping all of those weird behaviours, and many other more. But that doesn't apply to clojure.edn: it is code for a format with an specification, and it goes against the specification. Having it be faster or slower is less relevant in face of it not being correct, where correct means "matches the specification". -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/clojure/87362bel34.fsf%40euandre.org.
Re: clojure.edn/read isn't spec compliant
Oops, part of the example lost formatting with word wrapping. Here's it in full: --8<---cut here---start->8--- ;; "Per the symbol rules above, :/ and :/anything are not legal keywords." [(edn/read-string ":/") ;; "It can be used once only in the middle of a symbol to separate the _prefix_ (often a namespace) from the _name_" (name (edn/read-string "a/b/c")) ;; specification doesn't talk about namespaced maps (edn/read-string "#:a{:k 1}")] [:/ "b/c" #:a{:k 1}] --8<---cut here---end--->8--- The text inside quotes are verbatim sections of the spec. -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/clojure/875z79dynx.fsf%40euandre.org.
Re: Mexico City Clojureists?
QuƩ tranza! :) On Tuesday, October 20, 2020 at 2:20:00 PM UTC-5 doyouun...@gmail.com wrote: > Wondering who is living/working in Mexico City? > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/clojure/ae972a0a-9aff-4b87-804b-5af969f99925n%40googlegroups.com.
Mexico City Clojureists?
Wondering who is living/working in Mexico City? -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/clojure/CACRoD4oktO_g%3DrNU40kc_axVLKF7An_9DWPuHz8jbi6G8F6jqw%40mail.gmail.com.