Cells are boxes that compute things, like arithmetic. You can click them to change the formula and hit Enter to see the result again.
Where's the grid? There is no grid. We use cells on an as-needed basis.
Inflex natively understands records with built-in syntax. Records model the idea of a single thing, like a person or a stock item.
Records can be worked with either as code or as structured elements in the interface.
In a spreadsheet you couldn't express this in a deep way; only superficially with visual cues.
name | Emily |
age | 20 |
name | |
age | 20 |
Lists are also built-in with special syntax, which can be edited either graphically or as a formula.
They contain one value inside, and each item in the list has the same type, so it's always safe to apply transformations or filters on them.
↙ Hit the bottom-left button to add rows! | ||
0 | 123 |
1 | 456 |
2 | |
We can create a table in the graphical interface piece by piece. Adding data to tables is as easy as adding data to lists.
We've seen records and lists above: In Inflex, tables are simply lists of records! That means you can re-use the same intuitions and concepts, a filter on a table is just a filter on a list.
Hit the top-right button to add columns! ↗ | ||
column1 | ||
---|---|---|
↙ Hit the bottom-left button to add rows! | ||
column1 | ||
---|---|---|
0 | ||
Functions let us specify computations to be done on some input. Here we show how the function n:n>300 is used as a condition to filter in only items in the list that match.
0 | 123 |
1 | 456 |
2 | 789 |
0 | 123 |
1 | 456 |
2 | 789 |
0 | 456 |
1 | 789 |
Functions are normal values like numbers or text, so they can be put in a cell and passed around.
Here we put the function in another cell and then use it in our original filter. This way, we separated concerns and gained re-use.
0 | 456 |
1 | 789 |
Inflex has a static type system, which means that any attempt to combine the wrong types of data together will stop you and loudly complain.
This helps prevent correctness errors and bugs at the time of writing rather than later on at the time of inspecting results.
If you don't know yet what to put for a part of a formula, just leave it blank with _.
The formula engine will compute the rest of your formula and leave the blanks as-is. This can be an excellent tool for dealing with partial data (tables use this), and for seeing how an equation works.
Not all data fits neatly, or correctly, into a grid, or a table. In Inflex, you can put any type of value anywhere else.
If you want a table inside a table, go for it!
name | ingredients | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | cake |
| |||||||||||||||||
1 | donuts |
| |||||||||||||||||
We're open for beta testing now.