[-] Kissaki@programming.dev 20 points 2 weeks ago

What a horrendously stupid tweet. I find everything that follows is stupid and problematic too.

VideoLAN calling them disrespectful, when it was more than that. Someone saying it works for them on Linux, so it must be Windows (not evidence, could still be VLC). Article suggesting Defender exclusion, without mentioning the security implication. Original person doubling down, saying VLC should or has to fix the Defender issue (like they did for an AMD crash).

Insane...

[-] Kissaki@programming.dev 20 points 1 month ago* (last edited 1 month ago)

We want to give developers agency over their source code by letting them decide whether or not it should be used to develop and evaluate machine learning models.

crawled directly from GitHub and built to pre-train code LLMs with full-repository context

Repositories that opted out are removed from the dataset before each patch release.

"agency"

Which AI company will not use v1 which has all of the data but will use later patch releases instead which have less data?

[-] Kissaki@programming.dev 19 points 4 months ago

but for the past month I've kept a journal where I put an "X" next to every date where a GitHub outage has negatively impacted my ability to work. Almost every day has an X.

That's pretty insane, especially for a big infrastructure platform like GitHub.

I haven't had many issues, but while I regularly visit and use GitHub, it's certainly not every day and in-depth.

[-] Kissaki@programming.dev 20 points 6 months ago

… which arguably makes them not "normal people" (referring to the earlier comment).

Surely, most people use different, more integrated tooling.

[-] Kissaki@programming.dev 19 points 11 months ago

Ladybird is currently in heavy development. We are targeting a first Alpha release for early adopters in 2026.

[-] Kissaki@programming.dev 20 points 11 months ago

an Android Linux translation layer called Android Translation Layer (we never said developers were good at naming)

wth is that jab?

I like descriptive names on products.

Should they have called it koalupetta?

9

Seed7 is a general purpose programming language designed by Thomas Mertes. It is a higher level language compared to Ada, C/C++ and Java. The Seed7 interpreter and the example programs are open-source software. There is also an open-source Seed7 compiler. The compiler translates Seed7 programs to C programs which are subsequently compiled to machine code.

In Seed7 new statements and operators can be declared easily. Functions with type results and type parameters are more elegant than a template or generics concept. Object orientation is used where it brings advantages and not in places where other solutions are more obvious. Seed7 contains several concepts from Pascal, Ada, C, C++ and Java.


The author posted on Reddit; quoting in part:

Seed7 is based on ideas from my diploma and doctoral theses about an extensible programming language (1984 and 1986). In 1989 development began on an interpreter and in 2005 the project was released as open source. Since then it is improved on a regular basis.

Seed7 is about readability, portability, performance and memory safety. There is an automatic memory management, but there is no garbage collection process, that interrupts normal processing. The templates and generics of Seed7 don't need special syntax. They are just normal functions, which are executed at compile-time.

Seed7 is an extensible programming language. The syntax and semantics of statements (and abstract data types, etc.) is defined in libraries. The whole language is defined in the library "seed7_05.s7i". You can extend the language syntactically and semantically (introduce new loops, etc.). In other languages the syntax and semantics of the language is hard-coded in the compiler.

Seed7 checks for integer overflow. You either get the correct result or an OVERFLOW_ERROR is raised. Unlike many JVM based languages Seed7 compiles to machine code ahead of time (GRAAL works ahead of time but it struggles with reflection). Unlike many systems languages (except Rust) Seed7 is a memory safe language.

Some programs written in Seed7 are:

  • make7: a make utility.
  • bas7: a BASIC interpreter.
  • pv7: a Picture Viewer for BMP, GIF, ICO, JPEG, PBM, PGM, PNG, PPM and TIFF files.
  • tar7: a tar archiving utility.
  • ftp7: an FTP Internet file transfer program.
  • comanche: a simple web server for static HTML pages and CGI programs.

Code Example

# Print a Fahrenheit-Celsius table with floating point numbers.

$ include "seed7_05.s7i";  # This must be included first.
  include "float.s7i";     # Subsequent includes do not need a $.

const proc: main is func
  local
    const integer: lower is 0;
    const integer: upper is 300;
    const integer: increment is 20;
    var integer: fahr is 0;
    var float: celsius is 0.0;
  begin
    for fahr range lower to upper step increment do
      celsius := float(5 * (fahr - 32)) / 9.0;
      writeln(fahr lpad 3 <& " " <& celsius digits 2 lpad 6);
    end for;
  end func;
13
submitted 1 year ago* (last edited 1 year ago) by Kissaki@programming.dev to c/programming_languages@programming.dev

Lean is a theorem prover and programming language that enables correct, maintainable, and formally verified code

/-- A prime is a number larger than 1 with no trivial divisors -/
def IsPrime (n : Nat) := 1 < n ∧ ∀ k, 1 < k → k < n → ¬ k ∣ n
-- 'Grind' efficiently manages complex pattern matching and
-- case analysis beyond standard tactics.
example (x : Nat) : 0 < match x with
  | 0   => 1
  | n+1 => x + n := by
  grind
-- Automatically solves systems of linear inequalities.
example (x y : Int) :
    27 ≤ 11*x + 13*y → 11*x + 13*y ≤ 45
    → -10 ≤ 7*x - 9*y → 7*x - 9*y > 4 := by
  grind

Does anyone have experience with Lean? Can it be useful for implementing algorithms or logic beyond mathematical proofs, for software libs?

12
submitted 1 year ago* (last edited 1 year ago) by Kissaki@programming.dev to c/programming_languages@programming.dev

Hare’s boringness is a feature, not a bug. Our goal is not to make programming exciting again, but to make it easy to write simple, obvious programs which are optimized for reliability and longevity. An exciting programming language cannot meet that goal as effectively as Hare does. We have instead sought out the smallest and simplest language design which accommodates these goals. Because we have relatively few features, Hare programs tend to converge upon the single obvious way of solving their problems with the tools at their disposal.

23

Examples from the README

example 1

[
  { "let": { "name": "JSON", "times": 3 } },
  {
    "for": {
      "var": "i",
      "from": 1,
      "to": "times",
      "do": [
        { "print": { "add": ["Hello ", "name"] } }
      ]
    }
  }
]

example 2

[
  { "import": "system.jpl" },
  { "print": { "call": { "now": [] } } },
  { "print": { "call": { "osName": [] } } },
  { "print": { "call": { "cpuCount": [] } } },
  { "let": { "a": 9, "b": 4, "name": "JPL" } },
  { "print": { "add": ["\"a + b = \"", { "add": ["a", "b"] }] } },
  { "print": { "mul": ["a", "b"] } },
  { "print": { "div": ["a", "b"] } },
  { "print": { "mod": ["a", "b"] } },
  { "print": { "&": [6, 3] } },
  { "print": { "||": [false, true] } },
  { "print": { "gt": ["a", "b"] } },
  { "def": { "sq": { "params": ["x"], "body": [{ "return": { "mul": ["x", "x"] } }] } } },
  { "print": { "call": { "sq": [5] } } },
  { "def": { "greet": { "params": ["who"], "body": [{ "return": { "add": ["\"Hi, \"", "who"] } }] } } },
  { "print": { "call": { "greet": ["\"JSON Fan\""] } } },
  { "if": { "cond": { "<": ["b", "a"] }, "then": { "print": "\"b < a 👍\"" }, "else": { "print": "\"b >= a 🤔\"" } } },
  { "for": { "var": "i", "from": 1, "to": 3, "step": 1, "do": [ { "print": { "call": { "sq": ["i"] } } } ] } },
  { "print": "\"All features in one! 🎉\"" }
]

example 3

[
// 🚀 Welcome to JPL — JSON Programming Language!

// Import system utilities for fun stuff
{ "import": "system.jpl" },

// Print system info
{ "print": { "call": { "now": [] } } },
{ "print": { "call": { "osName": [] } } },
{ "print": { "call": { "cpuCount": [] } } },

// Define a math function to square a number
{
  "def": {
    "square": {
      "params": ["x"],
      "body": [
        { "return": { "mul": ["x", "x"] } }
      ]
    }
  }
},

// Greet a user
{
  "def": {
    "greet": {
      "params": ["name"],
      "body": [
        { "return": { "add": ["Hello, ", "name"] } }
      ]
    }
  }
},

// Declare variables
{ "let": { "a": 7, "user": "Kapil" } },

// Use greet function and print
{ "print": { "call": { "greet": ["user"] } } },

// Conditional message
{
  "if": {
    "cond": { ">": ["a", 5] },
    "then": { "print": "a is greater than 5" },
    "else": { "print": "a is 5 or less" }
  }
},

// Loop with break and continue
{
  "for": {
    "var": "i",
    "from": 1,
    "to": 10,
    "step": 1,
    "do": [
      { "if": { "cond": { "eq": ["i", 3] }, "then": { "continue": true } } },
      { "if": { "cond": { "gt": ["i", 7] }, "then": { "break": true } } },
      { "print": { "call": { "square": ["i"] } } }
    ]
  }
},

// Fun ending message
{ "print": "🎉 Done with curly braces and JSON fun!" }
]

14
146

The population (especially the younger generation, who never seen a different kind of technology at all) is being conditioned by the tech industry to accept that software should behave like an unreliable, manipulative human rather than a precise, predictable machine. They're learning that you can't simply tell a computer "I'm not interested" and expect it to respect that choice. Instead, you must engage in a perpetual dance of "not now, please" - only to face the same prompts again and again.

26
6

Building UI in .NET MAUI with XAML continues to be the most popular approach. […] One of the downsides is how verbose it can become. […]

.NET 6 introduced global and implicit usings for C# which greatly reduced the using statements at the head of many C# files. Now in .NET 10 starting with Preview 5 we are introducing the same for XAML so you can declare your namespaces and prefixes in a single file and use them throughout. In fact, you can now omit the use of prefixes altogether!

16

Starts with the basics of how Datamoshing works in video encoding, then explores it in game engine rendering.

11
1
11
[-] Kissaki@programming.dev 21 points 2 years ago

Don't use the share with shortened url. Copy the page url instead.

Otherwise (you'll have to) accept that you don't know what's included in the shortened link.

[-] Kissaki@programming.dev 19 points 2 years ago

I love the description as well. "One." "Zero."

[-] Kissaki@programming.dev 20 points 2 years ago

One table of percent increase/decrease written into SEVEN worded paragraphs. That's how you add bloat and reduce overview and comparability.

The percent numbers aren't telling. They don't explain the methodology of how interest has been measured. Which could have added value to just writing out the numbers. The huge numbers of multiple hundred percent indicate to me that they're worthless numbers.

The title is bullshit too. They say interest in C and C# was up, contradicting their claim that traditional programming language interest is declining. Clickbait non-content.


The note on Googles CEO claiming 25% of their internal code is now AI generated was surprising and interesting to me. I don't know if I find it surprising, shocking, or implausible (suspecting the CEO misunderstands or misattributes what is happening; sourcing is not applied code).

[-] Kissaki@programming.dev 19 points 2 years ago* (last edited 2 years ago)

I wish standards were always open access. Not behind a 600 dollar paywall.

When it is paywalled I'm irritated it's even called a standard.

[-] Kissaki@programming.dev 19 points 2 years ago

Time to migrate to Funnertoo

[-] Kissaki@programming.dev 20 points 2 years ago* (last edited 2 years ago)

The only issue they mention is browser page text search not working on rendered file view (blame).

The feels legacy conclusion doesn't make any sense to me.

GitHub is not the only platform implementing virtual scrolling, partial rendering of rendered files. There's a reason they do that: Files can get big, and adding various code highlighting and interactivity costs performance. It's not a local code representation and rendered canvas. It's rendered into a DOM and DOM representation, with markup and attached logic. Which at some point quickly becomes very inefficient or costly.

Not being able to use the browser text search is an unfortunate side effect.

I consider it a worsening modernization/feature addition. That's the opposite of legacy. We're moving forward (in a bad way), not stagnating.

When I click Blame, and then press Ctrl+F, it opens not my browser text search but the in-page in-file search. It works for me. (Not that I always use that search or like it.)

view more: ‹ prev next ›

Kissaki

0 post score
0 comment score
joined 3 years ago
MODERATOR OF