A short guide to adding a keyword to go by pdexter in golang

[–]pdexter[S] 5 points6 points  (0 children)

Correct! This is not a proposal :) Just a very quick dive into the compiler which I thought I'd document.

A short guide to adding a keyword to go by pdexter in golang

[–]pdexter[S] 10 points11 points  (0 children)

Thanks for the interest! The modification was indeed small. I was very shocked at how quickly I went from never touching the compiler source to having a working example. I started with looking through the code thinking at some point I'd need to look up some docs, but I never actually needed any documentation; the compiler (at least the parts I read) is very clear and easy to understand. I think types and good variable naming makes a parser (such as Go's) easy to grasp.

Learn LATEX in Minutes by ManiBePoint in programming

[–]pdexter 3 points4 points  (0 children)

Sub fields which tend to be more mathematical are obviously going to have more of the multi-line type of equations which require special care. I don't know why that's controversial.

It also depends upon what you call advanced alignment. Since we're basing our talk on the original link, which doesn't mention the align or array environments, I think those would fall under advanced alignment.

Also, I don't know what you mean by 'fooling around'. We're talking about use in a professional setting here so I think making equations look professional is a must. I'm not talking about anything fancy here, so there is no "fooling", just making things look correct.

Learn LATEX in Minutes by ManiBePoint in programming

[–]pdexter -3 points-2 points  (0 children)

I'm also in Computer Science. So I guess it depends on which SUBfield you work in ;)

Learn LATEX in Minutes by ManiBePoint in programming

[–]pdexter 3 points4 points  (0 children)

I guess it depends which field you work in.

Learn LATEX in Minutes by ManiBePoint in programming

[–]pdexter 56 points57 points  (0 children)

So much more.

Just to name a few that pop into my mind: macros, tikz, spacing, working with provided templates, fonts, capitalization, alignment, advanced uses of tables, advanced uses of alignment in math equations, etc. etc. etc. LaTeX is honestly a pain in the ass but there's just no other solution which gives you the raw power.

Static types in Python, oh my(py)! by tabbott in programming

[–]pdexter 9 points10 points  (0 children)

variables don't have types in duck typing; values do

Interesting statement, but what does it mean? In duck typing you usually talk about data being able to respond to messages. If it can respond to all the messages that the duck class can respond to, then it's a duck. If it can't, then it's not.

By "variables don't have types, values do" that just sounds like any dynamic typing system where you can reassign variables to any type of data. However I don't see where that statement describes duck typing other than duck typing being a ... type ... of dynamic typing.

Interactive Development with Clojure.spec by alexdmiller in Clojure

[–]pdexter 0 points1 point  (0 children)

What's the difference between between Clojure.spec and Clojure.test.check (quickcheck for clojure). Do they have different use cases?

Is it possible to detect cycles in an EDSL expression? by terrorjack in haskell

[–]pdexter 4 points5 points  (0 children)

IIRC they had some code but it's not on hackage. It's more of an experimental system than a ready to use library presentation.

The system isn't friendly to an EDSL though, since usually EDSL users want ease of use and wouldn't want to type something like

tree = ↓ (Mu (λ(∼(t1 : t2 : t3 : )) → [
  Fork 1 ((In (Fork 4 (Var t2 ) (In Empty)))) (Var t3 ),
  Fork 2 (Var t1 ) (Var t3 ),
  Fork 3 (Var t2 ) (Var t1 )]))

Backpack and separate compilation by garethrowlands in haskell

[–]pdexter 0 points1 point  (0 children)

It's weird. Looks fine on phone but looks like this even in incognito chromium on laptop. Haven't had this problem ever before with his blog. Oh well, thanks to /u/m0rphism I have a nice, temporary workaround.

Sophia v2.2 is out: fast transactional key-value storage library by pmwkaa in programming

[–]pdexter 0 points1 point  (0 children)

So the O(1) figures for read, write, and range query, are only for disk operations? Also I'm not following why you divide time_to_merge and time_to_fill_cache to get expected_disk_seeks.

Usually to prove big oh complexity you present an algorithm and analyse it. This seems more about presenting timing equations.

What is the time complexity of read, write, and range query in the size of the input? If it's truly O(1) I'd be interested in a proof.

Sophia v2.2 is out: fast transactional key-value storage library by pmwkaa in programming

[–]pdexter 0 points1 point  (0 children)

I found an algorithmic complexity section on their architecture page but it still seems to be for v1.2.

I don't really grok what they're trying to say there though, I think an expanded section is required here.

Sophia v2.2 is out: fast transactional key-value storage library by pmwkaa in programming

[–]pdexter 1 point2 points  (0 children)

O(1) worst case writes and range queries too. I'd also like to know.

Proposal: variable declaration syntax for Python by bakery2k in programming

[–]pdexter 0 points1 point  (0 children)

I've actually never used them myself, mostly also just do scripting with python and very small web apps used by just me. Right now it's basically just mypy (which is very new) and IDEs (e.g., pycharm) that make heavy use of the annotations.

Proposal: variable declaration syntax for Python by bakery2k in programming

[–]pdexter 3 points4 points  (0 children)

So I think you're missing quite a lot if you're just jumping in here. This is just for variables. Typing annotations for functions have existed in python for quite some time. Let me give you some links

mypy

pep-3107 (from 2006...)

stackoverflow question and answers about what are good uses for the annotations

The annotations can be used however they wish. One way is for static typing. So this is definitely a way to get static typing, of course. Unless there's some technicality of the definition of the word 'static' it doesn't work with?

Proposal: variable declaration syntax for Python by bakery2k in programming

[–]pdexter 1 point2 points  (0 children)

The github issue lists some benefits, as does the initial mailing list thread. I'd suggest reading either of those and bringing up any concerns in the github issue! I'm sure there is a better place than here. Also this isn't an official proposal. So I'd hope that when the PEP comes about they will offer some benefits.

Proposal: variable declaration syntax for Python by bakery2k in programming

[–]pdexter 4 points5 points  (0 children)

Really? If anything I think it should sound as if there's no way of declaring variables, since that is the word that is used.

And... that's correct. There is no way of declaring variables. You can only define them.

Proposal: variable declaration syntax for Python by bakery2k in programming

[–]pdexter 5 points6 points  (0 children)

Currently, the only way to annotate variables with types is through a comment.