HN user

alcover

680 karma

Experiments in C at github.com/alcover

Posts12
Comments377
View on HN
    fun repeat(str :: String, n :: Nat) :: List:
        [body]
I may be over-sensitive to looks but... god why ?
    fun repeat(str: String, n: Nat): List = 
would be prettier. (I guess authors had to compromise in affecting symbols)

May the Gods be with him. The nostalgia is very strong. Opening Flash and start a new project was an immense source of joy to me in the 00's.

(1) If I read "io.print", is this "the print function in the module io" or "the print method for the variable io"

I don't see the issue. Just look up the id ? Moreover, if modules are seen as objects, the meaning is quite the same.

checking is much easier if the namespace is clear from the grammar.

Again (this time by the checker) just look up the symbol table ?

that means being compatible with websites that normal people use

No, new adhering websites would emerge and word of mouth would do the rest : normal people would see this fast nerd-web and want rid of their bloated day-to-day monster of a web life.

One can still hope..

I wish for this new year we reboot the Web with a super light standard and accompanying ecosystem with

    - A small and efficient JS subset, HTML, CSS
    - A family of very simple browsers that do just that
    - A new Web that adheres to the above
That would make my year.

You need two keywords. One for assignability and one for writability :

    const ptr;  // can't reassign, can't write-through (if r/o by default)
    const mut ptr;  // can write

tracking of this information down to that level would be pretty pointless

Maybe pretty pointfull tracking shadow economy. When Bob sells moonlight stuff his clients will more often than not simply go to the ATM, withdraw the sum and hand it to him. Bob will then buy at shop with big bill. Shop owner will deposit bill at bank..

as Julia Ecklar sings, it's kind of like construction work with a toothpick for a tool.

    I was taught assembler
    in my second year of school.
    It's kinda like construction work —
    with a toothpick for a tool.
    So when I made my senior year,
    I threw my code away,
    And learned the way to program
    that I still prefer today.
    
    Now, some folks on the Internet
    put their faith in C++.
    They swear that it's so powerful,
    it's what God used for us.
    And maybe it lets mortals dredge
    their objects from the C.
    But I think that explains
    why only God can make a tree.
    
    For God wrote in Lisp code
    When he filled the leaves with green.
    The fractal flowers and recursive roots:
    The most lovely hack I've seen.
    And when I ponder snowflakes,
    never finding two the same,
    I know God likes a language
    with its own four-letter name.
    
    Now, I've used a SUN under Unix,
    so I've seen what C can hold.
    I've surfed for Perls, found what Fortran's for,
    Got that Java stuff down cold.
    Though the chance that I'd write COBOL code
    is a SNOBOL's chance in Hell.
    And I basically hate hieroglyphs,
    so I won't use APL.
    
    Now, God must know all these languages,
    and a few I haven't named.
    But the Lord made sure, when each sparrow falls,
    that its flesh will be reclaimed.
    And the Lord could not count grains of sand
    with a 32-bit word.
    Who knows where we would go to
    if Lisp weren't what he preferred?
    
    And God wrote in Lisp code
    Every creature great and small.
    Don't search the disk drive for man.c,
    When the listing's on the wall.
    And when I watch the lightning burn
    Unbelievers to a crisp,
    I know God had six days to work,
    So he wrote it all in Lisp.
    
    Yes, God had a deadline.
    So he wrote it all in Lisp.
Mullvad Leta 1 year ago

Leta is also useless if your browser blocks all cookies, tracking pixels and other tracking technologies.

Err.. it would still be useful to mask your IP ?

Mullvad Leta 1 year ago

What if browsers supported a property like <script hash=64192876> ? They would store the hash on first connection then verify on subsequent ones.

I know this should be refined and hardened but you get the idea.

"hardcode" semi-constants

You mean you somehow avoided a load. But what if the constant was already placed in a register ? Also how could you pinpoint the reference to your constant in the machine code ? I'm quite profane about all this.

You just don't have people like Albert Gonzalez/Stephen Watt in America now

I don't know what the state of big corps netsec is today but these guys had it somewhat easy. They got initial access through weak wifi then pivoted with SQL injects and such.

Vuntra City 1 year ago

I wonder how procedural it is - and really what procedural is. Is it that, at some scale, say apartment in a building, there is a polygone'd model - the apartment - and an apartment is only generated and rendered (with some randomness) when you enter it ?

Agreed. It's tempting to make the tersest lang you can but in the end what matters is ease of reading.

For ex. parens-less calls (myfunc 42 "hello") are elegant but don't stand out and - for me - take more time to identify.

Also `fun foo(i:int)` is easier on the parser than C-style `void foo(int i)`

those most affected are the poorest

Please pardon my pedantry but this is by definition what poor is : having less means to escape material woes. Rich people are the ones that can elect to live in healthy areas.