teliva VS concise-encoding

Compare teliva vs concise-encoding and see what are their differences.

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
teliva concise-encoding
11 22
162 255
- -
2.7 7.2
5 months ago 7 months ago
C ANTLR
GNU General Public License v3.0 or later GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

teliva

Posts with mentions or reviews of teliva. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-12-03.
  • Silver Bullet: Markdown-based extensible open source personal knowledge platform
    14 projects | news.ycombinator.com | 3 Dec 2022
    Thanks for reply and for have shared your project first!

    > I think we can refresh some the things that make it powerful with a fresh coat of paint, to make it more accessible to a “younger generation.”

    That's what scare me, again in general: I see regular small complaint of modern absurdity, posts like:

    - https://tiramisu.bearblog.dev/your-desktop-is-not-a-destinat... | https://news.ycombinator.com/item?id=33838697

    - https://mjg59.dreamwidth.org/61535.html

    - https://vermaden.wordpress.com/2022/02/07/epitaph-to-laptops...

    - https://rsapkf.org/weblog/q2z/

    - https://tomcritchlow.com/2022/04/21/new-rss/

    - https://jfm.carcosa.net/blog/computing/usenet/ | https://news.ycombinator.com/item?id=33510169

    - https://dianne.skoll.ca/projects/remind/ | https://news.ycombinator.com/item?id=28363453

    - https://github.com/akkartik/teliva

    - https://akiflow.com/

    - https://onezero.medium.com/the-document-metaphor-desktop-gui...

    - https://den.dev/blog/user-hostile-software/

    - https://www.charlieharrington.com/smart-phone-dumb-terminal/

    - https://mattmower.com/2021/08/02/what-we-lost/

    and COUNTLESS others, similarly many "new stuff"/innovations appear and are actually partial, limited and limiting solutions to problems already solved decades ago in a more broad and superior way.

    Emacs itself is a bit horrific in the sense that it's codebase is hard to be kept up by modern developers who have troubles knowing it, but at least represent the classic model. If we lost the memory of the past it will takes decades to reach the level of evolution we have already achieved witch is really a shame.

    Anytime I see new software, yours, LogSeq, some "new shiny file manager", Tiidly Wiki and so on, witch actually are a BIG effort to achieve something already existing with far less efforts thanks to an already made ecosystems who makes their development easier I have a sore smile: end users suffer from limits of modern software, DEVELOPERS suffer equally because craft something on top of modern systems it's equally terrible but we seems to be unable on one side to reach again a critical mass of users to being able to innovate again, on the other sides most people simply ignore the past so ignore what's lost.

    A stupid example: link an email in SB means essentially or support a specific MUA, tracking it's evolution since breaking changes might happen all the time or add an MUE inside SB. In Emacs it's just a simple function since anything is already there. In Plan 9 to cite a project often considered hostile from and to Emacs write an MUA is damn simple limiting mails to Plan 9 itself, an MUA it's just a specific viewer of some text stream read form some user-configured filesystems mounts and so on.

    The sore part is that's I can easy state the above, even in my poor English, but I have no practical solution because resurrecting the classic model for present times demand an effort ONLY a public funded body or a large community can made. We have dismissed "for business reasons" essentially all public research and we have essentially pushed to irrelevance all communities...

  • 10 Years Against Division of Labor in Software
    5 projects | news.ycombinator.com | 22 Jan 2022
    I question the need for scale in 90% of the places where the tech industry has cargo-culted it. Clearly I'm still failing to articulate this. Perhaps https://news.ycombinator.com/item?id=30019146#30040616 will help triangulate on what I mean.

    > Can you clarify what you see as the alternative? Implementing everything from scratch seems absurd and so costly that there’s no point in considering this an actual option.

    Not using, reimplementing and copying are the closest thing to solutions I have right now. You're right that they're not applicable to most people in their current context. I have a day job in tech and have to deal with some cognitive dissonance every day between my day job and my open source research. The one thing I have found valuable to take to my scale-obsessed tech job is to constantly be suspicious of dependencies and constantly ask if the operational burdens justify some new feature. Just switching mindset that way from software as asset to software as liability has, I'd like to believe, helped my org's decision-making.

    > We have probably invested dev-millennia into managing copies. This is exactly what source control does. This is not a new area of investment. Merging is a giant pain in the ass and very possibly always will be. Accepting merge pain better come with some huge benefits.

    Not all copying is the same. We've learned to copy the letter 'e' so well in our writings that we don't even think about it. In this context, even if I made a tool to make copying easier and merges more reliable, that would just cause people to take on more dependencies which defeats the whole point of understanding dependencies. So tooling would be counter-productive in that direction. The direction I want to focus on is: how can we help people understand the software they've copied into their applications? _That_ is the place where I want tooling to focus. Copying is just an implementation detail, a first, imperfect, heuristic coping mechanism for going from the world we have today to the world I want to move to that has 1000x more forks and 1000x more eyeballs looking at source code. You can see some (very toy) efforts in this direction at https://github.com/akkartik/teliva

    > It’s untenable to have, e.g., everyone who works on Windows be an expert in every part of the code.

    It's frustrating to say one thing in response to counter-argument A and have someone then bring up counter-argument B because I didn't talk about it right there in the response to counter-argument A. I think this is what Plato was talking about when he ranted about the problems with the newfangled technology of writing: https://newlearningonline.com/literacies/chapter-1/socrates-.... I'm not saying everyone needs to be an expert in everything. I'm saying software should reduce the pressure on people to be experts so that we can late-bind experts to domains. Not every software sub-system should need expertise at the scale at which it is used in every possible context. My Linux laptop doesn't need to be optimized to the hilt the way Google's server farms do. Using the same scheduling algo or whatever in my laptop imposes real costs on my ability to understand my computer, without giving me the benefits Google gets from the algo.

  • dwm
    8 projects | news.ycombinator.com | 14 Jan 2022
    There are options between those possibilities, though. Here's my preferred point[1] in the state space:

    It's impossible for people to effectively use software over the long term without learning about its internals. Software can help people learn about its internals.

    https://github.com/akkartik/teliva#readme

  • Ask HN: Who Wants to Collaborate?
    58 projects | news.ycombinator.com | 1 Jan 2022
    I work on ways to write programs that help outsiders understand their big picture (rather than insiders understand incoming contributions).

    The goal: you (any programmer) should be able to use an open-source program, get an idea for a simple tweak, open it up, orient yourself, and make the change you visualized -- all in a single afternoon.

    More details: http://akkartik.name/about

    What I have so far: https://github.com/akkartik/teliva

    Lately I'm spending a lot of time on the sandboxing model. It's nice to be able to download and run untrusted programs. How to permit this without letting them cause too much damage, by explicitly giving them arbitrarily fine-grained permissions that are still easy to take in at a glance.

  • A small, hackable, text-mode browser for the Gemini protocol. Built on my platform for small, hackable, text-mode apps.
    1 project | /r/BarbarianProgramming | 22 Dec 2021
    Main project page: https://github.com/akkartik/teliva
  • Mu: A Human-Scale Computer
    4 projects | news.ycombinator.com | 8 Dec 2021
    It's hard. Building Mu has given me more of a flavor for just how hard it is. Some limitations of Mu:

    * It still requires firmware. There's a whole lot of C down there. How deep do you want to go?

    * No mouse. This is just my own ignorance. I can't get the damn IRQs and interrupts figured out.

    * Doesn't work yet on real hardware. I live in Qemu. Debugging that is a whole new set of skills I need to learn.

    * No networking, almost no persistent storage. Mu has a very simple and slow driver for ATA disks, but that probably won't suffice on most real-world machine configurations. There's 0 network drivers right now. I probably need a dozen to get any sort of coverage.

    The stuff you mentioned around graphics and OS file dialogs, that feels easier once you're willing to put up with constraints like Mu's 1024x768 and so on. But yeah, there's major challenges on this road.

    Partly due to these challenges, I've actually started to hedge my bets and make some compromises. My new project is https://github.com/akkartik/teliva which doesn't try to eliminate C, just minimize it. Linux kernel, libc, Lua (12k lines of C), some libraries for https. A gemini client is actually on my todo list there. I think I have everything I need to build it.

  • Hacking the planet with Notcurses: a guide to TUIs (2020) [pdf]
    4 projects | news.ycombinator.com | 5 Dec 2021
    with chromatic backgrounds deserve whatever happens to them."

    That's a lot of cognitive dissonance in a work about UI design. Let's try to do better in making TUIs mainstream. That requires encouraging people to use the few features terminals _do_ provide.

    I've been doing a fair amount of ncurses hacking recently[1], and I prefer to always explicitly specify colors. People won't get their preferred colors by default, but they'll always get a legible configuration by default.

    [1] https://github.com/akkartik/teliva

  • Fork of Lua 5.1 to encourage end-user programming
    1 project | /r/lua | 15 Nov 2021
  • Teliva – an environment for end-user programming
    5 projects | news.ycombinator.com | 15 Nov 2021
  • Teliva: A Runtime for Text-mode Lua Apps that Supports Modifying them
    1 project | /r/BarbarianProgramming | 14 Nov 2021
    Repo

concise-encoding

Posts with mentions or reviews of concise-encoding. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-07.
  • Ask HN: What Underrated Open Source Project Deserves More Recognition?
    63 projects | news.ycombinator.com | 7 Mar 2024
  • It's Time for a Change: Datetime.utcnow() Is Now Deprecated
    5 projects | news.ycombinator.com | 19 Nov 2023
    "Local time" is time zone metadata. I've written a fair bit about timekeeping, because the context of what you're capturing becomes very important: https://github.com/kstenerud/concise-encoding/blob/master/ce...
  • RFC 3339 vs. ISO 8601
    4 projects | news.ycombinator.com | 31 Aug 2023
    This is basically why I ended up rolling my own text date format for Concise Encoding: https://github.com/kstenerud/concise-encoding/blob/master/ct...

    ISO 8601 and RFC 3339 are fine for dates in the past, but they're not great as a general time format.

  • Ask HN: Please critique my metalanguage: “Dogma”
    2 projects | news.ycombinator.com | 26 Feb 2023
    This looks similar to https://concise-encoding.org/

    Dogma was developed as a consequence of trying to describe Concise Binary Encoding. The CBE spec used to look like the preserves binary spec, full of hex values, tables and various ad-hoc illustrations: https://preserves.dev/preserves-binary.html

    Now the CBE formal description looks like this: https://github.com/kstenerud/concise-encoding/blob/master/cb...

    And the regular documentation looks like this: https://github.com/kstenerud/concise-encoding/blob/master/cb...

    Dogma also does text formats (Concise Encoding has a text and binary format, so I needed a metalanguage that could do both in order to make it less jarring for a reader):

    https://github.com/kstenerud/concise-encoding/blob/master/ct...

    https://github.com/kstenerud/concise-encoding/blob/master/ct...

  • Concise Encoding Design Document
    1 project | news.ycombinator.com | 7 Nov 2022
  • Keep ’Em Coming: Why Your First Ideas Aren’t Always the Best
    2 projects | news.ycombinator.com | 7 Nov 2022
    Hey thanks for taking the time to critique!

    I actually do have an ANTLR file that is about 90% of the way there ( https://github.com/kstenerud/concise-encoding/tree/master/an... ), so I could use those as a basis...

    One thing I'm not sure about is how to define a BNF rule that says for example: "An identifier is a series of characters from unicode categories Cf, L, M, N, and these specific symbol characters". BNF feels very ASCII-centric...

  • Working in the software industry, circa 1989 – Jim Grey
    5 projects | news.ycombinator.com | 11 Jul 2022
    It's still in the prerelease stage, but v1 will be released later this year. I'm mostly getting hits from China since they tend to be a lot more worried about security. I expect the rest of the world to catch on to the gaping security holes of JSON and friends in the next few years as the more sophisticated actors start taking advantage of them. For example https://github.com/kstenerud/concise-encoding/blob/master/ce...

    There are still a few things to do:

    - Update enctool (https://github.com/kstenerud/enctool) to integrate https://cuelang.org so that there's at least a command line schema validator for CE.

    - Update the grammar file (https://github.com/kstenerud/concise-encoding/tree/master/an...) because it's a bit out of date.

    - Revamp the compliance tests to be themselves written in Concise Encoding (for example https://github.com/kstenerud/go-concise-encoding/blob/master... but I'll be simplifying the format some more). That way, we can run the same tests on all CE implementations instead of everyone coming up with their own. I'll move the test definitions to their own repo when they're done and then you can just submodule it.

    I'm thinking that they should look more like:

        c1
  • Breaking our Latin-1 assumptions
    2 projects | news.ycombinator.com | 18 Jun 2022
    Ugh Unicode has been the bane of my existence trying to write a text format spec. I started by trying to forbid certain characters to keep files editable and avoid Unicode rendering exploits (like hiding text, or making structured text behave differently than it looks), but in the end it became so much like herding cats that I had to just settle on https://github.com/kstenerud/concise-encoding/blob/master/ct...

    Basically allow everything except some separators, most control chars, and some lookalike characters (which have to be updated as more characters are added to Unicode). It's not as clean as I'd like, but it's at least manageable this way.

  • I accidentally used YAML.parse instead of JSON.parse, and it worked?
    8 projects | news.ycombinator.com | 23 Jan 2022
    You might get a kick out of Concise Encoding then (shameless plug). It focuses on security and consistency of behavior.

    https://concise-encoding.org/

    In particular:

    * How to deal with unrepresentable values: https://github.com/kstenerud/concise-encoding/blob/master/ce...

    * Mandatory limits and security considerations: https://github.com/kstenerud/concise-encoding/blob/master/ce...

    * Consistent error classification and processing: https://github.com/kstenerud/concise-encoding/blob/master/ce...

  • Ask HN: Who Wants to Collaborate?
    58 projects | news.ycombinator.com | 1 Jan 2022
    In the above example, `&a:` means mark the next object and give it symbolic identifier "a". `$a` means look up the reference to symbolic identifier "a". So this is a map whose "recusive link" key is a pointer to the map itself. How this data is represented internally by the receiver of such a document (a table, a struct, etc) is up to the implementation.

    > - Time zones: ASN.1 supports ISO 8601 time types, including specification of local or UTC time.

    Yes, this is the major failing of ISO 8601: They don't have true time zones. It only uses UTC offsets, which are a bad idea for so many reasons. https://github.com/kstenerud/concise-encoding/blob/master/ce...

    > - Bin + txt: Again, I'm unclear on what you mean here, but ASN.1 has both binary and text-based encodings

    Ah cool, didn't know about those.

    > - Versioned: Also a little unclear to me

    The intent is to specify the exact document formatting that the decoder can expect. For example we could in theory decide make CBE version 2 a bit-oriented format instead of byte-oriented in order to save space at the cost of processing time. It would be completely unreadable to a CBE 1 decoder, but since the document starts with 0x83 0x02 instead of 0x83 0x01, a CBE 1 decoder would say "I can't decode this" and a CBE 2 decoder would say "I can decode this".

    With documents versioned to the spec, we can change even the fundamental structure of the format to deal with ANYTHING that might come up in future. Maybe a new security flaw in CBE 1 is discovered. Maybe a new data type becomes so popular that it would be crazy not to include it, etc. This avoids polluting the simpler encodings with deprecated types and bloating the format.

What are some alternatives?

When comparing teliva and concise-encoding you can also consider the following projects:

mu - Soul of a tiny new machine. More thorough tests → More comprehensible and rewrite-friendly software → More resilient society.

cue - The home of the CUE language! Validate and define text-based and dynamic configuration

pharo - The Sources for Pharo

joystick - A full-stack JavaScript framework for building stable, easy-to-maintain apps and websites.

dwm-flexipatch - A dwm build with preprocessor directives to decide which patches to include during build time

postal-codes-json-xml-csv - Collection of postal codes in different formats, ready for importing.

awayto - Awayto is a curated development platform, producing great value with minimal investment. With all the ways there are to reach a solution, it's important to understand the landscape of tools to use.

futurecoder - 100% free and interactive Python course for beginners

Rectangle - Move and resize windows on macOS with keyboard shortcuts and snap areas

FrameworkBenchmarks - Source for the TechEmpower Framework Benchmarks project

Typesense - Open Source alternative to Algolia + Pinecone and an Easier-to-Use alternative to ElasticSearch ⚡ 🔍 ✨ Fast, typo tolerant, in-memory fuzzy Search Engine for building delightful search experiences

cue - CUE has moved to https://github.com/cue-lang/cue