Skip to content

Commit 7e5a702

Browse files
committed
update readme
1 parent 31c4a10 commit 7e5a702

File tree

1 file changed

+8
-69
lines changed

1 file changed

+8
-69
lines changed

README.md

Lines changed: 8 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -2,78 +2,18 @@
22

33
# reqT-lang
44

5-
* reqT-lang is a software requirements modelling language based on common requirements engineering concepts.
6-
7-
* reqT-lang provides structure to natural language requirements, enabling analysis, graph generation and scripting.
8-
5+
Docs at [reqt.github.io](https://reqt.github.io/)
6+
* reqT-lang is a scalable modelling language based on [essential requirements engineering concepts](https://github.com/reqT/reqT-lang/releases/download/v4.3.1/reqT-quickref-GENERATED.pdf).
7+
* reqT-lang gives structure to natural language requirements, enabling analysis and visualization.
98
* reqT-lang is used by the reqT desktop tool [reqT](https://github.com/reqT).
10-
119
* The reqT-lang parser produces an immutable tree-like data structure called `Model` expressed in a Scala-embedded DSL, enabling analysis and transform of models using the powerful of Scala language and ecosystem.
12-
1310
* reqT-lang is written in Scala and cross-compiled to the JVM, Javascript (TODO) and Native (Linux, TODO) runtimes.
1411

15-
* Documentation:
16-
* The [reqT Quickref](https://github.com/reqT/reqT-lang/releases/download/v4.3.1/reqT-quickref-GENERATED.pdf)
17-
* All [reqT meta-concepts](https://github.com/reqT/reqT-lang/blob/main/docs/concepts-GENERATED.csv) in tabular format.
18-
* [reqT language specification](https://github.com/reqT/reqT-lang/blob/main/docs/langSpec-GENERATED.md)
19-
20-
## How to use reqT-lang as a library
21-
22-
You can manage your requirements with the reqT-lang library, the Scala compiler and your favorite editor, e.g. in VS Code with the Scala Metals extension.
23-
24-
### Use reqT-lang with scala
25-
26-
* Install scala from https://www.scala-lang.org/
27-
28-
* Create a file `hello-reqt.scala` with this code:
29-
```scala
30-
//> using scala 3.6.2
31-
//> using dep "reqt-lang:reqt-lang:4.2.0,url=https://github.com/reqT/reqT-lang/releases/download/4.2.0/reqt-lang_3-4.2.0.jar"
32-
33-
import reqt.*
34-
35-
extension (m: Model) // build your own extensions on Model objects
36-
def trim =
37-
val empty = Text("")
38-
val elems: Vector[Elem] =
39-
m.elems
40-
.reverse.dropWhile(_ == empty)
41-
.reverse.dropWhile(_ == empty)
42-
Model(elems)
43-
44-
@main def hello =
45-
println("hello reqt")
46-
val m: Model = m"""
47-
* Feature hello has
48-
* Spec an informal greeting
49-
""".trim
50-
println(s"\nm.toString:\n$m")
51-
println(s"\nm.show:\n${m.show}")
52-
println(s"\nm.toMarkdown:\n${m.toMarkdown}")
53-
54-
```
55-
56-
* run with `scala run hello-reqt.scala` and you should get this output:
57-
```
58-
hello reqt
59-
60-
m.toString:
61-
Model(Rel(Ent(Feature,hello),Has,Model(StrAttr(Spec,an informal greeting))))
62-
63-
m.show:
64-
Model(
65-
Feature("hello").has(
66-
Spec("an informal greeting"),
67-
),
68-
)
69-
70-
m.toMarkdown:
71-
* Feature hello has Spec an informal greeting
72-
73-
```
74-
75-
### Use reqT-lang with sbt
76-
12+
Visit:
13+
* [reqT homepage](https://reqt.github.io/) with instructions on [how to get started](https://reqt.github.io/#getting-started-with-reqt)
14+
* The [reqT Quickref](https://github.com/reqT/reqT-lang/releases/download/v4.3.1/reqT-quickref-GENERATED.pdf)
15+
* All [reqT meta-concepts](https://github.com/reqT/reqT-lang/blob/main/docs/concepts-GENERATED.csv) in tabular format.
16+
* [reqT language specification](https://github.com/reqT/reqT-lang/blob/main/docs/langSpec-GENERATED.md)
7717

7818
## How to build the reqT-lang library
7919

@@ -87,7 +27,6 @@ m.toMarkdown:
8727
* `package` build a jar in target/scala-x.y.z
8828
* `build` clean + all of the above
8929

90-
9130
## How to publish
9231

9332
For maintainers of https://github.com/reqT/reqT-lang

0 commit comments

Comments
 (0)