Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Jan 22 2019 23:01
    benhanna starred hrj/abandon
  • Dec 05 2018 07:38
    sanketvega starred hrj/abandon
  • Dec 05 2018 02:29

    hrj on master

    fix version for scala xml (compare)

  • Dec 04 2018 19:43

    hrj on master

    bump dependencies (compare)

  • Oct 30 2018 17:16
    cflavio starred hrj/abandon
  • Oct 02 2018 05:03
    nerdy-sam starred hrj/abandon
  • Sep 08 2018 20:18
    jethrovt starred hrj/abandon
  • Aug 18 2018 13:37
    hrj opened #154
  • Jun 12 2018 14:41

    hrj on master

    bumped version of scala parser … (compare)

  • Jun 08 2018 20:59
    musha68k starred hrj/abandon
  • Jun 05 2018 02:11
    maoabc2015 starred hrj/abandon
  • Jun 02 2018 19:09

    hrj on master

    Updated plugin buildinfo Signe… (compare)

  • Jun 02 2018 19:02

    hrj on master

    bumped scala and sbt versions (compare)

  • May 26 2018 04:19
    joyoyoyoyoyo starred hrj/abandon
  • May 17 2018 15:52
    evenhumble starred hrj/abandon
  • May 16 2018 14:56
    janez89 starred hrj/abandon
  • May 02 2018 17:28
    Samehadar starred hrj/abandon
  • Mar 20 2018 00:11
    MyNameIsCosmo starred hrj/abandon
  • Mar 13 2018 13:09
    vlamacko starred hrj/abandon
  • Mar 09 2018 07:17

    hrj on master

    bump the buildinfo plugin versi… (compare)

hrj
@hrj
... if there are semantic errors, then the location of the error is not shown.
Chidu
@chidu8
Okay
hrj
@hrj
Because at that time of processing, the location information is not available.
Chidu
@chidu8
Could you give me an example of a semantic error?
hrj
@hrj
Yeah, "transactions don't balance"
In a transaction, if I just make two posts abc +100 and xyz -200, then it is not a syntax error, but a semantic error.
Chidu
@chidu8
okay
got it now
what location should be shown in this case?
hrj
@hrj
It is up to us to decide. One strategy could be to store the location at the transaction level during parsing, and refer to that in the error.
Chidu
@chidu8
ok
By any chance, have you looked at the source code of ledger written in other languages? Has this feature been implemented?
hrj
@hrj
Nope, I haven't.
But I do know the high level differences. In abandon, I am designing the system such that the order of input doesn't matter.
Chidu
@chidu8
ok
hrj
@hrj
( I am having some internet hiccups. Some of my messages are not posting here)
In ledger-cli, they start processing during the parsing stage itself. In abandon, there is a separate parsing stage followed by a processing stage.
Chidu
@chidu8
ok
hrj
@hrj
So, in ledger-cli, if I specify file1 followed by file2, it can give a different result from file2 followed by file1
Because the declarations in file1 might affect the declarations in file2 which comes later.
Chidu
@chidu8
how will the AST look like for abc +100
abc, and 100 as leaf nodes and "+" is their parent node
?
hrj
@hrj
Whereas in abandon, the order of input shouldn't matter. In my opinion, this reduces the complexity to the user.
You are sort of correct
Chidu
@chidu8
Yes i agree
about complexity
hrj
@hrj
But in Scala, you don't need an actual tree structure.
so abc +100 is just Post("abc", 100)
Chidu
@chidu8
ok
hrj
@hrj
So it is a tree, but not necessarily at all levels. Some nodes can be grouped into members of a case class.
Chidu
@chidu8
a case class (and not a normal class) to help in pattern matching? or is there any other reason?
hrj
@hrj
yes, exactly.
case classes have other benefits too. equality and hashing functions are automatically defined.
Chidu
@chidu8
cool
also how do you group- by accounts? Like Expense:Food
hrj
@hrj
didn't understand the question
Chidu
@chidu8
how are posts grouped- what is the grouping criteria- is it accounts? Like Expense:Food
Is your PostGroup class doing the grouping?
Previously TxnGroup
hrj
@hrj
The grouping is only for reporting and exporting. I will have to check which classes handle that.
At all other stages, each account is unique.
Chidu
@chidu8
ok
hrj
@hrj
Expense, Expense:Food, Expense:Travel
are all three different accounts that are not related to each other.
Chidu
@chidu8
ok
hrj
@hrj
@chidu8 Your changes have been merged. Thanks!
How is it going with #3 ?
Chidu
@chidu8
Thanks @hrj . Is there a way to visualize the commit graph on GitHub?
As for #3, i was out for a few days, so didn't get time. I will start working on it from today.
hrj
@hrj
@chidu8 I visualise it using command line tools. I have a few aliases setup in my shell:
glgga='git log --graph --decorate --all'
glggao='glgga --pretty=oneline'
glggas='glgga --pretty=short'
glggao is the command I use most often.