RawParser
usql
RawParser | usql | |
---|---|---|
3 | 21 | |
8 | 8,634 | |
- | 0.9% | |
0.0 | 9.2 | |
almost 2 years ago | 6 days ago | |
C | Go | |
MIT License | MIT License |
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.
RawParser
-
Literate programming is much more than just commenting code
I have started working on a program that can parse Markdown files with fragments of C code and weave those fragments into a C program that can be compiled. For an example input, see https://github.com/FransFaase/RawParser#documentation
- Show HN: JWEB (a modern implementation of the CWEB Literate Programming system)
-
Show HN: Carburetta – C/C++ Fused Scanner and Parser Generator
The distinction between a scanner and a parser is somewhat arbitrary. One could use one and the same formalism for it. The scanner usually deals with things that are considered 'atomic' elements in the language, while grammar is used for 'compound' elements consisting of one or more other elements. If there are seen as one and the same, than it naturally flows that the scanner is called from the parser, and not how it is traditionally done, that the scanner acts as a first pass. This seems a logical approach, but in practices, when scanning is context sensitive, requires the implementation of all kinds of hacks. Also, the treatment of keywords (where it is possible that they are case insensitive) it is better to have a grammar for parsing a keyword 'identifier' and a check whether the result matches the keyword. For pure performance this would not be the best solution, but I understand that Carburetta is not design for that. I have been developing a parser that makes no distinction between scanning and parsing in C, which I called RawParser: https://github.com/FransFaase/RawParser . It also offers more powerful grammar constructs and gives examples on how to implement memory management in a uniform way.
usql
- xo/usql: Universal command-line interface for SQL databases
- Usql – Universal command-line interface for SQL databases
-
PRQL a simple, powerful, pipelined SQL replacement
Also all languages has an query-builder / ORM so the benefit of something like PRQL is possibly not big enough to merit it as an additional dependency.
My suggestion:
Make PRQL a cli tool that can be used by allowing users to connect to a database in a similar fashion as something like usql (https://github.com/xo/usql),
-
Is there a CLI interface to browse SQL databases?
take a look at: https://github.com/xo/usql
-
New Open source Go projects looking for contributors
https://github.com/xo/usql has some good first issues
-
usql 0.11.0
There's a new release of usql that adds even more autocomplete and fixes a bunch of issues: https://github.com/xo/usql/releases/tag/v0.11.0
- 5 Useful Database Command Line Tools
- usql
-
Literate programming is much more than just commenting code
I am not a big fan of the complex literate programming style involving code-generation which this article talks about.
But I recently discovered that Google's zx [1] scripting utility supports executing scripts in markdown documents and I combined it with httpie [2] and usql [3] for a bit of quick and dirty automation testing and api verification code and it worked out pretty well.
[1] https://github.com/google/zx#markdown-scripts
[2] https://github.com/httpie/httpie
[3] https://github.com/xo/usql
- usql v0.9.4
What are some alternatives?
clerk - ⚡️ Moldable Live Programming for Clojure
go-sitemap-generator - go-sitemap-generator is the easiest way to generate Sitemaps in Go
sicmutils - Computer Algebra, Physics and Differential Geometry in Clojure.
hystrix-go - Netflix's Hystrix latency and fault tolerance library, for Go
mexdown - A lightweight integrating markup language
boilr - :zap: boilerplate template manager that generates files or directories from template repositories
Task - A task runner / simpler Make alternative written in Go
ngrok - Unified ingress for developers
fzf - :cherry_blossom: A command-line fuzzy finder
hub - A command-line tool that makes git easier to use with GitHub.
peco - Simplistic interactive filtering tool
grequests - A Go "clone" of the great and famous Requests library